@shipload/sdk 1.0.0-next.65 → 1.0.0-next.67

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 (85) hide show
  1. package/lib/shipload.d.ts +786 -321
  2. package/lib/shipload.js +2731 -1305
  3. package/lib/shipload.js.map +1 -1
  4. package/lib/shipload.m.js +2644 -1286
  5. package/lib/shipload.m.js.map +1 -1
  6. package/lib/testing.d.ts +223 -146
  7. package/lib/testing.js +907 -563
  8. package/lib/testing.js.map +1 -1
  9. package/lib/testing.m.js +907 -563
  10. package/lib/testing.m.js.map +1 -1
  11. package/package.json +1 -1
  12. package/src/capabilities/crafting.test.ts +51 -6
  13. package/src/capabilities/crafting.ts +19 -4
  14. package/src/capabilities/gathering.ts +2 -2
  15. package/src/capabilities/storage.test.ts +26 -0
  16. package/src/capabilities/storage.ts +6 -6
  17. package/src/contracts/fund.ts +79 -2
  18. package/src/contracts/platform.ts +10 -1
  19. package/src/contracts/server.ts +521 -330
  20. package/src/data/charters.json +325 -127
  21. package/src/data/entities.json +29 -24
  22. package/src/data/items.json +114 -114
  23. package/src/data/kind-registry.json +3 -3
  24. package/src/data/kind-registry.ts +5 -0
  25. package/src/data/metadata.ts +9 -2
  26. package/src/data/recipes.json +56 -95
  27. package/src/derivation/build-methods.test.ts +59 -1
  28. package/src/derivation/build-methods.ts +2 -0
  29. package/src/derivation/capabilities.ts +7 -7
  30. package/src/derivation/strata.ts +5 -3
  31. package/src/derivation/tiers.ts +5 -5
  32. package/src/entity/hydrate.test.ts +156 -0
  33. package/src/entity/hydrate.ts +86 -0
  34. package/src/errors.ts +9 -0
  35. package/src/format.ts +15 -13
  36. package/src/index-module.ts +32 -5
  37. package/src/influence/ballot.test.ts +103 -0
  38. package/src/influence/ballot.ts +98 -0
  39. package/src/influence/charter-metadata.test.ts +136 -0
  40. package/src/influence/charter-metadata.ts +236 -0
  41. package/src/influence/charters.test.ts +51 -65
  42. package/src/influence/charters.ts +70 -40
  43. package/src/influence/civic-shuttle.test.ts +159 -0
  44. package/src/influence/civic-shuttle.ts +115 -0
  45. package/src/influence/civic.test.ts +287 -0
  46. package/src/influence/civic.ts +269 -0
  47. package/src/influence/constants.ts +30 -9
  48. package/src/influence/decomp.ts +15 -15
  49. package/src/influence/duration.ts +42 -6
  50. package/src/influence/index.ts +59 -6
  51. package/src/influence/influence.test.ts +76 -9
  52. package/src/influence/valuation.ts +17 -17
  53. package/src/managers/actions.ts +99 -37
  54. package/src/managers/base.ts +4 -0
  55. package/src/managers/context.ts +3 -1
  56. package/src/managers/epochs.ts +32 -1
  57. package/src/managers/index.ts +4 -2
  58. package/src/managers/influence.test.ts +18 -20
  59. package/src/managers/influence.ts +137 -84
  60. package/src/managers/jobs.test.ts +2 -2
  61. package/src/managers/jobs.ts +4 -4
  62. package/src/nft/description.ts +10 -11
  63. package/src/planner/index.ts +54 -0
  64. package/src/planner/planner.test.ts +127 -2
  65. package/src/resolution/display-name.ts +1 -1
  66. package/src/scheduling/availability.test.ts +113 -0
  67. package/src/scheduling/availability.ts +48 -8
  68. package/src/scheduling/epoch.ts +1 -0
  69. package/src/scheduling/jobs.ts +1 -1
  70. package/src/scheduling/projection.ts +2 -16
  71. package/src/scheduling/task-cargo.test.ts +62 -1
  72. package/src/scheduling/task-cargo.ts +25 -10
  73. package/src/scheduling/task-effects.test.ts +35 -0
  74. package/src/scheduling/task-effects.ts +34 -0
  75. package/src/scheduling/unwrap.test.ts +3 -3
  76. package/src/scheduling/unwrap.ts +3 -3
  77. package/src/shipload.ts +22 -3
  78. package/src/travel/reach.test.ts +86 -0
  79. package/src/travel/reach.ts +23 -10
  80. package/src/travel/route-build.test.ts +63 -0
  81. package/src/travel/route-build.ts +60 -0
  82. package/src/travel/travel.ts +2 -1
  83. package/src/types.ts +6 -2
  84. package/src/utils/hash.ts +18 -2
  85. package/src/utils/system.ts +6 -1
package/lib/testing.m.js CHANGED
@@ -20,7 +20,7 @@ function computeCatalogHash(filePaths) {
20
20
  return hash.digest('hex');
21
21
  }
22
22
 
23
- const abiBlob$3 = Blob.from('DmVvc2lvOjphYmkvMS4yABALYWNjcnVlZF9yb3cAAgdhY2NvdW50BG5hbWUHYmFsYW5jZQVhc3NldAliZW5lZl9yb3cAAgdhY2NvdW50BG5hbWUDYnBzBnVpbnQxNgtiZW5lZmljaWFyeQACB2FjY291bnQEbmFtZQNicHMGdWludDE2BWNsYWltAAETYmVuZWZpY2lhcnlfYWNjb3VudARuYW1lCmN1cnNvcl9yb3cAAQ1uZXh0X2Fzc2V0X2lkBnVpbnQ2NAtnZXR0ZW5kYWJsZQABCG1heF9sb3RzBnVpbnQzMghsb3RzX3JvdwADCGFzc2V0X2lkBnVpbnQ2NAVncmFkZQRuYW1lCmF1Y3Rpb25faWQGdWludDY0CXJlc2N1ZW5mdAADCWFzc2V0X2lkcwh1aW50NjRbXQJ0bwRuYW1lBG1lbW8Gc3RyaW5nCHNldGJlbmVmAAEIcmVnaXN0cnkNYmVuZWZpY2lhcnlbXQlzZXRtYXJrZXQAAgZtYXJrZXQEbmFtZRFtYWtlcl9tYXJrZXRwbGFjZQRuYW1lCHNldHRlcm1zAAMFZ3JhZGUEbmFtZQxzdGFydGluZ19iaWQFYXNzZXQIZHVyYXRpb24GdWludDMyDHNldHRpbmdzX3JvdwAEBm1hcmtldARuYW1lDnRva2VuX2NvbnRyYWN0BG5hbWUMdG9rZW5fc3ltYm9sBnN5bWJvbBFtYWtlcl9tYXJrZXRwbGFjZQRuYW1lCHNldHRva2VuAAIOdG9rZW5fY29udHJhY3QEbmFtZQx0b2tlbl9zeW1ib2wGc3ltYm9sBXN3ZWVwAAEIbWF4X2xvdHMGdWludDMyBHRlbmQAAQlhc3NldF9pZHMIdWludDY0W10JdGVybXNfcm93AAMFZ3JhZGUEbmFtZQxzdGFydGluZ19iaWQFYXNzZXQIZHVyYXRpb24GdWludDMyCQAAAAAA6UxEBWNsYWltAABUPCZNlbNiC2dldHRlbmRhYmxlAAAAyGsqjbC6CXJlc2N1ZW5mdAAAAABLTXWywghzZXRiZW5lZgAAAMgKXiOzwglzZXRtYXJrZXQAAAAAWF6Vs8IIc2V0dGVybXMAAAAAU0Gas8IIc2V0dG9rZW4AAAAAAICqFMcFc3dlZXAAAAAAAACQpsoEdGVuZAAGAAAAICl9ETIDaTY0AAALYWNjcnVlZF9yb3cAAAAA4KWmOgNpNjQAAAliZW5lZl9yb3cAAAAAXIqvRgNpNjQAAApjdXJzb3Jfcm93AAAAAACAM40DaTY0AAAIbG90c19yb3cAAACYTZezwgNpNjQAAAxzZXR0aW5nc19yb3cAAAAAACyvygNpNjQAAAl0ZXJtc19yb3cAAAAAAQBUPCZNlbNiCHVpbnQ2NFtd');
23
+ const abiBlob$3 = Blob.from('DmVvc2lvOjphYmkvMS4yABkLYWNjcnVlZF9yb3cAAg50b2tlbl9jb250cmFjdARuYW1lB2JhbGFuY2UFYXNzZXQIYWRkdG9rZW4AAg50b2tlbl9jb250cmFjdARuYW1lDHRva2VuX3N5bWJvbAZzeW1ib2wJYmVuZWZfcm93AAIHYWNjb3VudARuYW1lA2JwcwZ1aW50MTYLYmVuZWZpY2lhcnkAAgdhY2NvdW50BG5hbWUDYnBzBnVpbnQxNgVjbGFpbQABE2JlbmVmaWNpYXJ5X2FjY291bnQEbmFtZQdjb2xsZWN0AAALY29sbGVjdGZlZXMAAApjdXJzb3Jfcm93AAENbmV4dF9hc3NldF9pZAZ1aW50NjQIZGVsdG9rZW4AAQ50b2tlbl9jb250cmFjdARuYW1lB2dldGxvdHMAAgtsb3dlcl9ib3VuZAZ1aW50NjQIbWF4X2xvdHMGdWludDMyC2dldHRlbmRhYmxlAAEIbWF4X2xvdHMGdWludDMyCGxvdF9pbmZvAAYIYXNzZXRfaWQGdWludDY0BWdyYWRlBG5hbWUKYXVjdGlvbl9pZAZ1aW50NjQHaXRlbV9pZAZ1aW50MTYIcXVhbnRpdHkGdWludDMyBXN0YXRzBnVpbnQ2NAtsb3RzX3Jlc3VsdAACBGxvdHMKbG90X2luZm9bXQRuZXh0BnVpbnQ2NAhsb3RzX3JvdwADCGFzc2V0X2lkBnVpbnQ2NAVncmFkZQRuYW1lCmF1Y3Rpb25faWQGdWludDY0CXJlc2N1ZW5mdAADCWFzc2V0X2lkcwh1aW50NjRbXQJ0bwRuYW1lBG1lbW8Gc3RyaW5nCHNldGJlbmVmAAEIcmVnaXN0cnkNYmVuZWZpY2lhcnlbXQlzZXRtYXJrZXQAAgZtYXJrZXQEbmFtZRFtYWtlcl9tYXJrZXRwbGFjZQRuYW1lCHNldHRlcm1zAAMFZ3JhZGUEbmFtZQxzdGFydGluZ19iaWQFYXNzZXQIZHVyYXRpb24GdWludDMyDHNldHRpbmdzX3JvdwAEBm1hcmtldARuYW1lDnRva2VuX2NvbnRyYWN0BG5hbWUMdG9rZW5fc3ltYm9sBnN5bWJvbBFtYWtlcl9tYXJrZXRwbGFjZQRuYW1lCHNldHRva2VuAAIOdG9rZW5fY29udHJhY3QEbmFtZQx0b2tlbl9zeW1ib2wGc3ltYm9sBXN3ZWVwAAEIbWF4X2xvdHMGdWludDMyBHRlbmQAAQlhc3NldF9pZHMIdWludDY0W10JdGVybXNfcm93AAMFZ3JhZGUEbmFtZQxzdGFydGluZ19iaWQFYXNzZXQIZHVyYXRpb24GdWludDMyCXRva2VuX3JvdwACDnRva2VuX2NvbnRyYWN0BG5hbWUMdG9rZW5fc3ltYm9sBnN5bWJvbAR3aXBlAAAPAAAAU0GaUzIIYWRkdG9rZW4AAAAAAADpTEQFY2xhaW0AAAAAICMVI0UHY29sbGVjdAAAsFIrIxUjRQtjb2xsZWN0ZmVlcwAAAABTQZqjSghkZWx0b2tlbgAAAAAAZxqzYgdnZXRsb3RzAABUPCZNlbNiC2dldHRlbmRhYmxlAAAAyGsqjbC6CXJlc2N1ZW5mdAAAAABLTXWywghzZXRiZW5lZgAAAMgKXiOzwglzZXRtYXJrZXQAAAAAWF6Vs8IIc2V0dGVybXMAAAAAU0Gas8IIc2V0dG9rZW4AAAAAAICqFMcFc3dlZXAAAAAAAACQpsoEdGVuZAAAAAAAAKCq4wR3aXBlAAcAAAAgKX0RMgNpNjQAAAthY2NydWVkX3JvdwAAAADgpaY6A2k2NAAACWJlbmVmX3JvdwAAAABciq9GA2k2NAAACmN1cnNvcl9yb3cAAAAAAIAzjQNpNjQAAAhsb3RzX3JvdwAAAJhNl7PCA2k2NAAADHNldHRpbmdzX3JvdwAAAAAALK/KA2k2NAAACXRlcm1zX3JvdwAAAADgqSDNA2k2NAAACXRva2VuX3JvdwAAAAACAAAAAGcas2ILbG90c19yZXN1bHQAVDwmTZWzYgh1aW50NjRbXQ==');
24
24
  ABI.from(abiBlob$3);
25
25
  var Types$3;
26
26
  (function (Types) {
@@ -28,7 +28,7 @@ var Types$3;
28
28
  };
29
29
  __decorate([
30
30
  Struct.field(Name)
31
- ], accrued_row.prototype, "account", void 0);
31
+ ], accrued_row.prototype, "token_contract", void 0);
32
32
  __decorate([
33
33
  Struct.field(Asset)
34
34
  ], accrued_row.prototype, "balance", void 0);
@@ -36,6 +36,18 @@ var Types$3;
36
36
  Struct.type('accrued_row')
37
37
  ], accrued_row);
38
38
  Types.accrued_row = accrued_row;
39
+ let addtoken = class addtoken extends Struct {
40
+ };
41
+ __decorate([
42
+ Struct.field(Name)
43
+ ], addtoken.prototype, "token_contract", void 0);
44
+ __decorate([
45
+ Struct.field(Asset.Symbol)
46
+ ], addtoken.prototype, "token_symbol", void 0);
47
+ addtoken = __decorate([
48
+ Struct.type('addtoken')
49
+ ], addtoken);
50
+ Types.addtoken = addtoken;
39
51
  let benef_row = class benef_row extends Struct {
40
52
  };
41
53
  __decorate([
@@ -69,6 +81,18 @@ var Types$3;
69
81
  Struct.type('claim')
70
82
  ], claim);
71
83
  Types.claim = claim;
84
+ let collect = class collect extends Struct {
85
+ };
86
+ collect = __decorate([
87
+ Struct.type('collect')
88
+ ], collect);
89
+ Types.collect = collect;
90
+ let collectfees = class collectfees extends Struct {
91
+ };
92
+ collectfees = __decorate([
93
+ Struct.type('collectfees')
94
+ ], collectfees);
95
+ Types.collectfees = collectfees;
72
96
  let cursor_row = class cursor_row extends Struct {
73
97
  };
74
98
  __decorate([
@@ -78,6 +102,27 @@ var Types$3;
78
102
  Struct.type('cursor_row')
79
103
  ], cursor_row);
80
104
  Types.cursor_row = cursor_row;
105
+ let deltoken = class deltoken extends Struct {
106
+ };
107
+ __decorate([
108
+ Struct.field(Name)
109
+ ], deltoken.prototype, "token_contract", void 0);
110
+ deltoken = __decorate([
111
+ Struct.type('deltoken')
112
+ ], deltoken);
113
+ Types.deltoken = deltoken;
114
+ let getlots = class getlots extends Struct {
115
+ };
116
+ __decorate([
117
+ Struct.field(UInt64)
118
+ ], getlots.prototype, "lower_bound", void 0);
119
+ __decorate([
120
+ Struct.field(UInt32)
121
+ ], getlots.prototype, "max_lots", void 0);
122
+ getlots = __decorate([
123
+ Struct.type('getlots')
124
+ ], getlots);
125
+ Types.getlots = getlots;
81
126
  let gettendable = class gettendable extends Struct {
82
127
  };
83
128
  __decorate([
@@ -87,6 +132,42 @@ var Types$3;
87
132
  Struct.type('gettendable')
88
133
  ], gettendable);
89
134
  Types.gettendable = gettendable;
135
+ let lot_info = class lot_info extends Struct {
136
+ };
137
+ __decorate([
138
+ Struct.field(UInt64)
139
+ ], lot_info.prototype, "asset_id", void 0);
140
+ __decorate([
141
+ Struct.field(Name)
142
+ ], lot_info.prototype, "grade", void 0);
143
+ __decorate([
144
+ Struct.field(UInt64)
145
+ ], lot_info.prototype, "auction_id", void 0);
146
+ __decorate([
147
+ Struct.field(UInt16)
148
+ ], lot_info.prototype, "item_id", void 0);
149
+ __decorate([
150
+ Struct.field(UInt32)
151
+ ], lot_info.prototype, "quantity", void 0);
152
+ __decorate([
153
+ Struct.field(UInt64)
154
+ ], lot_info.prototype, "stats", void 0);
155
+ lot_info = __decorate([
156
+ Struct.type('lot_info')
157
+ ], lot_info);
158
+ Types.lot_info = lot_info;
159
+ let lots_result = class lots_result extends Struct {
160
+ };
161
+ __decorate([
162
+ Struct.field(lot_info, { array: true })
163
+ ], lots_result.prototype, "lots", void 0);
164
+ __decorate([
165
+ Struct.field(UInt64)
166
+ ], lots_result.prototype, "next", void 0);
167
+ lots_result = __decorate([
168
+ Struct.type('lots_result')
169
+ ], lots_result);
170
+ Types.lots_result = lots_result;
90
171
  let lots_row = class lots_row extends Struct {
91
172
  };
92
173
  __decorate([
@@ -216,6 +297,24 @@ var Types$3;
216
297
  Struct.type('terms_row')
217
298
  ], terms_row);
218
299
  Types.terms_row = terms_row;
300
+ let token_row = class token_row extends Struct {
301
+ };
302
+ __decorate([
303
+ Struct.field(Name)
304
+ ], token_row.prototype, "token_contract", void 0);
305
+ __decorate([
306
+ Struct.field(Asset.Symbol)
307
+ ], token_row.prototype, "token_symbol", void 0);
308
+ token_row = __decorate([
309
+ Struct.type('token_row')
310
+ ], token_row);
311
+ Types.token_row = token_row;
312
+ let wipe = class wipe extends Struct {
313
+ };
314
+ wipe = __decorate([
315
+ Struct.type('wipe')
316
+ ], wipe);
317
+ Types.wipe = wipe;
219
318
  })(Types$3 || (Types$3 = {}));
220
319
  ({
221
320
  accrued: Types$3.accrued_row,
@@ -224,9 +323,10 @@ var Types$3;
224
323
  lots: Types$3.lots_row,
225
324
  settings: Types$3.settings_row,
226
325
  terms: Types$3.terms_row,
326
+ tokens: Types$3.token_row,
227
327
  });
228
328
 
229
- const abiBlob$2 = Blob.from('DmVvc2lvOjphYmkvMS4yACELYmFsYW5jZV9yb3cAAg50b2tlbl9jb250cmFjdARuYW1lB2JhbGFuY2UFYXNzZXQKY2FyZ29faXRlbQAFB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCHF1YW50aXR5BnVpbnQzMgllbnRpdHlfaWQHdWludDY0PwpjbGVhcnRhYmxlAAMKdGFibGVfbmFtZQRuYW1lBXNjb3BlBW5hbWU/CG1heF9yb3dzB3VpbnQ2ND8FY2xvc2UAAwVvd25lcgRuYW1lDnRva2VuX2NvbnRyYWN0BG5hbWUMdG9rZW5fc3ltYm9sBnN5bWJvbAtjb21wYW55X3JvdwACB2FjY291bnQEbmFtZQRuYW1lBnN0cmluZwpjb250cmlidXRlAAYEZ2FtZQRuYW1lBnBsYXllcgRuYW1lCWVudGl0eV9pZAZ1aW50NjQBeAVpbnQ2NAF5BWludDY0BmJ1bmRsZQxjYXJnb19pdGVtW10MZGViaXRkZXBvc2l0AAUFb3duZXIEbmFtZQV0b2tlbgRuYW1lBmxvY2tlZAVhc3NldAtmZWVfYWNjb3VudARuYW1lA2ZlZQVhc3NldA5kZXBvc2l0Y2ZnX3JvdwACDnRva2VuX2NvbnRyYWN0BG5hbWUMdG9rZW5fc3ltYm9sBnN5bWJvbAZlbmFibGUAAQdlbmFibGVkBGJvb2wKZW5hYmxlZ2FtZQACCGNvbnRyYWN0BG5hbWUHZW5hYmxlZARib29sDGZvdW5kY29tcGFueQACB2FjY291bnQEbmFtZQRuYW1lBnN0cmluZwtnYW1lX2NvbmZpZwAEBHNlZWQLY2hlY2tzdW0yNTYJZXBvY2h0aW1lBnVpbnQzMgVzdGFydA50aW1lX3BvaW50X3NlYwNlbmQOdGltZV9wb2ludF9zZWMJZ2FtZV9tZXRhAAQEbmFtZQZzdHJpbmcLZGVzY3JpcHRpb24Gc3RyaW5nA3VybAZzdHJpbmcHdmVyc2lvbgZzdHJpbmcIZ2FtZV9yb3cABAhjb250cmFjdARuYW1lBmNvbmZpZwtnYW1lX2NvbmZpZwRtZXRhCWdhbWVfbWV0YQVzdGF0ZQpnYW1lX3N0YXRlCmdhbWVfc3RhdGUAAQdlbmFibGVkBGJvb2wMbW9kdWxlX2VudHJ5AAIEdHlwZQV1aW50OAlpbnN0YWxsZWQOcGFja2VkX21vZHVsZT8Eb3BlbgADBW93bmVyBG5hbWUOdG9rZW5fY29udHJhY3QEbmFtZQx0b2tlbl9zeW1ib2wGc3ltYm9sDXBhY2tlZF9tb2R1bGUAAgdpdGVtX2lkBnVpbnQxNgVzdGF0cwZ1aW50NjQMcmVsZ2F0ZWFzc2V0AAEIYXNzZXRfaWQGdWludDY0DHJlbGdhdGVvd25lcgABBW93bmVyBG5hbWUMc2V0ZXBvY2h0aW1lAAIIY29udHJhY3QEbmFtZQllcG9jaHRpbWUGdWludDMyCHNldHRva2VuAAIOdG9rZW5fY29udHJhY3QEbmFtZQx0b2tlbl9zeW1ib2wGc3ltYm9sCXN0YXJ0Z2FtZQAECGNvbnRyYWN0BG5hbWUGY29uZmlnC2dhbWVfY29uZmlnBG1ldGEJZ2FtZV9tZXRhBXN0YXRlCmdhbWVfc3RhdGUJc3RhdGVfcm93AAEHZW5hYmxlZARib29sC3Vud3JhcGNhcmdvAAMEZ2FtZQRuYW1lBW93bmVyBG5hbWUIYXNzZXRfaWQGdWludDY0DnVud3JhcGN1c3Rfcm93AAIIYXNzZXRfaWQGdWludDY0BW93bmVyBG5hbWUMdW53cmFwZW50aXR5AAMEZ2FtZQRuYW1lBW93bmVyBG5hbWUIYXNzZXRfaWQGdWludDY0CnVwZGF0ZWdhbWUAAghjb250cmFjdARuYW1lBG1ldGEJZ2FtZV9tZXRhBHdpcGUAAAh3aXRoZHJhdwADBW93bmVyBG5hbWUIcXVhbnRpdHkOZXh0ZW5kZWRfYXNzZXQEbWVtbwZzdHJpbmcJd3JhcGNhcmdvAAYEZ2FtZQRuYW1lBW93bmVyBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAhuZXh1c19pZAZ1aW50NjQIY2FyZ29faWQGdWludDY0CHF1YW50aXR5BnVpbnQ2NAp3cmFwZW50aXR5AAQEZ2FtZQRuYW1lBW93bmVyBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAhuZXh1c19pZAZ1aW50NjQMd3JhcGdhdGVfcm93AAMFb3duZXIEbmFtZQRnYW1lBG5hbWUNbGFzdF9hc3NldF9pZAZ1aW50NjQUAICKx+RrVEQKY2xlYXJ0YWJsZb4BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNsZWFydGFibGUKc3VtbWFyeTogJ0RFQlVHOiBjbGVhcnRhYmxlIGFjdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAAAAAhWlEBWNsb3Nl4gItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY2xvc2UKc3VtbWFyeTogJ0Nsb3NlIGEgZGVwb3NpdCBiYWxhbmNlIHJvdycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KCkNsb3NlIHRoZSBvd25lcidzIGRlcG9zaXQgYmFsYW5jZSByb3cgZm9yIHRoZSBnaXZlbiB0b2tlbiBhbmQgZnJlZSBpdHMgUkFNLiBUaGUgYmFsYW5jZSBtdXN0IGJlIHplcm8gYmVmb3JlIGNsb3NpbmcuIFJlcXVpcmVzIHRoZSBvd25lcidzIGF1dGhvcml0eS4AgMr6uJsnRQpjb250cmlidXRlAJAdplWl7I5KDGRlYml0ZGVwb3NpdJ0ELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGRlYml0ZGVwb3NpdApzdW1tYXJ5OiAnRGViaXQgYSBkZXBvc2l0IGJhbGFuY2UgZm9yIGEgd3JhcCBvcGVyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gY2FsbGVkIGlubGluZSBieSBhIHJlZ2lzdGVyZWQsIGVuYWJsZWQgZ2FtZSBjb250cmFjdCBvbmx5LiBEZWJpdHMgdGhlIG93bmVyJ3MgZGVwb3NpdCBiYWxhbmNlIGJ5IHRoZSBsb2NrZWQgYW1vdW50IHBsdXMgdGhlIGZlZSwgYW5kIGNyZWRpdHMgdGhlIGZlZSB0byB0aGUgY29uZmlndXJlZCBmZWUgYWNjb3VudC4gVXNlZCBieSBhIGdhbWUncyB3cmFwIGZsb3cgdG8gY29sbGVjdCB0aGUgd3JhcCBjb3N0LiBDYW5ub3QgYmUgY2FsbGVkIGRpcmVjdGx5IGJ5IHBsYXllcnMgb3IgdW5yZWdpc3RlcmVkIGFjY291bnRzLgAAAACoeMxUBmVuYWJsZfMBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGVuYWJsZQpzdW1tYXJ5OiAnRW5hYmxlL2Rpc2FibGUgcGxhdGZvcm0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGUgcGxhdGZvcm0gY29udHJhY3QuAICShql4zFQKZW5hYmxlZ2FtZfwBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGVuYWJsZWdhbWUKc3VtbWFyeTogJ0VuYWJsZS9kaXNiYWJsZSBhIGdhbWUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGUgc3BlY2lmaWVkIGdhbWUgY29udHJhY3Qu4KepkqI0NV0MZm91bmRjb21wYW55gwItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZm91bmRjb21wYW55CnN1bW1hcnk6ICdGb3VuZCBhIG5ldyBjb21wYW55JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKRm91bmQgYSBuZXcgY29tcGFueSBpbiB0aGUgU2hpcGxvYWQgcGxhdGZvcm0gY29udHJhY3QuAAAAAAAwVaUEb3BlbpsDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IG9wZW4Kc3VtbWFyeTogJ09wZW4gYSBkZXBvc2l0IGJhbGFuY2Ugcm93JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKT3BlbiBhIHplcm8tYmFsYW5jZSBkZXBvc2l0IHJvdyBmb3IgdGhlIGdpdmVuIG93bmVyIGFuZCB0b2tlbiwgd2l0aCBSQU0gcGFpZCBieSB0aGUgb3duZXIuIEhhcyBubyBlZmZlY3QgaWYgdGhlIHJvdyBhbHJlYWR5IGV4aXN0cy4gTXVzdCBiZSBjYWxsZWQgYmVmb3JlIHRoZSBvd25lciBjYW4gcmVjZWl2ZSB0b2tlbiBkZXBvc2l0cyBvciB3cmFwIHJlZnVuZHMukBXGRmXDoroMcmVsZ2F0ZWFzc2V0AHDV5FRlw6K6DHJlbGdhdGVvd25lcgCgpMsN0aqywgxzZXRlcG9jaHRpbWXEAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzZXRlcG9jaHRpbWUKc3VtbWFyeTogJ0RFQlVHOiBvdmVycmlkZSBhIGdhbWUnJ3MgZXBvY2ggdGltZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKT3ZlcnJpZGUgdGhlIGVwb2NoIGR1cmF0aW9uIGluIHRoZSBjb25maWd1cmF0aW9uIG9mIHRoZSBzcGVjaWZpZWQgZ2FtZSBjb250cmFjdC4gUmVxdWlyZXMgcGxhdGZvcm0gY29udHJhY3QgYXV0aG9yaXR5LgAAAFNBmrPCCHNldHRva2VunQMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogc2V0dG9rZW4Kc3VtbWFyeTogJ1NldCB0aGUgYWNjZXB0ZWQgZGVwb3NpdCB0b2tlbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KCkFkbWluIGFjdGlvbiB0aGF0IHNldHMgdGhlIGFjY2VwdGVkIGRlcG9zaXQgdG9rZW4gKGNvbnRyYWN0IGFjY291bnQgYW5kIHN5bWJvbCkgZm9yIHRoZSBwbGF0Zm9ybS4gQWxsIHBsYXllciBkZXBvc2l0cyBhbmQgd3JhcCBjb3N0cyBhcmUgZGVub21pbmF0ZWQgaW4gdGhpcyB0b2tlbi4gUmVxdWlyZXMgcGxhdGZvcm0gY29udHJhY3QgYXV0aG9yaXR5LgAAUNKwfE3GCXN0YXJ0Z2FtZf8BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHN0YXJ0Z2FtZQpzdW1tYXJ5OiAnU3RhcnQgYSBuZXcgZ2FtZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KClN0YXJ0IGEgbmV3IGdhbWUgb2YgU2hpcGxvYWQgZGVwbG95ZWQgdG8gYSBuZXcgY29udHJhY3QuACi7BlVz+dQLdW53cmFwY2FyZ2/PBC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1bndyYXBjYXJnbwpzdW1tYXJ5OiAnRGVwb3NpdCBhbiBORlQgaW50byBhIGhvc3QgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpEZXBvc2l0IGFuIEF0b21pY0Fzc2V0cyBORlQgaW50byBhIGhvc3QgZW50aXR5J3MgY2FyZ28uIFBhaXJzIHdpdGggYW4gYXRvbWljYXNzZXRzOjp0cmFuc2ZlciBjYXJyeWluZyB0aGUgJ3Vud3JhcCcgbWVtbyBpbiB0aGUgc2FtZSB0cmFuc2FjdGlvbi4gVGhlIGNhbGxlciBtdXN0IG93biB0aGUgaG9zdCwgdGhlIGhvc3QgbXVzdCBoYXZlIGxvYWRlcnMsIGFuZCB0aGUgaG9zdCBtdXN0IGhhdmUgY2FwYWNpdHkgaGVhZHJvb20gZm9yIHRoZSB1bndyYXBwZWQgbWFzcy4gU2NoZWR1bGVzIGEgVEFTS19VTldSQVAgb24gdGhlIGhvc3QgdGhhdCwgb24gcmVzb2x1dGlvbiwgcGxhY2VzIHRoZSBkZWNvZGVkIGl0ZW0gaW50byB0aGUgaG9zdCdzIGNhcmdvIGFuZCBidXJucyB0aGUgTkZULuCzy1NVc/nUDHVud3JhcGVudGl0eeIELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHVud3JhcGVudGl0eQpzdW1tYXJ5OiAnRGVwbG95IGFuIGVudGl0eSBORlQgZGlyZWN0bHkgdG8gYSBuZXh1cycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRGVwbG95IGEgcGFja2VkLWVudGl0eSBBdG9taWNBc3NldHMgTkZUIChvcmJpdGFsIHZlc3NlbDogc2hpcCBvciBjb250YWluZXIpIGRpcmVjdGx5IGFzIGEgbGl2ZSBlbnRpdHkuIFBhaXJzIHdpdGggYW4gYXRvbWljYXNzZXRzOjp0cmFuc2ZlciBjYXJyeWluZyB0aGUgJ2RlcGxveScgbWVtbyBpbiB0aGUgc2FtZSB0cmFuc2FjdGlvbi4gVGhlIE5GVCBpcyBidXJuZWQsIGEgbmV3IGVudGl0eSByb3cgaXMgZW1wbGFjZWQgYXQgdGhlIE5GVCdzIHdyYXAgb3JpZ2luIHBhaWQgYnkgdGhlIG93bmVyLCBhbmQgVEFTS19UUkFWRUwgcGx1cyBUQVNLX1JFQ0hBUkdFIGFyZSBxdWV1ZWQgdG8gZGVsaXZlciB0aGUgZW50aXR5IHRvIHRoZSB0YXJnZXQgbmV4dXMgYW5kIGJyaW5nIGl0IHRvIGZ1bGwgZW5lcmd5LgCAkoapbFLVCnVwZGF0ZWdhbWWNAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1cGRhdGVnYW1lCnN1bW1hcnk6ICdVcGRhdGUgZ2FtZSBpbmZvcm1hdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KClVwZGF0ZSB0aGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNwZWNpZmllZCBnYW1lIGNvbnRyYWN0LgoKLS0tAAAAAACgquMEd2lwZbIBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHdpcGUKc3VtbWFyeTogJ0RFQlVHOiB3aXBlIGFjdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAANzc1LLjCHdpdGhkcmF3lwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd2l0aGRyYXcKc3VtbWFyeTogJ1dpdGhkcmF3IHRva2VucyBmcm9tIGEgZGVwb3NpdCBiYWxhbmNlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKV2l0aGRyYXcgdG9rZW5zIGZyb20gdGhlIG93bmVyJ3MgZGVwb3NpdCBiYWxhbmNlLiBEZWJpdHMgdGhlIGxlZGdlciBieSB0aGUgcmVxdWVzdGVkIGFtb3VudCBhbmQgdHJhbnNmZXJzIHRoZSB0b2tlbnMgdG8gdGhlIG93bmVyLiBSZXF1aXJlcyBhIHN1ZmZpY2llbnQgYmFsYW5jZSBhbmQgdGhlIG93bmVyJ3MgYXV0aG9yaXR5LgAAoOwaVM3lCXdyYXBjYXJnbwAAgM8uT1XN5Qp3cmFwZW50aXR5tQQtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd3JhcGVudGl0eQpzdW1tYXJ5OiAnV3JhcCBhIGRlcGxveWVkIGVudGl0eSBpbnRvIGFuIE5GVCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKV3JhcCBhbiBlbnRpdHkgaW50byBhbiBBdG9taWNBc3NldHMgTkZUIG1pbnRlZCB0byBpdHMgb3duZXIuIFRoZSBlbnRpdHkgbXVzdCBiZSBhdCBhIG5leHVzLCBpZGxlIHdpdGggZW1wdHkgY2FyZ28sIGFuZCBoYXZlIGFuIG5mdGNvbmZpZyBtYXBwaW5nIGZvciBpdHMgaXRlbSBpZC4gRXJhc2VzIHRoZSBlbnRpdHkgYW5kIG1pbnRzIHRoZSBORlQgaW5saW5lLCBwcmVzZXJ2aW5nIGl0cyBzdGF0cyBhbmQgaW5zdGFsbGVkIG1vZHVsZXM7IHRoZSBwbGF5ZXIgcGF5cyBSQU0gZm9yIHRoZSBuZXcgYXNzZXQgcm93LiBSZXF1aXJlcyB0aGUgb3duZXIncyBhY3RpdmUgcGVybWlzc2lvbiAobm8gc2Vzc2lvbi1rZXkgY29tcGF0aWJpbGl0eSkuBwAAAEChaaI5A2k2NAAAC2JhbGFuY2Vfcm93AAAAwE9TJUUDaTY0AAALY29tcGFueV9yb3cAAFsoO0yrSgNpNjQAAA5kZXBvc2l0Y2ZnX3JvdwAAAAAArKRhA2k2NAAACGdhbWVfcm93AAAAAACVTcYDaTY0AAAJc3RhdGVfcm93AEDGGlVz+dQDaTY0AAAOdW53cmFwY3VzdF9yb3cAAAAqG1bN5QNpNjQAAAx3cmFwZ2F0ZV9yb3cBE1NoaXBsb2FkIChQbGF0Zm9ybSkTU2hpcGxvYWQgKFBsYXRmb3JtKQAAAAA=');
329
+ const abiBlob$2 = Blob.from('DmVvc2lvOjphYmkvMS4yACILYmFsYW5jZV9yb3cAAg50b2tlbl9jb250cmFjdARuYW1lB2JhbGFuY2UFYXNzZXQKY2FyZ29faXRlbQAFB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCHF1YW50aXR5BnVpbnQzMgllbnRpdHlfaWQHdWludDY0PwpjbGVhcnRhYmxlAAMKdGFibGVfbmFtZQRuYW1lBXNjb3BlBW5hbWU/CG1heF9yb3dzB3VpbnQ2ND8FY2xvc2UAAwVvd25lcgRuYW1lDnRva2VuX2NvbnRyYWN0BG5hbWUMdG9rZW5fc3ltYm9sBnN5bWJvbAtjb21wYW55X3JvdwACB2FjY291bnQEbmFtZQRuYW1lBnN0cmluZwpjb250cmlidXRlAAYEZ2FtZQRuYW1lBnBsYXllcgRuYW1lCWVudGl0eV9pZAZ1aW50NjQBeAVpbnQ2NAF5BWludDY0BmJ1bmRsZQxjYXJnb19pdGVtW10JZGJncmVmdW5kAAEGb3duZXJzBm5hbWVbXQxkZWJpdGRlcG9zaXQABQVvd25lcgRuYW1lBXRva2VuBG5hbWUGbG9ja2VkBWFzc2V0C2ZlZV9hY2NvdW50BG5hbWUDZmVlBWFzc2V0DmRlcG9zaXRjZmdfcm93AAIOdG9rZW5fY29udHJhY3QEbmFtZQx0b2tlbl9zeW1ib2wGc3ltYm9sBmVuYWJsZQABB2VuYWJsZWQEYm9vbAplbmFibGVnYW1lAAIIY29udHJhY3QEbmFtZQdlbmFibGVkBGJvb2wMZm91bmRjb21wYW55AAIHYWNjb3VudARuYW1lBG5hbWUGc3RyaW5nC2dhbWVfY29uZmlnAAQEc2VlZAtjaGVja3N1bTI1NgllcG9jaHRpbWUGdWludDMyBXN0YXJ0DnRpbWVfcG9pbnRfc2VjA2VuZA50aW1lX3BvaW50X3NlYwlnYW1lX21ldGEABARuYW1lBnN0cmluZwtkZXNjcmlwdGlvbgZzdHJpbmcDdXJsBnN0cmluZwd2ZXJzaW9uBnN0cmluZwhnYW1lX3JvdwAECGNvbnRyYWN0BG5hbWUGY29uZmlnC2dhbWVfY29uZmlnBG1ldGEJZ2FtZV9tZXRhBXN0YXRlCmdhbWVfc3RhdGUKZ2FtZV9zdGF0ZQABB2VuYWJsZWQEYm9vbAxtb2R1bGVfZW50cnkAAgR0eXBlBXVpbnQ4CWluc3RhbGxlZA5wYWNrZWRfbW9kdWxlPwRvcGVuAAMFb3duZXIEbmFtZQ50b2tlbl9jb250cmFjdARuYW1lDHRva2VuX3N5bWJvbAZzeW1ib2wNcGFja2VkX21vZHVsZQACB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAxyZWxnYXRlYXNzZXQAAQhhc3NldF9pZAZ1aW50NjQMcmVsZ2F0ZW93bmVyAAEFb3duZXIEbmFtZQxzZXRlcG9jaHRpbWUAAghjb250cmFjdARuYW1lCWVwb2NodGltZQZ1aW50MzIIc2V0dG9rZW4AAg50b2tlbl9jb250cmFjdARuYW1lDHRva2VuX3N5bWJvbAZzeW1ib2wJc3RhcnRnYW1lAAQIY29udHJhY3QEbmFtZQZjb25maWcLZ2FtZV9jb25maWcEbWV0YQlnYW1lX21ldGEFc3RhdGUKZ2FtZV9zdGF0ZQlzdGF0ZV9yb3cAAQdlbmFibGVkBGJvb2wLdW53cmFwY2FyZ28AAwRnYW1lBG5hbWUFb3duZXIEbmFtZQhhc3NldF9pZAZ1aW50NjQOdW53cmFwY3VzdF9yb3cAAghhc3NldF9pZAZ1aW50NjQFb3duZXIEbmFtZQx1bndyYXBlbnRpdHkAAwRnYW1lBG5hbWUFb3duZXIEbmFtZQhhc3NldF9pZAZ1aW50NjQKdXBkYXRlZ2FtZQACCGNvbnRyYWN0BG5hbWUEbWV0YQlnYW1lX21ldGEEd2lwZQAACHdpdGhkcmF3AAMFb3duZXIEbmFtZQhxdWFudGl0eQ5leHRlbmRlZF9hc3NldARtZW1vBnN0cmluZwl3cmFwY2FyZ28ABgRnYW1lBG5hbWUFb3duZXIEbmFtZQllbnRpdHlfaWQGdWludDY0CG5leHVzX2lkBnVpbnQ2NAhjYXJnb19pZAZ1aW50NjQIcXVhbnRpdHkGdWludDY0CndyYXBlbnRpdHkABARnYW1lBG5hbWUFb3duZXIEbmFtZQllbnRpdHlfaWQGdWludDY0CG5leHVzX2lkBnVpbnQ2NAx3cmFwZ2F0ZV9yb3cAAwVvd25lcgRuYW1lBGdhbWUEbmFtZQ1sYXN0X2Fzc2V0X2lkBnVpbnQ2NBUAgIrH5GtURApjbGVhcnRhYmxlvgEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY2xlYXJ0YWJsZQpzdW1tYXJ5OiAnREVCVUc6IGNsZWFydGFibGUgYWN0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAAACFaUQFY2xvc2XiAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjbG9zZQpzdW1tYXJ5OiAnQ2xvc2UgYSBkZXBvc2l0IGJhbGFuY2Ugcm93JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKQ2xvc2UgdGhlIG93bmVyJ3MgZGVwb3NpdCBiYWxhbmNlIHJvdyBmb3IgdGhlIGdpdmVuIHRva2VuIGFuZCBmcmVlIGl0cyBSQU0uIFRoZSBiYWxhbmNlIG11c3QgYmUgemVybyBiZWZvcmUgY2xvc2luZy4gUmVxdWlyZXMgdGhlIG93bmVyJ3MgYXV0aG9yaXR5LgCAyvq4mydFCmNvbnRyaWJ1dGUAAABIUy912UkJZGJncmVmdW5kAJAdplWl7I5KDGRlYml0ZGVwb3NpdJ0ELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGRlYml0ZGVwb3NpdApzdW1tYXJ5OiAnRGViaXQgYSBkZXBvc2l0IGJhbGFuY2UgZm9yIGEgd3JhcCBvcGVyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gY2FsbGVkIGlubGluZSBieSBhIHJlZ2lzdGVyZWQsIGVuYWJsZWQgZ2FtZSBjb250cmFjdCBvbmx5LiBEZWJpdHMgdGhlIG93bmVyJ3MgZGVwb3NpdCBiYWxhbmNlIGJ5IHRoZSBsb2NrZWQgYW1vdW50IHBsdXMgdGhlIGZlZSwgYW5kIGNyZWRpdHMgdGhlIGZlZSB0byB0aGUgY29uZmlndXJlZCBmZWUgYWNjb3VudC4gVXNlZCBieSBhIGdhbWUncyB3cmFwIGZsb3cgdG8gY29sbGVjdCB0aGUgd3JhcCBjb3N0LiBDYW5ub3QgYmUgY2FsbGVkIGRpcmVjdGx5IGJ5IHBsYXllcnMgb3IgdW5yZWdpc3RlcmVkIGFjY291bnRzLgAAAACoeMxUBmVuYWJsZfMBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGVuYWJsZQpzdW1tYXJ5OiAnRW5hYmxlL2Rpc2FibGUgcGxhdGZvcm0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGUgcGxhdGZvcm0gY29udHJhY3QuAICShql4zFQKZW5hYmxlZ2FtZfwBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGVuYWJsZWdhbWUKc3VtbWFyeTogJ0VuYWJsZS9kaXNiYWJsZSBhIGdhbWUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGUgc3BlY2lmaWVkIGdhbWUgY29udHJhY3Qu4KepkqI0NV0MZm91bmRjb21wYW55gwItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZm91bmRjb21wYW55CnN1bW1hcnk6ICdGb3VuZCBhIG5ldyBjb21wYW55JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKRm91bmQgYSBuZXcgY29tcGFueSBpbiB0aGUgU2hpcGxvYWQgcGxhdGZvcm0gY29udHJhY3QuAAAAAAAwVaUEb3BlbpsDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IG9wZW4Kc3VtbWFyeTogJ09wZW4gYSBkZXBvc2l0IGJhbGFuY2Ugcm93JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKT3BlbiBhIHplcm8tYmFsYW5jZSBkZXBvc2l0IHJvdyBmb3IgdGhlIGdpdmVuIG93bmVyIGFuZCB0b2tlbiwgd2l0aCBSQU0gcGFpZCBieSB0aGUgb3duZXIuIEhhcyBubyBlZmZlY3QgaWYgdGhlIHJvdyBhbHJlYWR5IGV4aXN0cy4gTXVzdCBiZSBjYWxsZWQgYmVmb3JlIHRoZSBvd25lciBjYW4gcmVjZWl2ZSB0b2tlbiBkZXBvc2l0cyBvciB3cmFwIHJlZnVuZHMukBXGRmXDoroMcmVsZ2F0ZWFzc2V0AHDV5FRlw6K6DHJlbGdhdGVvd25lcgCgpMsN0aqywgxzZXRlcG9jaHRpbWXEAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzZXRlcG9jaHRpbWUKc3VtbWFyeTogJ0RFQlVHOiBvdmVycmlkZSBhIGdhbWUnJ3MgZXBvY2ggdGltZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKT3ZlcnJpZGUgdGhlIGVwb2NoIGR1cmF0aW9uIGluIHRoZSBjb25maWd1cmF0aW9uIG9mIHRoZSBzcGVjaWZpZWQgZ2FtZSBjb250cmFjdC4gUmVxdWlyZXMgcGxhdGZvcm0gY29udHJhY3QgYXV0aG9yaXR5LgAAAFNBmrPCCHNldHRva2VunQMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogc2V0dG9rZW4Kc3VtbWFyeTogJ1NldCB0aGUgYWNjZXB0ZWQgZGVwb3NpdCB0b2tlbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KCkFkbWluIGFjdGlvbiB0aGF0IHNldHMgdGhlIGFjY2VwdGVkIGRlcG9zaXQgdG9rZW4gKGNvbnRyYWN0IGFjY291bnQgYW5kIHN5bWJvbCkgZm9yIHRoZSBwbGF0Zm9ybS4gQWxsIHBsYXllciBkZXBvc2l0cyBhbmQgd3JhcCBjb3N0cyBhcmUgZGVub21pbmF0ZWQgaW4gdGhpcyB0b2tlbi4gUmVxdWlyZXMgcGxhdGZvcm0gY29udHJhY3QgYXV0aG9yaXR5LgAAUNKwfE3GCXN0YXJ0Z2FtZf8BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHN0YXJ0Z2FtZQpzdW1tYXJ5OiAnU3RhcnQgYSBuZXcgZ2FtZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KClN0YXJ0IGEgbmV3IGdhbWUgb2YgU2hpcGxvYWQgZGVwbG95ZWQgdG8gYSBuZXcgY29udHJhY3QuACi7BlVz+dQLdW53cmFwY2FyZ2/PBC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1bndyYXBjYXJnbwpzdW1tYXJ5OiAnRGVwb3NpdCBhbiBORlQgaW50byBhIGhvc3QgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpEZXBvc2l0IGFuIEF0b21pY0Fzc2V0cyBORlQgaW50byBhIGhvc3QgZW50aXR5J3MgY2FyZ28uIFBhaXJzIHdpdGggYW4gYXRvbWljYXNzZXRzOjp0cmFuc2ZlciBjYXJyeWluZyB0aGUgJ3Vud3JhcCcgbWVtbyBpbiB0aGUgc2FtZSB0cmFuc2FjdGlvbi4gVGhlIGNhbGxlciBtdXN0IG93biB0aGUgaG9zdCwgdGhlIGhvc3QgbXVzdCBoYXZlIGxvYWRlcnMsIGFuZCB0aGUgaG9zdCBtdXN0IGhhdmUgY2FwYWNpdHkgaGVhZHJvb20gZm9yIHRoZSB1bndyYXBwZWQgbWFzcy4gU2NoZWR1bGVzIGEgVEFTS19VTldSQVAgb24gdGhlIGhvc3QgdGhhdCwgb24gcmVzb2x1dGlvbiwgcGxhY2VzIHRoZSBkZWNvZGVkIGl0ZW0gaW50byB0aGUgaG9zdCdzIGNhcmdvIGFuZCBidXJucyB0aGUgTkZULuCzy1NVc/nUDHVud3JhcGVudGl0eeIELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHVud3JhcGVudGl0eQpzdW1tYXJ5OiAnRGVwbG95IGFuIGVudGl0eSBORlQgZGlyZWN0bHkgdG8gYSBuZXh1cycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRGVwbG95IGEgcGFja2VkLWVudGl0eSBBdG9taWNBc3NldHMgTkZUIChvcmJpdGFsIHZlc3NlbDogc2hpcCBvciBjb250YWluZXIpIGRpcmVjdGx5IGFzIGEgbGl2ZSBlbnRpdHkuIFBhaXJzIHdpdGggYW4gYXRvbWljYXNzZXRzOjp0cmFuc2ZlciBjYXJyeWluZyB0aGUgJ2RlcGxveScgbWVtbyBpbiB0aGUgc2FtZSB0cmFuc2FjdGlvbi4gVGhlIE5GVCBpcyBidXJuZWQsIGEgbmV3IGVudGl0eSByb3cgaXMgZW1wbGFjZWQgYXQgdGhlIE5GVCdzIHdyYXAgb3JpZ2luIHBhaWQgYnkgdGhlIG93bmVyLCBhbmQgVEFTS19UUkFWRUwgcGx1cyBUQVNLX1JFQ0hBUkdFIGFyZSBxdWV1ZWQgdG8gZGVsaXZlciB0aGUgZW50aXR5IHRvIHRoZSB0YXJnZXQgbmV4dXMgYW5kIGJyaW5nIGl0IHRvIGZ1bGwgZW5lcmd5LgCAkoapbFLVCnVwZGF0ZWdhbWWNAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1cGRhdGVnYW1lCnN1bW1hcnk6ICdVcGRhdGUgZ2FtZSBpbmZvcm1hdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KClVwZGF0ZSB0aGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNwZWNpZmllZCBnYW1lIGNvbnRyYWN0LgoKLS0tAAAAAACgquMEd2lwZbIBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHdpcGUKc3VtbWFyeTogJ0RFQlVHOiB3aXBlIGFjdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAANzc1LLjCHdpdGhkcmF3lwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd2l0aGRyYXcKc3VtbWFyeTogJ1dpdGhkcmF3IHRva2VucyBmcm9tIGEgZGVwb3NpdCBiYWxhbmNlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKV2l0aGRyYXcgdG9rZW5zIGZyb20gdGhlIG93bmVyJ3MgZGVwb3NpdCBiYWxhbmNlLiBEZWJpdHMgdGhlIGxlZGdlciBieSB0aGUgcmVxdWVzdGVkIGFtb3VudCBhbmQgdHJhbnNmZXJzIHRoZSB0b2tlbnMgdG8gdGhlIG93bmVyLiBSZXF1aXJlcyBhIHN1ZmZpY2llbnQgYmFsYW5jZSBhbmQgdGhlIG93bmVyJ3MgYXV0aG9yaXR5LgAAoOwaVM3lCXdyYXBjYXJnbwAAgM8uT1XN5Qp3cmFwZW50aXR5tQQtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd3JhcGVudGl0eQpzdW1tYXJ5OiAnV3JhcCBhIGRlcGxveWVkIGVudGl0eSBpbnRvIGFuIE5GVCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKV3JhcCBhbiBlbnRpdHkgaW50byBhbiBBdG9taWNBc3NldHMgTkZUIG1pbnRlZCB0byBpdHMgb3duZXIuIFRoZSBlbnRpdHkgbXVzdCBiZSBhdCBhIG5leHVzLCBpZGxlIHdpdGggZW1wdHkgY2FyZ28sIGFuZCBoYXZlIGFuIG5mdGNvbmZpZyBtYXBwaW5nIGZvciBpdHMgaXRlbSBpZC4gRXJhc2VzIHRoZSBlbnRpdHkgYW5kIG1pbnRzIHRoZSBORlQgaW5saW5lLCBwcmVzZXJ2aW5nIGl0cyBzdGF0cyBhbmQgaW5zdGFsbGVkIG1vZHVsZXM7IHRoZSBwbGF5ZXIgcGF5cyBSQU0gZm9yIHRoZSBuZXcgYXNzZXQgcm93LiBSZXF1aXJlcyB0aGUgb3duZXIncyBhY3RpdmUgcGVybWlzc2lvbiAobm8gc2Vzc2lvbi1rZXkgY29tcGF0aWJpbGl0eSkuBwAAAEChaaI5A2k2NAAAC2JhbGFuY2Vfcm93AAAAwE9TJUUDaTY0AAALY29tcGFueV9yb3cAAFsoO0yrSgNpNjQAAA5kZXBvc2l0Y2ZnX3JvdwAAAAAArKRhA2k2NAAACGdhbWVfcm93AAAAAACVTcYDaTY0AAAJc3RhdGVfcm93AEDGGlVz+dQDaTY0AAAOdW53cmFwY3VzdF9yb3cAAAAqG1bN5QNpNjQAAAx3cmFwZ2F0ZV9yb3cBE1NoaXBsb2FkIChQbGF0Zm9ybSkTU2hpcGxvYWQgKFBsYXRmb3JtKQAAAAA=');
230
330
  ABI.from(abiBlob$2);
231
331
  var Types$2;
232
332
  (function (Types) {
@@ -353,6 +453,15 @@ var Types$2;
353
453
  Struct.type('contribute')
354
454
  ], contribute);
355
455
  Types.contribute = contribute;
456
+ let dbgrefund = class dbgrefund extends Struct {
457
+ };
458
+ __decorate([
459
+ Struct.field(Name, { array: true })
460
+ ], dbgrefund.prototype, "owners", void 0);
461
+ dbgrefund = __decorate([
462
+ Struct.type('dbgrefund')
463
+ ], dbgrefund);
464
+ Types.dbgrefund = dbgrefund;
356
465
  let debitdeposit = class debitdeposit extends Struct {
357
466
  };
358
467
  __decorate([
@@ -709,7 +818,7 @@ var Types$2;
709
818
  wrapgate: Types$2.wrapgate_row,
710
819
  });
711
820
 
712
- const abiBlob$1 = Blob.from('DmVvc2lvOjphYmkvMS4yAhVCX3ZlY3Rvcl9lbnRpdHlfcmVmX0UMZW50aXR5X3JlZltdDWxvY2F0aW9uX3R5cGUFdWludDinAgthYmFuZG9ucGxvdAABB3Bsb3RfaWQGdWludDY0CmFkZGNvbnRyaWIABQZwbGF5ZXIEbmFtZQllbnRpdHlfaWQGdWludDY0AXgFaW50NjQBeQVpbnQ2NAZidW5kbGUMY2FyZ29faXRlbVtdCWFkZG1vZHVsZQAECWVudGl0eV9pZAZ1aW50NjQMbW9kdWxlX2luZGV4BXVpbnQ4Cm1vZHVsZV9yZWYJY2FyZ29fcmVmCnRhcmdldF9yZWYKY2FyZ29fcmVmPwhhZGRuZXh1cwADCm5leHVzX25hbWUGc3RyaW5nAXgFaW50NjQBeQVpbnQ2NAlhZGRvcmFjbGUAAQlvcmFjbGVfaWQEbmFtZQVibGVuZAACAmlkBnVpbnQ2NAZpbnB1dHMMY2FyZ29faXRlbVtdDGJ1aWxkZXJfbGFuZQAECnNsb3RfaW5kZXgFdWludDgFc3BlZWQGdWludDE2BWRyYWluBnVpbnQzMgpvdXRwdXRfcGN0BnVpbnQxNglidWlsZHBsb3QAAgpidWlsZGVyX2lkBnVpbnQ2NAdwbG90X2lkBnVpbnQ2NAZjYW5jZWwAAwJpZAZ1aW50NjQIbGFuZV9rZXkFdWludDgFY291bnQGdWludDY0DmNhbmNlbF9yZXN1bHRzAAYJZW50aXR5X2lkBnVpbnQ2NAtlbnRpdHlfdHlwZQRuYW1lD2NhbmNlbGxlZF9jb3VudAV1aW50OBBzY2hlZHVsZV9zdGFydGVkC3RpbWVfcG9pbnQ/C2VudGl0eWdyb3VwB3VpbnQ2ND8NZ3JvdXBfbWVtYmVycxZCX3ZlY3Rvcl9lbnRpdHlfcmVmX0U/CWNhbmNlbGpvYgACBmpvYl9pZAZ1aW50NjQHc2hpcF9pZAZ1aW50NjQNY2FuY2VsdXBncmFkZQABBmpvYl9pZAZ1aW50NjQKY2FyZ29faXRlbQAFB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCHF1YW50aXR5BnVpbnQzMgllbnRpdHlfaWQHdWludDY0PwljYXJnb19yZWYABAdpdGVtX2lkBnVpbnQxNgVzdGF0cwZ1aW50NjQHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQllbnRpdHlfaWQHdWludDY0PwljYXJnb19yb3cABwJpZAZ1aW50NjQJZW50aXR5X2lkBnVpbnQ2NAdpdGVtX2lkBnVpbnQ2NAhxdWFudGl0eQZ1aW50NjQFc3RhdHMGdWludDY0B21vZHVsZXMObW9kdWxlX2VudHJ5W10Lc2VxdWVuY2VfaWQHdWludDY0PwpjYXJnb192aWV3AAYHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0B21vZHVsZXMObW9kdWxlX2VudHJ5W10IcXVhbnRpdHkGdWludDMyAmlkBnVpbnQ2NAllbnRpdHlfaWQHdWludDY0Pw5jaGFydGVyX2VmZmVjdAAFBGtpbmQFdWludDgHaXRlbV9pZAZ1aW50MTYOdGFyZ2V0X2l0ZW1faWQGdWludDE2CXNsb3RfbWFzawZ1aW50MTYEc3RhdAZ1aW50MTYQY2hhcnRlcl9ub2RlX2RlZgAEB25vZGVfaWQGdWludDMyBGNvc3QGdWludDY0B3ByZXJlcXMIdWludDMyW10GZWZmZWN0DmNoYXJ0ZXJfZWZmZWN0EmNoYXJ0ZXJfcmVhZHlfdmlldwADAXgFaW50NjQBeQVpbnQ2NAdtYW5kYXRlBnVpbnQzMg5jaGFydGVyX3Jlc3VsdAAKC2xvY2F0aW9uX2lkBnVpbnQ2NAhsaWZldGltZQZ1aW50NjQJd2F0ZXJtYXJrBnVpbnQ2NAdzdXJwbHVzBnVpbnQ2NAdtYW5kYXRlBnVpbnQzMgluZXh0X2Nvc3QGdWludDY0C3ByZXJlcXNfbWV0BGJvb2wJYnVpbGRhYmxlBGJvb2wFZXBvY2gGdWludDMyBWJ1aWx0DmNoYXJ0ZXJfdmlld1tdE2NoYXJ0ZXJfdHJlZV9yZXN1bHQAAQVub2RlcxJjaGFydGVyX25vZGVfZGVmW10MY2hhcnRlcl92aWV3AAMHbm9kZV9pZAZ1aW50MzIPY29tcGxldGVkX2Vwb2NoBnVpbnQzMgllbnRpdHlfaWQGdWludDY0DGNoYXJ0ZXJyZWFkeQACAXgFaW50NjQBeQVpbnQ2NBNjaGFydGVycmVhZHlfcmVzdWx0AAEGd29ybGRzFGNoYXJ0ZXJfcmVhZHlfdmlld1tdDGNoYXJ0ZXJzX3JvdwADB25vZGVfaWQGdWludDMyD2NvbXBsZXRlZF9lcG9jaAZ1aW50MzIJZW50aXR5X2lkBnVpbnQ2NA9jaXZpY2NvbmZpZ19yb3cAAQtjaXZpY19vd25lcgRuYW1lCWNsYWltX3JvdwABBW93bmVyBG5hbWUIY2xhaW1qb2IAAgZqb2JfaWQGdWludDY0B3NoaXBfaWQGdWludDY0CWNsYWltcGxvdAADCmJ1aWxkZXJfaWQGdWludDY0DnRhcmdldF9pdGVtX2lkBnVpbnQxNgRzbG90DGNsdXN0ZXJfc2xvdAxjbGFpbXN0YXJ0ZXIAAQVvd25lcgRuYW1lDGNsYWltdXBncmFkZQABBmpvYl9pZAZ1aW50NjQJY2xlYW5yc3ZwAAIFZXBvY2gGdWludDY0CG1heF9yb3dzBnVpbnQ2NApjbGVhcnRhYmxlAAMKdGFibGVfbmFtZQRuYW1lBXNjb3BlBW5hbWU/CG1heF9yb3dzB3VpbnQ2ND8MY2x1c3Rlcl9jZWxsAAMCZ3gEaW50OAJneQRpbnQ4BmVudGl0eQZ1aW50NjQLY2x1c3Rlcl9yb3cAAgRyb290BnVpbnQ2NAVjZWxscw5jbHVzdGVyX2NlbGxbXQxjbHVzdGVyX3Nsb3QAAwNodWIGdWludDY0Amd4BGludDgCZ3kEaW50OA5jbHVzdGVyX3NvdXJjZQACCXNvdXJjZV9pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdDGNsdXN0ZXJjcmFmdAAGAmlkBnVpbnQ2NAlyZWNpcGVfaWQGdWludDE2CHF1YW50aXR5BnVpbnQzMgdzb3VyY2VzEGNsdXN0ZXJfc291cmNlW10GdGFyZ2V0B3VpbnQ2ND8Ec2xvdAZ1aW50OD8GY29tbWl0AAMJb3JhY2xlX2lkBG5hbWUFZXBvY2gGdWludDY0BmNvbW1pdAtjaGVja3N1bTI1Ngpjb21taXRfcm93AAQCaWQGdWludDY0BWVwb2NoBnVpbnQ2NAlvcmFjbGVfaWQEbmFtZQZjb21taXQLY2hlY2tzdW0yNTYJY29uZmlnbG9nAAEGY29uZmlnC2dhbWVfY29uZmlnC2Nvb3JkaW5hdGVzAAMBeAVpbnQ2NAF5BWludDY0AXoHdWludDE2Pwhjb3VwbGluZwADC2NvdW50ZXJwYXJ0CmVudGl0eV9yZWYEaG9sZAZ1aW50NjQEa2luZAV1aW50OAVjcmFmdAAGAmlkBnVpbnQ2NAlyZWNpcGVfaWQGdWludDE2CHF1YW50aXR5BnVpbnQzMgZpbnB1dHMMY2FyZ29faXRlbVtdBnRhcmdldAd1aW50NjQ/BHNsb3QGdWludDg/DGNyYWZ0ZXJfbGFuZQAECnNsb3RfaW5kZXgFdWludDgFc3BlZWQGdWludDE2BWRyYWluBnVpbnQzMgpvdXRwdXRfcGN0BnVpbnQxNghjcmFmdGpvYgAGB3NoaXBfaWQGdWludDY0C3dvcmtzaG9wX2lkBnVpbnQ2NARzbG90BXVpbnQ4CXJlY2lwZV9pZAZ1aW50MTYIcXVhbnRpdHkGdWludDMyBmlucHV0cwxjYXJnb19pdGVtW10JZGJnY3JlZGl0AAQFb3duZXIEbmFtZQF4BWludDY0AXkFaW50NjQNYW1vdW50X2F0b21pYwZ1aW50NjQKZGJnbWFuZGF0ZQADAXgFaW50NjQBeQVpbnQ2NAdub2RlX2lkBnVpbnQzMg1kZWNvbXBfYnVja2V0AAMIY2F0ZWdvcnkFdWludDgEdGllcgV1aW50OAZyYXdfa2cGdWludDMyDWRlY29tcF9yZXN1bHQAAwdpdGVtX2lkBnVpbnQxNgxwcm9jZXNzZWRfa2cGdWludDY0B2J1Y2tldHMPZGVjb21wX2J1Y2tldFtdCWRlbGVudGl0eQABCWVudGl0eV9pZAZ1aW50NjQNZGVtYW5kX3Jlc3VsdAAFDWFidW5kYW50X21hc2sFdWludDgMbGFja2luZ19tYXNrBXVpbnQ4BWFjdXRlBXVpbnQ4B25lZWRfZnAIdWludDY0W10FZXBvY2gGdWludDMyCGRlbW9saXNoAAEJZW50aXR5X2lkBnVpbnQ2NAZkZXBsb3kAAwJpZAZ1aW50NjQDcmVmCWNhcmdvX3JlZgRzbG90DWNsdXN0ZXJfc2xvdD8JZGVwb3Rfcm93AAcCaWQGdWludDY0BW93bmVyBG5hbWUHaXRlbV9pZAZ1aW50NjQIcXVhbnRpdHkGdWludDY0BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdC3NlcXVlbmNlX2lkB3VpbnQ2ND8KZGVwb3RfdmlldwAECnBsYXllcl9jYXAGdWludDY0C3N0b3JlZF9tYXNzBnVpbnQ2NA1yZXNlcnZlZF9tYXNzBnVpbnQ2NARyb3dzC2RlcG90X3Jvd1tdDWRlcG90YWNjdF9yb3cAAwVvd25lcgRuYW1lC3N0b3JlZF9tYXNzBnVpbnQ2NA1yZXNlcnZlZF9tYXNzBnVpbnQ2NApkZXBvdHN0b3JlAAMHc2hpcF9pZAZ1aW50NjQIZGVwb3RfaWQGdWludDY0BWl0ZW1zDGNhcmdvX2l0ZW1bXQlkZXBvdHRha2UAAwdzaGlwX2lkBnVpbnQ2NAhkZXBvdF9pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdCmRlc2NlbnRpdHkABAdpdGVtX2lkBnVpbnQxNgpodWxsX3N0YXRzBnVpbnQ2NAxtb2R1bGVfaXRlbXMIdWludDE2W10MbW9kdWxlX3N0YXRzCHVpbnQ2NFtdBmVuYWJsZQABB2VuYWJsZWQEYm9vbAxlbmVyZ3lfc3RhdHMAAghjYXBhY2l0eQZ1aW50MzIIcmVjaGFyZ2UGdWludDMyFGVudGl0eV9jdXJyZW50X3N0YXRlAAILY29vcmRpbmF0ZXMLY29vcmRpbmF0ZXMGZW5lcmd5BnVpbnQzMg9lbnRpdHlfZGVmYXVsdHMAAgt3YXJlaG91c2VfegZ1aW50MTYLY29udGFpbmVyX3oGdWludDE2C2VudGl0eV9pbmZvABcEdHlwZQRuYW1lAmlkBnVpbnQ2NAVvd25lcgRuYW1lC2VudGl0eV9uYW1lBnN0cmluZwtjb29yZGluYXRlcwtjb29yZGluYXRlcwdpdGVtX2lkBnVpbnQxNgljYXJnb21hc3MGdWludDMyBWNhcmdvDGNhcmdvX3ZpZXdbXQdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdBmVuZXJneQd1aW50MzI/CGh1bGxtYXNzB3VpbnQzMj8IY2FwYWNpdHkHdWludDMyPwdlbmdpbmVzD21vdmVtZW50X3N0YXRzPwR3YXJwC3dhcnBfc3RhdHM/CWdlbmVyYXRvcg1lbmVyZ3lfc3RhdHM/BmhhdWxlcg1oYXVsZXJfc3RhdHM/DmdhdGhlcmVyX2xhbmVzD2dhdGhlcmVyX2xhbmVbXQ1jcmFmdGVyX2xhbmVzDmNyYWZ0ZXJfbGFuZVtdDWJ1aWxkZXJfbGFuZXMOYnVpbGRlcl9sYW5lW10MbG9hZGVyX2xhbmVzDWxvYWRlcl9sYW5lW10IbGF1bmNoZXIPbGF1bmNoZXJfc3RhdHM/BWxhbmVzBmxhbmVbXQVob2xkcwZob2xkW10NZW50aXR5X2xheW91dAADDmVudGl0eV9pdGVtX2lkBnVpbnQxNgVzbG90cwpzbG90X2RlZltdDWJhc2VfaHVsbG1hc3MGdWludDMyFWVudGl0eV9sYXlvdXRzX3Jlc3VsdAABCGVudGl0aWVzD2VudGl0eV9sYXlvdXRbXQplbnRpdHlfcmVmAAILZW50aXR5X3R5cGUEbmFtZQllbnRpdHlfaWQGdWludDY0CmVudGl0eV9yb3cADAJpZAZ1aW50NjQFb3duZXIEbmFtZQRraW5kBG5hbWUHaXRlbV9pZAZ1aW50MTYEbmFtZQZzdHJpbmcFc3RhdHMGdWludDY0C2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzBmVuZXJneQd1aW50MzI/CWNhcmdvbWFzcwZ1aW50MzIHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQVsYW5lcwZsYW5lW10FaG9sZHMGaG9sZFtdDmVudGl0eV9zZXFfcm93AAEHbmV4dF9pZAZ1aW50NjQOZW50aXR5X3N1bW1hcnkACAR0eXBlBG5hbWUCaWQGdWludDY0BW93bmVyBG5hbWULZW50aXR5X25hbWUGc3RyaW5nC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzB2lzX2lkbGUEYm9vbA5yZXNvbHZlZF9jb3VudAZ1aW50MzINcGVuZGluZ19jb3VudAZ1aW50MzIQZW50aXR5X3Rhc2tfaW5mbwAECWVudGl0eV9pZAZ1aW50NjQLZW50aXR5X3R5cGUEbmFtZQp0YXNrX2NvdW50BnVpbnQzMhBzY2hlZHVsZV9zdGFydGVkCnRpbWVfcG9pbnQPZW50aXR5Z3JvdXBfcm93AAICaWQGdWludDY0DHBhcnRpY2lwYW50cwxlbnRpdHlfcmVmW10LZW51bV9tZW1iZXIAAgV2YWx1ZQV1aW50OARuYW1lBnN0cmluZwtlbnVtX3Jlc3VsdAABB21lbWJlcnMNZW51bV9tZW1iZXJbXQllcG9jaF9yb3cABAVlcG9jaAZ1aW50NjQKb3JhY2xlX2lkcwZuYW1lW10JdGhyZXNob2xkBXVpbnQ4BHNlZWQLY2hlY2tzdW0yNTYMZml4Y2FyZ29tYXNzAAEJZW50aXR5X2lkBnVpbnQ2NApmaXhpdGVtaWRzAAAQZm9vdHByaW50X3Jlc3VsdAABBWNlbGxzC2dyaWRfY2VsbFtdC2ZvcmNlcmV2ZWFsAAEFZXBvY2gGdWludDY0BWZvdW5kAAQGcGxheWVyBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAF4BWludDY0AXkFaW50NjQLZ2FtZV9jb25maWcAAwd2ZXJzaW9uBnVpbnQzMghkZWZhdWx0cw9lbnRpdHlfZGVmYXVsdHMFaXRlbXMKaXRlbV9kZWZbXQZnYXRoZXIABQlzb3VyY2VfaWQGdWludDY0DmRlc3RpbmF0aW9uX2lkBnVpbnQ2NAdzdHJhdHVtBnVpbnQxNghxdWFudGl0eQZ1aW50MzIEc2xvdAZ1aW50OD8NZ2F0aGVyZXJfbGFuZQAFCnNsb3RfaW5kZXgFdWludDgFeWllbGQGdWludDE2BWRyYWluBnVpbnQzMgVkZXB0aAZ1aW50MTYKb3V0cHV0X3BjdAZ1aW50MTYKZ2F0aGVycGxhbgAGCXNvdXJjZV9pZAZ1aW50NjQOZGVzdGluYXRpb25faWQGdWludDY0B3N0cmF0dW0GdWludDE2CHF1YW50aXR5BnVpbnQzMghyZWNoYXJnZQRib29sBXNsb3RzBWJ5dGVzDGdlbmVzaXNmbGVldAABCGVudGl0aWVzDGVudGl0eV9yb3dbXQpnZXRjaGFydGVyAAIBeAVpbnQ2NAF5BWludDY0DGdldGNoYXJ0dHJlZQAADGdldGNocnRyZWFkeQAACmdldGNsdXN0ZXIAAQZodWJfaWQGdWludDY0CWdldGNvbmZpZwAACWdldGRlY29tcAABB2l0ZW1faWQGdWludDE2CWdldGRlbWFuZAACAXgFaW50NjQBeQVpbnQ2NApnZXRkZXBvc2l0AAIFb3duZXIEbmFtZQhhc3NldF9pZAZ1aW50NjQIZ2V0ZGVwb3QAAghkZXBvdF9pZAZ1aW50NjQFb3duZXIEbmFtZQtnZXRkaXN0YW5jZQAEAmF4BWludDY0AmF5BWludDY0AmJ4BWludDY0AmJ5BWludDY0C2dldGVsaWdpYmxlAAIGY29vcmRzC2Nvb3JkaW5hdGVzB3N0cmF0dW0GdWludDE2CWdldGVudGNscwAAC2dldGVudGl0aWVzAAIFb3duZXIEbmFtZQtlbnRpdHlfdHlwZQVuYW1lPwlnZXRlbnRpdHkAAQllbnRpdHlfaWQGdWludDY0DGdldGZvb3RwcmludAABB2l0ZW1faWQGdWludDE2C2dldGluZmRlY2F5AAIGYWN0aXZlBnVpbnQ2NAZlcG9jaHMGdWludDMyDGdldGluZmx1ZW5jZQADBW93bmVyBG5hbWUBeAVpbnQ2NAF5BWludDY0C2dldGluZnZhbHVlAAMFaXRlbXMMY2FyZ29faXRlbVtdAXgFaW50NjQBeQVpbnQ2NAtnZXRpdGVtZGF0YQAACmdldGl0ZW1pZHMAAAhnZXRpdGVtcwAAC2dldGl0ZW10eXBlAAEHaXRlbV9pZAZ1aW50MTYMZ2V0aXRlbXR5cGVzAAAHZ2V0am9icwABC3dvcmtzaG9wX2lkBnVpbnQ2NAtnZXRraW5kbWV0YQAAC2dldGxvY2F0aW9uAAIBeAVpbnQ2NAF5BWludDY0CmdldGxvY2RhdGEAAgF4BWludDY0AXkFaW50NjQKZ2V0bWludGNmZwAADGdldG1pbnRyZWFkeQAAC2dldG1vZHR5cGVzAAAKZ2V0bW9kdWxlcwAACWdldG5lYXJieQACCWVudGl0eV9pZAZ1aW50NjQIcmVjaGFyZ2UEYm9vbApnZXRuZnRiYXNlAAAKZ2V0bmZ0aW5mbwAACWdldHBsYXllcgABB2FjY291bnQEbmFtZQdnZXRwb29sAAIIY2F0ZWdvcnkFdWludDgEdGllcgV1aW50OAhnZXRwb29scwAADGdldHByb2pzdGF0ZQACCWVudGl0eV9pZAZ1aW50NjQKdGFza19jb3VudAZ1aW50OD8JZ2V0cmVjaXBlAAEOb3V0cHV0X2l0ZW1faWQGdWludDE2CmdldHJlY2lwZXMAAgtsb3dlcl9ib3VuZAZ1aW50MTYFbGltaXQFdWludDgKZ2V0cmVzY2F0cwAAC2dldHJlc2VydmVzAAIBeAVpbnQ2NAF5BWludDY0DGdldHJlc291cmNlcwAACmdldHNlcnZpY2UAAQt3b3Jrc2hvcF9pZAZ1aW50NjQIZ2V0c2xvdHMAAApnZXRzdHJhdHVtAAMBeAVpbnQ2NAF5BWludDY0B3N0cmF0dW0GdWludDE2DGdldHN1bW1hcmllcwACBW93bmVyBG5hbWULZW50aXR5X3R5cGUFbmFtZT8KZ2V0dXBnam9icwABB2RvY2tfaWQGdWludDY0DGdldHZvdGVyZWFkeQAACGdldHZvdGVzAAIBeAVpbnQ2NAF5BWludDY0C2dldHdvcm1ob2xlAAIBeAVpbnQ2NAF5BWludDY0CWdyaWRfY2VsbAACAmd4BGludDgCZ3kEaW50OAxncm91cHRyYW5zaXQABQhlbnRpdGllcwxlbnRpdHlfcmVmW10CYXgFaW50NjQCYXkFaW50NjQCYngFaW50NjQCYnkFaW50NjQLZ3JvdXB0cmF2ZWwABAhlbnRpdGllcwxlbnRpdHlfcmVmW10BeAVpbnQ2NAF5BWludDY0CHJlY2hhcmdlBGJvb2wEaGFzaAABBXZhbHVlBnN0cmluZwdoYXNoNTEyAAEFdmFsdWUGc3RyaW5nDGhhdWxlcl9zdGF0cwAECGNhcGFjaXR5BXVpbnQ4CmVmZmljaWVuY3kGdWludDE2BWRyYWluBnVpbnQzMhBjYXBhY2l0eV9ieV90aWVyEWhhdWxlcl90aWVyX2NhcFtdD2hhdWxlcl90aWVyX2NhcAACBHRpZXIFdWludDgIY2FwYWNpdHkFdWludDgEaG9sZAAFAmlkBnVpbnQ2NARraW5kBXVpbnQ4C2NvdW50ZXJwYXJ0CmVudGl0eV9yZWYFdW50aWwKdGltZV9wb2ludA1pbmNvbWluZ19tYXNzBnVpbnQzMgtpbXBvcnRjYXJnbwABA3JvdwljYXJnb19yb3cKaW1wb3J0Y2VsbAAEBHJvb3QGdWludDY0Amd4BGludDgCZ3kEaW50OAllbnRpdHlfaWQGdWludDY0DGltcG9ydGVudGl0eQABA3JvdwplbnRpdHlfcm93C2ltcG9ydGVwb2NoAAEDcm93CWVwb2NoX3JvdwtpbXBvcnRncm91cAABA3Jvdw9lbnRpdHlncm91cF9yb3cMaW1wb3J0bmZ0Y2ZnAAEDcm93DW5mdGNvbmZpZ19yb3cMaW1wb3J0cGxheWVyAAEFb3duZXIEbmFtZQ1pbXBvcnRyZXNlcnZlAAILZXBvY2hfc2NvcGUGdWludDMyA3JvdwtyZXNlcnZlX3JvdwtpbXBvcnRzdGF0ZQABA3JvdwlzdGF0ZV9yb3cNaW5mYmFsbG90X3JvdwACC2xvY2F0aW9uX2lkBnVpbnQ2NAVlcG9jaAZ1aW50MzILaW5mYnVybl9yb3cAAQNicHMGdWludDE2DWluZmRlbWFuZF9yb3cAAwRwZWFrBnVpbnQ2NARiYXNlBnVpbnQ2NAVmbG9vcgZ1aW50NjQKaW5mbG9jX3JvdwAJC2xvY2F0aW9uX2lkBnVpbnQ2NAhsaWZldGltZQZ1aW50NjQGYWN0aXZlBnVpbnQ2NBFsYXN0X3VwZGF0ZV9lcG9jaAZ1aW50MzIJd2F0ZXJtYXJrBnVpbnQ2NAZjaG9zZW4GdWludDMyDGNob3Nlbl9lcG9jaAZ1aW50MzIHZm91bmRlcgRuYW1lB2ZvdW5kZWQGdWludDMyEGluZmx1ZW5jZV90b3RhbHMACw9wbGF5ZXJfbGlmZXRpbWUGdWludDY0DXBsYXllcl9hY3RpdmUGdWludDY0EXN0YW5kaW5nX2xpZmV0aW1lBnVpbnQ2NA9zdGFuZGluZ19hY3RpdmUGdWludDY0EWxvY2F0aW9uX2xpZmV0aW1lBnVpbnQ2NA9sb2NhdGlvbl9hY3RpdmUGdWludDY0CXdhdGVybWFyawZ1aW50NjQHbWFuZGF0ZQZ1aW50MzIHZm91bmRlcgRuYW1lB2ZvdW5kZWQGdWludDMyBWVwb2NoBnVpbnQzMgtpbmZtaW50X3JvdwADCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgJdGhyZXNob2xkBnVpbnQ2NA1pbmZwbGF5ZXJfcm93AAQHYWNjb3VudARuYW1lCGxpZmV0aW1lBnVpbnQ2NAZhY3RpdmUGdWludDY0EWxhc3RfdXBkYXRlX2Vwb2NoBnVpbnQzMhBpbmZwbGF5ZXJsb2Nfcm93AAQLbG9jYXRpb25faWQGdWludDY0CGxpZmV0aW1lBnVpbnQ2NAZhY3RpdmUGdWludDY0EWxhc3RfdXBkYXRlX2Vwb2NoBnVpbnQzMgtpbmZwb29sX3JvdwAGCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgFZ3JhZGUFdWludDgIcXVhbnRpdHkGdWludDY0BXN0YXRzBnVpbnQ2NANiYXIGdWludDY0DmluZnF1YWxpdHlfcm93AAECZDEGdWludDMyDGluZnRhbGx5X3JvdwACB25vZGVfaWQGdWludDY0BXRvdGFsBnVpbnQ2NA9pbmZ2YWx1ZV9yZXN1bHQAAgx0b3RhbF9hdG9taWMGdWludDY0D3Blcl9pdGVtX2F0b21pYwh1aW50NjRbXQtpbmZ2b3RlX3JvdwAEB2FjY291bnQEbmFtZQVlcG9jaAZ1aW50MzIHbm9kZV9pZAZ1aW50MzIGd2VpZ2h0BnVpbnQ2NA1pbmZ3ZWlnaHRfcm93AAMIY2F0ZWdvcnkFdWludDgEdGllcgV1aW50OAl3ZWlnaHRfZnAGdWludDY0CGl0ZW1fZGVmAAUCaWQGdWludDE2BG1hc3MGdWludDMyBHR5cGUFdWludDgHc3VidHlwZQV1aW50OAR0aWVyBXVpbnQ4DGl0ZW1faWRfcGFpcgACAmlkBnVpbnQxNgRuYW1lBnN0cmluZw9pdGVtX2lkc19yZXN1bHQAAQVpdGVtcw5pdGVtX2lkX3BhaXJbXQ9pdGVtZGF0YV9yZXN1bHQAAgVpdGVtcwppdGVtX2RlZltdB3JlY2lwZXMOcmVjaXBlc19yZXN1bHQKaXRlbXNfaW5mbwABBWl0ZW1zCml0ZW1fZGVmW10Lam9iX3JlY2VpcHQAAwZqb2JfaWQGdWludDY0CXN0YXJ0c19hdAp0aW1lX3BvaW50DGNvbXBsZXRlc19hdAp0aW1lX3BvaW50B2pvYl9yb3cADAJpZAZ1aW50NjQId29ya3Nob3AGdWludDY0BnNvY2tldAV1aW50OAVvd25lcgRuYW1lB3NoaXBfaWQGdWludDY0BmNvb3Jkcwtjb29yZGluYXRlcwlzdGFydHNfYXQKdGltZV9wb2ludAxjb21wbGV0ZXNfYXQKdGltZV9wb2ludAlyZWNpcGVfaWQGdWludDE2CHF1YW50aXR5BnVpbnQzMgtlbmVyZ3lfcGFpZAZ1aW50MzIFY2FyZ28MY2FyZ29faXRlbVtdC2pvYnNfcmVzdWx0AAEEam9icwlqb2Jfcm93W10Eam9pbgABB2FjY291bnQEbmFtZRBraW5kX21ldGFfcmVzdWx0AAIFa2luZHMPa2luZF9tZXRhX3Jvd1tdCXRlbXBsYXRlcxN0ZW1wbGF0ZV9tZXRhX3Jvd1tdDWtpbmRfbWV0YV9yb3cABQRraW5kBG5hbWUOY2xhc3NpZmljYXRpb24FdWludDgQY2FwYWJpbGl0eV9mbGFncwV1aW50OAd6X2Nvb3JkBnVpbnQzMg1kZWZhdWx0X2xhYmVsBnN0cmluZwRsYW5lAAIIbGFuZV9rZXkFdWludDgIc2NoZWR1bGUIc2NoZWR1bGUGbGF1bmNoAAMLbGF1bmNoZXJfaWQGdWludDY0CmNhdGNoZXJfaWQGdWludDY0BWl0ZW1zDGNhcmdvX2l0ZW1bXQ5sYXVuY2hlcl9zdGF0cwADC2NoYXJnZV9yYXRlBnVpbnQxNgh2ZWxvY2l0eQZ1aW50MTYFZHJhaW4GdWludDE2BGxvYWQAAwJpZAZ1aW50NjQHZnJvbV9pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdC2xvYWRlcl9sYW5lAAQKc2xvdF9pbmRleAV1aW50OARtYXNzBnVpbnQzMgZ0aHJ1c3QGdWludDE2Cm91dHB1dF9wY3QGdWludDE2EGxvY2F0aW9uX2Rlcml2ZWQAAgxzdGF0aWNfcHJvcHMPbG9jYXRpb25fc3RhdGljBHNpemUGdWludDE2DWxvY2F0aW9uX2luZm8AAwZjb29yZHMLY29vcmRpbmF0ZXMJaXNfc3lzdGVtBGJvb2wLaXNfd29ybWhvbGUEYm9vbA9sb2NhdGlvbl9zdGF0aWMABQZjb29yZHMLY29vcmRpbmF0ZXMEdHlwZQ1sb2NhdGlvbl90eXBlB3N1YnR5cGUFdWludDgFc2VlZDAFdWludDgFc2VlZDEFdWludDgTbWludF90aHJlc2hvbGRfdmlldwADCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgJdGhyZXNob2xkBnVpbnQ2NA5taW50Y2ZnX3Jlc3VsdAACCnRocmVzaG9sZHMVbWludF90aHJlc2hvbGRfdmlld1tdCGJ1cm5fYnBzBnVpbnQxNgltaW50cV9yb3cAAgJpZAZ1aW50NjQFZ3JhZGUFdWludDgJbWludHJlYWR5AAEJbWF4X21pbnRzB3VpbnQzMj8MbW9kdWxlX2VudHJ5AAIEdHlwZQV1aW50OAlpbnN0YWxsZWQOcGFja2VkX21vZHVsZT8LbW9kdWxlX2luZm8ABAJpZAZ1aW50MTYEbWFzcwZ1aW50MzILbW9kdWxlX3R5cGUFdWludDgEdGllcgV1aW50OA5tb2R1bGVzX3Jlc3VsdAABB21vZHVsZXMNbW9kdWxlX2luZm9bXQ5tb3ZlbWVudF9zdGF0cwACBnRocnVzdAZ1aW50MzIFZHJhaW4GdWludDMyCG1vdmV0aWxlAAUGaHViX2lkBnVpbnQ2NAdmcm9tX2d4BGludDgHZnJvbV9neQRpbnQ4BXRvX2d4BGludDgFdG9fZ3kEaW50OApuYXR1cmFsaXplAAMGcGxheWVyBG5hbWUBeAVpbnQ2NAF5BWludDY0C25lYXJieV9pbmZvAAUKY2FuX3RyYXZlbARib29sB2N1cnJlbnQUZW50aXR5X2N1cnJlbnRfc3RhdGUJcHJvamVjdGVkFGVudGl0eV9jdXJyZW50X3N0YXRlCm1heF9lbmVyZ3kGdWludDMyB3N5c3RlbXMPbmVhcmJ5X3N5c3RlbVtdDW5lYXJieV9zeXN0ZW0ABAhkaXN0YW5jZQZ1aW50NjQLZW5lcmd5X2Nvc3QGdWludDY0C2ZsaWdodF90aW1lBnVpbnQzMghsb2NhdGlvbg1sb2NhdGlvbl9pbmZvDm5mdF9jYXJnb19pdGVtAAQHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0B21vZHVsZXMObW9kdWxlX2VudHJ5W10IcXVhbnRpdHkGdWludDMyEG5mdF9pdGVtX3BheWxvYWQAAgRpdGVtDm5mdF9jYXJnb19pdGVtCGxvY2F0aW9uDGNvb3JkaW5hdGVzPw5uZnRfc2NoZW1hX2RlZgACC3NjaGVtYV9uYW1lBG5hbWUGZmllbGRzDnNjaGVtYV9maWVsZFtdEG5mdF90ZW1wbGF0ZV9kZWYAAwdpdGVtX2lkBnVpbnQxNgtzY2hlbWFfbmFtZQRuYW1lC3RlbXBsYXRlX2lkBWludDMyDW5mdGNvbmZpZ19yb3cAAwdpdGVtX2lkBnVpbnQxNgt0ZW1wbGF0ZV9pZAVpbnQzMgtzY2hlbWFfbmFtZQRuYW1lCW5mdGltZ3VybAACBGl0ZW0KY2FyZ29faXRlbQhsb2NhdGlvbgxjb29yZGluYXRlcz8ObmZ0aW5mb19yZXN1bHQAAgdzY2hlbWFzEG5mdF9zY2hlbWFfZGVmW10JdGVtcGxhdGVzEm5mdF90ZW1wbGF0ZV9kZWZbXQZub3RpZnkAAQVldmVudAp0YXNrX2V2ZW50EW9yYWNsZV9jb25maWdfcm93AAEJdGhyZXNob2xkBXVpbnQ4Cm9yYWNsZV9yb3cAAQJpZARuYW1lDXBhY2tlZF9tb2R1bGUAAgdpdGVtX2lkBnVpbnQxNgVzdGF0cwZ1aW50NjQKcGxhY2VjYXJnbwADBW93bmVyBG5hbWUHaG9zdF9pZAZ1aW50NjQIYXNzZXRfaWQGdWludDY0C3BsYWNlZW50aXR5AAMFb3duZXIEbmFtZQhhc3NldF9pZAZ1aW50NjQPdGFyZ2V0X25leHVzX2lkBnVpbnQ2NAtwbGF5ZXJfaW5mbwADBW93bmVyBG5hbWUJaXNfcGxheWVyBGJvb2wMY29tcGFueV9uYW1lBnN0cmluZwpwbGF5ZXJfcm93AAEFb3duZXIEbmFtZRBwb29sX3BhaXJfcmVzdWx0AAkIY2F0ZWdvcnkFdWludDgEdGllcgV1aW50OAdpdGVtX2lkBnVpbnQxNhFzdGFuZGFyZF9xdWFudGl0eQZ1aW50NjQOc3RhbmRhcmRfc3RhdHMGdWludDY0EHByZW1pdW1fcXVhbnRpdHkGdWludDY0DXByZW1pdW1fc3RhdHMGdWludDY0A2JhcgZ1aW50NjQJdGhyZXNob2xkBnVpbnQ2NAlwb29sX3ZpZXcABwhjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4BWdyYWRlBXVpbnQ4B2l0ZW1faWQGdWludDE2CHF1YW50aXR5BnVpbnQ2NAVzdGF0cwZ1aW50NjQDYmFyBnVpbnQ2NAxwb29sc19yZXN1bHQAAQVwb29scwtwb29sX3ZpZXdbXQ9wcm9qZWN0ZWRfc3RhdGUAEQVvd25lcgRuYW1lC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzBmVuZXJneQd1aW50MzI/CWNhcmdvbWFzcwZ1aW50MzIFY2FyZ28MY2FyZ29fdmlld1tdCGh1bGxtYXNzB3VpbnQzMj8IY2FwYWNpdHkHdWludDMyPwdlbmdpbmVzD21vdmVtZW50X3N0YXRzPwR3YXJwC3dhcnBfc3RhdHM/CWdlbmVyYXRvcg1lbmVyZ3lfc3RhdHM/BmhhdWxlcg1oYXVsZXJfc3RhdHM/DmdhdGhlcmVyX2xhbmVzD2dhdGhlcmVyX2xhbmVbXQ1jcmFmdGVyX2xhbmVzDmNyYWZ0ZXJfbGFuZVtdDWJ1aWxkZXJfbGFuZXMOYnVpbGRlcl9sYW5lW10MbG9hZGVyX2xhbmVzDWxvYWRlcl9sYW5lW10IbGF1bmNoZXIPbGF1bmNoZXJfc3RhdHM/BHRpZXIFdWludDgIcmVjaGFyZ2UAAQJpZAZ1aW50NjQMcmVjaXBlX2lucHV0AAIHaXRlbV9pZAZ1aW50MTYIcXVhbnRpdHkGdWludDMyEHJlY2lwZV9pdGVtX2luZm8AAgJpZAZ1aW50MTYEbWFzcwZ1aW50MzIPcmVjaXBlX3Jlc3BvbnNlAAgOb3V0cHV0X2l0ZW1faWQGdWludDE2C291dHB1dF9tYXNzBnVpbnQzMgZpbnB1dHMOcmVjaXBlX2lucHV0W10Kc3RhdF9zbG90cxRzdGF0X3Nsb3RfcmVzcG9uc2VbXQ1ibGVuZF93ZWlnaHRzBWJ5dGVzC291dHB1dF9pdGVtEHJlY2lwZV9pdGVtX2luZm8LaW5wdXRfaXRlbXMScmVjaXBlX2l0ZW1faW5mb1tdD3NvdXJjZV9zdWJjbGFzcwd1aW50MTY/DnJlY2lwZXNfcmVzdWx0AAEHcmVjaXBlcxFyZWNpcGVfcmVzcG9uc2VbXQhyZWZpdF9vcAACAm9wBXVpbnQ4BHNsb3QFdWludDgMcmVmcnNoZW50aXR5AAEJZW50aXR5X2lkBnVpbnQ2NAxyZW1vdmVvcmFjbGUAAQlvcmFjbGVfaWQEbmFtZQZyZW5hbWUAAgJpZAZ1aW50NjQEbmFtZQZzdHJpbmcLcmVzZXJ2ZV9yb3cABQJpZAZ1aW50NjQIY29vcmRfaWQGdWludDY0B3N0cmF0dW0GdWludDE2CXJlbWFpbmluZwZ1aW50MzIKbGFzdF9ibG9jaxRibG9ja190aW1lc3RhbXBfdHlwZQdyZXNvbHZlAAICaWQGdWludDY0BWNvdW50B3VpbnQ2ND8PcmVzb2x2ZV9yZXN1bHRzAAYJZW50aXR5X2lkBnVpbnQ2NAtlbnRpdHlfdHlwZQRuYW1lDnJlc29sdmVkX2NvdW50BnVpbnQzMhRuZXdfc2NoZWR1bGVfc3RhcnRlZAt0aW1lX3BvaW50PwtlbnRpdHlncm91cAd1aW50NjQ/DWdyb3VwX21lbWJlcnMWQl92ZWN0b3JfZW50aXR5X3JlZl9FPwpyZXNvbHZlYWxsAAEFb3duZXIEbmFtZRJyZXNvbHZlYWxsX3Jlc3VsdHMAAgdzY2FubmVkBnVpbnQzMghyZXNvbHZlZAZ1aW50MzIMcmVzb2x2ZWVhcmx5AAICaWQGdWludDY0BWNvdW50B3VpbnQ2ND8NcmVzb3VyY2VfaW5mbwAEAmlkBnVpbnQxNgRtYXNzBnVpbnQzMghjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4DnJlc291cmNlX3N0YXRzAAMFc3RhdDEGdWludDE2BXN0YXQyBnVpbnQxNgVzdGF0MwZ1aW50MTYQcmVzb3VyY2VzX3Jlc3VsdAABCXJlc291cmNlcw9yZXNvdXJjZV9pbmZvW10GcmV2ZWFsAAMJb3JhY2xlX2lkBG5hbWUFZXBvY2gGdWludDY0BnJldmVhbAtjaGVja3N1bTI1NgpyZXZlYWxfcm93AAQCaWQGdWludDY0BWVwb2NoBnVpbnQ2NAlvcmFjbGVfaWQEbmFtZQZyZXZlYWwLY2hlY2tzdW0yNTYIcm1tb2R1bGUAAwllbnRpdHlfaWQGdWludDY0DG1vZHVsZV9pbmRleAV1aW50OAp0YXJnZXRfcmVmCmNhcmdvX3JlZj8Icm1uZnRjZmcAAQdpdGVtX2lkBnVpbnQxNg5yb3V0ZV93YXlwb2ludAACAXgFaW50NjQBeQVpbnQ2NAhzY2hlZHVsZQACB3N0YXJ0ZWQKdGltZV9wb2ludAV0YXNrcwZ0YXNrW10Mc2NoZW1hX2ZpZWxkAAIEbmFtZQZzdHJpbmcKZmllbGRfdHlwZQZzdHJpbmcLc2VydmljZV9yb3cAAgZlbnRpdHkGdWludDY0B3NvY2tldHMQc2VydmljZV9zb2NrZXRbXQ5zZXJ2aWNlX3NvY2tldAABBG9wZW4EYm9vbAhzZXRjaXZpYwABB2FjY291bnQEbmFtZQpzZXRjbHVzdGVyAAEDcm93C2NsdXN0ZXJfcm93CXNldGNvb3JkcwADCWVudGl0eV9pZAZ1aW50NjQBeAVpbnQ2NAF5BWludDY0CnNldGluZmJ1cm4AAQNicHMGdWludDE2CHNldGluZmQxAAECZDEGdWludDMyDHNldGluZmRlbWFuZAADBHBlYWsGdWludDY0BGJhc2UGdWludDY0BWZsb29yBnVpbnQ2NApzZXRpbmZtaW50AAMIY2F0ZWdvcnkFdWludDgEdGllcgV1aW50OAl0aHJlc2hvbGQGdWludDY0DHNldGluZndlaWdodAADCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgJd2VpZ2h0X2ZwBnVpbnQ2NAlzZXRuZXh0aWQAAQduZXh0X2lkBnVpbnQ2NAlzZXRuZnRjZmcAAwdpdGVtX2lkBnVpbnQxNgt0ZW1wbGF0ZV9pZAVpbnQzMgtzY2hlbWFfbmFtZQRuYW1lCXNldHNvY2tldAADC3dvcmtzaG9wX2lkBnVpbnQ2NARzbG90BXVpbnQ4BG9wZW4EYm9vbAxzZXR0aHJlc2hvbGQAAQl0aHJlc2hvbGQFdWludDgLc2V0d3JhcGNvc3QAAwlpdGVtX3R5cGUFdWludDgEdGllcgV1aW50OAZhbW91bnQGdWludDY0CnNldHdyYXBmZWUAAgdmZWVfcGN0BnVpbnQxNgtmZWVfYWNjb3VudARuYW1lB3NodXR0bGUABAdjYXJyaWVyBnVpbnQ2NAdmcm9tX2lkBnVpbnQ2NAV0b19pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdCHNsb3RfZGVmAAMEdHlwZQV1aW50OApvdXRwdXRfcGN0BnVpbnQxNghtYXhfdGllcgV1aW50OBJzdGF0X3Nsb3RfcmVzcG9uc2UAAQdzb3VyY2VzDXN0YXRfc291cmNlW10Lc3RhdF9zb3VyY2UAAgtpbnB1dF9pbmRleAV1aW50OBBpbnB1dF9zdGF0X2luZGV4BXVpbnQ4CXN0YXRlX3JvdwADB2VuYWJsZWQEYm9vbAVlcG9jaAZ1aW50MzIEc2VlZAtjaGVja3N1bTI1NglzdG93Y2FyZ28ABQVvd25lcgRuYW1lCWVudGl0eV9pZAZ1aW50NjQIbmV4dXNfaWQGdWludDY0CGNhcmdvX2lkBnVpbnQ2NAhxdWFudGl0eQZ1aW50NjQKc3Rvd2VudGl0eQADBW93bmVyBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAhuZXh1c19pZAZ1aW50NjQMc3RyYXR1bV9kYXRhAAIHc3RyYXR1bQxzdHJhdHVtX2luZm8Fc3RhdHMOcmVzb3VyY2Vfc3RhdHMMc3RyYXR1bV9pbmZvAAUHaXRlbV9pZAZ1aW50MTYEc2VlZAZ1aW50NjQIcmljaG5lc3MGdWludDE2B3Jlc2VydmUGdWludDMyC3Jlc2VydmVfbWF4BnVpbnQzMhFzdHJhdHVtX3JlbWFpbmluZwADB3N0cmF0dW0GdWludDE2CXJlbWFpbmluZwZ1aW50MzIKbGFzdF9ibG9jaxRibG9ja190aW1lc3RhbXBfdHlwZQpzd2FwbW9kdWxlAAMJZW50aXR5X2lkBnVpbnQ2NAxtb2R1bGVfaW5kZXgFdWludDgKbW9kdWxlX3JlZgljYXJnb19yZWYIc3dhcHRpbGUABQZodWJfaWQGdWludDY0BGFfZ3gEaW50OARhX2d5BGludDgEYl9neARpbnQ4BGJfZ3kEaW50OAR0YXNrAAsEdHlwZQV1aW50OAhkdXJhdGlvbgZ1aW50MzIKY2FuY2VsYWJsZQV1aW50OAtjb29yZGluYXRlcwxjb29yZGluYXRlcz8FY2FyZ28MY2FyZ29faXRlbVtdCWNvdXBsaW5ncwpjb3VwbGluZ1tdB3N1YmplY3QLZW50aXR5X3JlZj8LZW50aXR5Z3JvdXAHdWludDY0PwtlbmVyZ3lfY29zdAd1aW50MzI/DnRhcmdldF9pdGVtX2lkB3VpbnQxNj8FcmVmaXQJcmVmaXRfb3A/CnRhc2tfZXZlbnQACgpldmVudF90eXBlBXVpbnQ4BW93bmVyBG5hbWULZW50aXR5X3R5cGUEbmFtZQllbnRpdHlfaWQGdWludDY0CnRhc2tfaW5kZXgGdWludDMyBHRhc2sEdGFzawlzdGFydHNfYXQKdGltZV9wb2ludAxjb21wbGV0ZXNfYXQKdGltZV9wb2ludApuZXdfZW5lcmd5B3VpbnQzMj8IbGFuZV9rZXkFdWludDgMdGFza19yZXN1bHRzAAEIZW50aXRpZXMSZW50aXR5X3Rhc2tfaW5mb1tdEXRlbXBsYXRlX21ldGFfcm93AAMHaXRlbV9pZAZ1aW50MTYEa2luZARuYW1lDWRpc3BsYXlfbGFiZWwGc3RyaW5nB3RyYW5zaXQABQJpZAZ1aW50NjQCYXgFaW50NjQCYXkFaW50NjQCYngFaW50NjQCYnkFaW50NjQGdHJhdmVsAAQCaWQGdWludDY0AXgFaW50NjQBeQVpbnQ2NAhyZWNoYXJnZQRib29sCnRyYXZlbHBsYW4AAwhlbnRpdGllcwxlbnRpdHlfcmVmW10Jd2F5cG9pbnRzEHJvdXRlX3dheXBvaW50W10IcmVjaGFyZ2UEYm9vbAl0eXBlc19yb3cAEAJpZAZ1aW50NjQTZW50aXR5X3N1bW1hcnlfdHlwZQ5lbnRpdHlfc3VtbWFyeRBnYW1lX2NvbmZpZ190eXBlC2dhbWVfY29uZmlnFnN0cmF0dW1fcmVtYWluaW5nX3R5cGURc3RyYXR1bV9yZW1haW5pbmcVbmZ0X2l0ZW1fcGF5bG9hZF90eXBlEG5mdF9pdGVtX3BheWxvYWQSZGVjb21wX3Jlc3VsdF90eXBlDWRlY29tcF9yZXN1bHQSZGVtYW5kX3Jlc3VsdF90eXBlDWRlbWFuZF9yZXN1bHQUaW5mdmFsdWVfcmVzdWx0X3R5cGUPaW5mdmFsdWVfcmVzdWx0FWluZmx1ZW5jZV90b3RhbHNfdHlwZRBpbmZsdWVuY2VfdG90YWxzEXBvb2xzX3Jlc3VsdF90eXBlDHBvb2xzX3Jlc3VsdBVwb29sX3BhaXJfcmVzdWx0X3R5cGUQcG9vbF9wYWlyX3Jlc3VsdBNtaW50Y2ZnX3Jlc3VsdF90eXBlDm1pbnRjZmdfcmVzdWx0E2NoYXJ0ZXJfcmVzdWx0X3R5cGUOY2hhcnRlcl9yZXN1bHQYY2hhcnRlcnJlYWR5X3Jlc3VsdF90eXBlE2NoYXJ0ZXJyZWFkeV9yZXN1bHQQdm90ZV9yZXN1bHRfdHlwZQt2b3RlX3Jlc3VsdA9kZXBvdF92aWV3X3R5cGUKZGVwb3Rfdmlldwh1bmRlcGxveQACB2hvc3RfaWQGdWludDY0CXRhcmdldF9pZAZ1aW50NjQGdW5sb2FkAAMCaWQGdWludDY0BXRvX2lkBnVpbnQ2NAVpdGVtcwxjYXJnb19pdGVtW10KdXBnam9iX3JvdwAJAmlkBnVpbnQ2NARkb2NrBnVpbnQ2NAZ0YXJnZXQGdWludDY0BW93bmVyBG5hbWUGY29vcmRzC2Nvb3JkaW5hdGVzCXN0YXJ0c19hdAp0aW1lX3BvaW50DGNvbXBsZXRlc19hdAp0aW1lX3BvaW50DnRhcmdldF9pdGVtX2lkBnVpbnQxNgVjYXJnbwxjYXJnb19pdGVtW10OdXBnam9ic19yZXN1bHQAAQRqb2JzDHVwZ2pvYl9yb3dbXQd1cGdyYWRlAAUKYnVpbGRlcl9pZAZ1aW50NjQJdGFyZ2V0X2lkBnVpbnQ2NA50YXJnZXRfaXRlbV9pZAZ1aW50MTYGaW5wdXRzDGNhcmdvX2l0ZW1bXQRzbG90BnVpbnQ4Pwp1cGdyYWRlam9iAAQJdGFyZ2V0X2lkBnVpbnQ2NAdkb2NrX2lkBnVpbnQ2NA50YXJnZXRfaXRlbV9pZAZ1aW50MTYGaW5wdXRzDGNhcmdvX2l0ZW1bXQt2b3RlX29wdGlvbgAEB25vZGVfaWQGdWludDMyBGNvc3QGdWludDY0BXRvdGFsBnVpbnQ2NAhlbGlnaWJsZQRib29sC3ZvdGVfcmVzdWx0AAcLbG9jYXRpb25faWQGdWludDY0BWVwb2NoBnVpbnQzMgxiYWxsb3RfZXBvY2gGdWludDMyBmNob3NlbgZ1aW50MzIMY2hvc2VuX2Vwb2NoBnVpbnQzMgllZmZlY3RpdmUGdWludDMyB29wdGlvbnMNdm90ZV9vcHRpb25bXQt2b3RlY2hhcnRlcgAEBnBsYXllcgRuYW1lAXgFaW50NjQBeQVpbnQ2NAdub2RlX2lkBnVpbnQzMgl2b3RlcmVhZHkAAQttYXhfYmFsbG90cwZ1aW50MzIEd2FycAADAmlkBnVpbnQ2NAF4BWludDY0AXkFaW50NjQKd2FycF9zdGF0cwABBXJhbmdlBnVpbnQzMgR3aXBlAAANd29ybWhvbGVfaW5mbwADBmNvb3Jkcwtjb29yZGluYXRlcwtpc193b3JtaG9sZQRib29sC2Rlc3RpbmF0aW9uC2Nvb3JkaW5hdGVzDndyYXBjb25maWdfcm93AAIHZmVlX3BjdAZ1aW50MTYLZmVlX2FjY291bnQEbmFtZQx3cmFwY29zdF9yb3cAAwlpdGVtX3R5cGUFdWludDgEdGllcgV1aW50OAZhbW91bnQGdWludDY0mAEAMo110jTNMQthYmFuZG9ucGxvdAAAwHE3T4pSMgphZGRjb250cmliAAAAUFEnKlMyCWFkZG1vZHVsZccDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGFkZG1vZHVsZQpzdW1tYXJ5OiAnSW5zdGFsbCBhIG1vZHVsZSBpbnRvIGEgc2xvdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW5zdGFsbCBhIG1vZHVsZSBmcm9tIGNhcmdvIGludG8gYSBtb2R1bGUgc2xvdCBvbiBhIGxpdmUgZW50aXR5IG9yIGEgcGFja2VkIGVudGl0eSBpbiBjYXJnby4gVGhlIGVudGl0eSBtdXN0IGJlIGlkbGUgd2l0aCBubyBzY2hlZHVsZWQgdGFza3MuIFRoZSBtb2R1bGUgdHlwZSBtdXN0IGJlIGNvbXBhdGlibGUgd2l0aCB0aGUgdGFyZ2V0IHNsb3QgdHlwZS4gVGhlIG1vZHVsZSBpdGVtIGlzIHJlbW92ZWQgZnJvbSBjYXJnbyB1cG9uIGluc3RhbGxhdGlvbi4AAABYdzVTMghhZGRuZXh1c6cDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGFkZG5leHVzCnN1bW1hcnk6ICdBZGQgYSBuZXh1cyBsb2NhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ3JlYXRlIGEgbmV3IG5leHVzIGVudGl0eSBhdCB0aGUgZ2l2ZW4gY29vcmRpbmF0ZXMuIE5leHVzZXMgYXJlIG93bmVkIGJ5IHRoZSBjb250cmFjdCBhbmQgc2VydmUgYXMgZml4ZWQgZ2F0aGVyaW5nIHBvaW50cyB3aGVyZSBwbGF5ZXJzIGNhbiB3cmFwLCB1bndyYXAsIGRlcGxveSwgYW5kIG90aGVyd2lzZSBpbnRlcmFjdCB3aXRoIE5GVC1iYWNrZWQgYXNzZXRzLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAABQEZlLUzIJYWRkb3JhY2xlAAAAAACANFU8BWJsZW5k/AItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogYmxlbmQKc3VtbWFyeTogJ0JsZW5kIGNhcmdvIHN0YWNrcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ29tYmluZSBtdWx0aXBsZSBjYXJnbyBzdGFja3Mgb2YgdGhlIHNhbWUgaXRlbSB0eXBlIGludG8gYSBzaW5nbGUgc3RhY2sgd2l0aCBuZXcgYmxlbmRlZCBzdGF0cy4gQWxsIGlucHV0IHN0YWNrcyBtdXN0IHNoYXJlIHRoZSBzYW1lIGl0ZW0gaWQuIFRoZSBvdXRwdXQgc3RhY2sgaGFzIHRoZSBjb21iaW5lZCBxdWFudGl0eSBvZiBhbGwgaW5wdXRzLgAAyDTWFJ0+CWJ1aWxkcGxvdAAAAAAARIWmQQZjYW5jZWzCAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjYW5jZWwKc3VtbWFyeTogJ0NhbmNlbCBzY2hlZHVsZWQgdGFza3MnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkNhbmNlbCB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiB0YXNrcyBmcm9tIHRoZSBlbmQgb2YgYW4gZW50aXR5J3Mgc2NoZWR1bGUuIFRhc2tzIHRoYXQgYXJlIGltbXV0YWJsZSBhbmQgaW4gcHJvZ3Jlc3MgY2Fubm90IGJlIGNhbmNlbGxlZC4AADj0RYWmQQljYW5jZWxqb2IAmsxlVUeFpkENY2FuY2VsdXBncmFkZQDgk1H3qnxNQwxjaGFydGVycmVhZHkAAAAAhz7pTEQIY2xhaW1qb2IAAADINFbpTEQJY2xhaW1wbG90AHBVviZj6UxEDGNsYWltc3RhcnRlcgCgkrmsaulMRAxjbGFpbXVwZ3JhZGUAAACoG99pVEQJY2xlYW5yc3Zw7AItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY2xlYW5yc3ZwCnN1bW1hcnk6ICdDbGVhbiB1cCBwYXN0IGVwb2NoIHJlc2VydmVzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpFcmFzZSByZXNlcnZlIHRhYmxlIHJvd3MgZnJvbSBhIHBhc3QgZXBvY2guIENhbm5vdCBjbGVhbiB0aGUgY3VycmVudCBvciBmdXR1cmUgZXBvY2hzLiBUaGUgbWF4X3Jvd3MgcGFyYW1ldGVyIGNhcHMgdGhlIG51bWJlciBvZiByb3dzIGVyYXNlZCBwZXIgY2FsbCB0byBsaW1pdCBDUFUgdXNhZ2UuAICKx+RrVEQKY2xlYXJ0YWJsZb4BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNsZWFydGFibGUKc3VtbWFyeTogJ0RFQlVHOiBjbGVhcnRhYmxlIGFjdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLZCXueiqjHVEDGNsdXN0ZXJjcmFmdAAAAAAAZCclRQZjb21taXTsAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjb21taXQKc3VtbWFyeTogJ1NldCBjb21taXQgdmFsdWUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClNldCB0aGUgaW5pdGlhbCBjb21taXQgdmFsdWUgZHVyaW5nIGdhbWUgaW5pdGlhbGl6YXRpb24uAABgNDK3JkUJY29uZmlnbG9n3QItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY29uZmlnbG9nCnN1bW1hcnk6ICdMb2cgZ2FtZSBjb25maWd1cmF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gdGhhdCBsb2dzIHRoZSBjdXJyZW50IGdhbWUgY29uZmlndXJhdGlvbi4gQ2FsbGVkIGlubGluZSBhZnRlciBpbml0aWFsaXphdGlvbiB0byBicm9hZGNhc3QgY29uZmlnIHZpYSBhY3Rpb24gdHJhY2VzLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAAAAAIC8zEUFY3JhZnTIAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjcmFmdApzdW1tYXJ5OiAnQ3JhZnQgaXRlbXMgZnJvbSBhIHJlY2lwZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVHJhbnNmb3JtIGNhcmdvIGl0ZW1zIGludG8gYSBuZXcgaXRlbSB1c2luZyBhIHJlY2lwZS4gVGhlIGVudGl0eSBtdXN0IGhhdmUgYSBjcmFmdGVyIG1vZHVsZSBpbnN0YWxsZWQuIENvbnN1bWVzIGVuZXJneSBhbmQgc2NoZWR1bGVzIGEgY3JhZnRpbmcgdGFzayB3aXRoIGR1cmF0aW9uIGJhc2VkIG9uIHRvdGFsIGlucHV0IG1hc3MgYW5kIGNyYWZ0ZXIgc3BlZWQuIElucHV0IHF1YW50aXRpZXMgbXVzdCBleGFjdGx5IG1hdGNoIHRoZSByZWNpcGUgcmVxdWlyZW1lbnRzLgAAAIe+vMxFCGNyYWZ0am9iAAAAyC6pi9hJCWRiZ2NyZWRpdAAAgMomTSPZSQpkYmdtYW5kYXRlAAAA8NnlqaJKCWRlbGVudGl0eQAAAAANu0ilSghkZW1vbGlzaPEDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGRlbW9saXNoCnN1bW1hcnk6ICdEZW1vbGlzaCBhIHN0YXRpb25hcnkgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpEZWNvbW1pc3Npb24gYW4gZW50aXR5LCBlcmFzaW5nIGl0IGZyb20gdGhlIGdhbWUuIFRoZSBlbnRpdHkgbXVzdCBiZSBpZGxlLCBoYXZlIGVtcHR5IGNhcmdvLCBhbmQgaGF2ZSBubyBpbnN0YWxsZWQgbW9kdWxlcyAocmVtb3ZlIGVhY2ggdmlhIHJtbW9kdWxlIGZpcnN0KS4gU2NoZWR1bGVzIGEgZGVtb2xpc2ggdGFzayB0aGF0IGVyYXNlcyB0aGUgZW50aXR5IG9uIHJlc29sdXRpb24uIE9ubHkgdmFsaWQgZm9yIGVudGl0aWVzIHRoYXQgY2Fubm90IG1vdmU7IHVzZSB1bmRlcGxveSBvciB3cmFwZW50aXR5IGZvciB0aGUgcmVzdC4AAAAAeBqrSgZkZXBsb3nsAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBkZXBsb3kKc3VtbWFyeTogJ0RlcGxveSBhIHBhY2tlZCBlbnRpdHknCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClVucGFjayBhIHBhY2tlZCBlbnRpdHkgaXRlbSAocGFja2VkIHNoaXAgb3IgcGFja2VkIGNvbnRhaW5lcikgZnJvbSBjYXJnbywgc2NoZWR1bGluZyBhIGRlcGxveSB0YXNrIHRoYXQgY3JlYXRlcyB0aGUgbmV3IGVudGl0eSBhdCB0aGUgZGVwbG95aW5nIGVudGl0eSdzIGxvY2F0aW9uIHVwb24gcmVzb2x1dGlvbi4AgLo040yrSgpkZXBvdHN0b3JlAAAAUNDkTKtKCWRlcG90dGFrZQAAgM8uT4WwSgpkZXNjZW50aXR5yQMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZGVzY2VudGl0eQpzdW1tYXJ5OiAnRGVzY3JpYmUgYSBwYWNrZWQgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyBhIGh1bWFuLXJlYWRhYmxlIGRlc2NyaXB0aW9uIHN0cmluZyBmb3IgYSBwYWNrZWQgZW50aXR5LCBkZXJpdmVkIGZyb20gdGhlIGVudGl0eSBpdGVtIGlkLCBodWxsIHN0YXRzLCBhbmQgdGhlIGxpc3Qgb2YgaW5zdGFsbGVkIG1vZHVsZSBpdGVtIGlkcyBhbmQgc3RhdHMuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgYW5kIE5GVCByZW5kZXJlcnMgdG8gZGlzcGxheSBwYWNrZWQgZW50aXRpZXMuAAAAAKh4zFQGZW5hYmxl3QEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZW5hYmxlCnN1bW1hcnk6ICdTZXQgZW5hYmxlZCBzdGF0ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRW5hYmxlIG9yIGRpc2FibGUgdGhpcyBnYW1lIG9mIFNoaXBsb2FkLoCxkZRdg7pbDGZpeGNhcmdvbWFzc5ADLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGZpeGNhcmdvbWFzcwpzdW1tYXJ5OiAnREVCVUc6IHJlY29tcHV0ZSBlbnRpdHkgY2FyZ28gbWFzcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmVjb21wdXRlIGFuZCByZXdyaXRlIGFuIGVudGl0eSdzIGNhcmdvIG1hc3MgZnJvbSBpdHMgY3VycmVudCBjYXJnby4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LiBBdmFpbGFibGUgZm9yIHJlcGFpcmluZyBkcmlmdCBiZXR3ZWVuIGNhY2hlZCBjYXJnbyBtYXNzIGFuZCB0aGUgdHJ1ZSBtYXNzIGRlcml2ZWQgZnJvbSBjYXJnbyByb3dzLgAATk6q7LpbCmZpeGl0ZW1pZHMAAKJRW12FLl0LZm9yY2VyZXZlYWy+BC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBmb3JjZXJldmVhbApzdW1tYXJ5OiAnREVCVUc6IGZvcmNlLWZpbmFsaXplIGFuIGVwb2NoIGZyb20gZXhpc3RpbmcgcmV2ZWFscycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRmluYWxpemUgYSBzdHVjayBlcG9jaCBieSBjb21wdXRpbmcgaXRzIHNlZWQgZnJvbSB0aGUgcmV2ZWFscyBhbHJlYWR5IHN1Ym1pdHRlZCwgd2l0aG91dCB3YWl0aW5nIGZvciB0aGUgY29uZmlndXJlZCB0aHJlc2hvbGQuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4gVGhlIHNlZWQgaXMgZGVyaXZlZCBzb2xlbHkgZnJvbSB0aGUgcHJlLWltYWdlLWxvY2tlZCByZXZlYWxzIGFscmVhZHkgb24gY2hhaW47IG5vIGFkbWluLXN1cHBsaWVkIGVudHJvcHkgaXMgaW50cm9kdWNlZC4gVXNlZCB0byB1bmJsb2NrIGVwb2NoIHByb2dyZXNzaW9uIHdoZW4gdGhlIHRocmVzaG9sZCBjYW5ub3Qgb3RoZXJ3aXNlIGJlIG1ldC4AAAAAgDQ1XQVmb3VuZAAAAAAAXNWyYQZnYXRoZXKXAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnYXRoZXIKc3VtbWFyeTogJ0dhdGhlciByZXNvdXJjZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkdhdGhlciByZXNvdXJjZXMgYXQgdGhlIHNoaXAncyBjdXJyZW50IGxvY2F0aW9uLiBPbmx5IHdvcmtzIGF0IGdhdGhlcmFibGUgbG9jYXRpb24gdHlwZXMuIFNjaGVkdWxlcyBhIGdhdGhlciB0YXNrIHRoYXQgY29uc3VtZXMgZW5lcmd5IGFuZCB5aWVsZHMgY2FyZ28gYmFzZWQgb24gdGhlIHNoaXAncyBnYXRoZXJlciBzdGF0cyBhbmQgdGhlIGxvY2F0aW9uJ3MgcmVzb3VyY2UgY29tcG9zaXRpb24uAMA0sV7VsmEKZ2F0aGVycGxhbgCQlYoLO6ymYgxnZW5lc2lzZmxlZXSpBC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZW5lc2lzZmxlZXQKc3VtbWFyeTogJ01pbnQgdGhlIG9uZS10aW1lIGdlbmVzaXMgZmxlZXQnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkVtcGxhY2UgdGhlIG9uZS10aW1lIGdlbmVzaXMgZmxlZXQ6IGEgY2FsbGVyLXN1cHBsaWVkIHNldCBvZiBlbnRpdGllcyAoc2hpcHMsIHN0cnVjdHVyZXMsIGFuZCBjb250YWluZXJzKSB3cml0dGVuIHRvIHRoZSB3b3JsZCBhcy1pcy4gVmFsaWQgb25seSBkdXJpbmcgdGhlIHByZS1nZW5lc2lzIHdpbmRvdywgYmVmb3JlIGVwb2NoIDEgaXMgZmluYWxpemVkLiBUaGUgc3VwcGxpZWQgZW50aXR5IGlkcyBhcmUgaG9ub3JlZCBhbmQgdGhlIGlkIHNlcXVlbmNlIGlzIGFkdmFuY2VkIHBhc3QgdGhlbTsgaWQgMCBpcyByZXNlcnZlZCBmb3IgdGhlIEdlbmVzaXMgTmV4dXMuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AwFX5moayYgpnZXRjaGFydGVyAKDUzfmahrJiDGdldGNoYXJ0dHJlZQDgk1E334ayYgxnZXRjaHJ0cmVhZHkAAMBVGeuIsmIKZ2V0Y2x1c3RlcgAAAGBuTYqyYglnZXRjb25maWfKAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRjb25maWcKc3VtbWFyeTogJ0dldCBnYW1lIGNvbmZpZ3VyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgdGhlIGdhbWUgY29uZmlndXJhdGlvbiBpbmNsdWRpbmcgZGVmYXVsdCBlbnRpdHkgc3RhdHMgZm9yIHdhcmVob3VzZXMgYW5kIGNvbnRhaW5lcnMsIGFuZCB0aGUgZnVsbCBpdGVtIGRlZmluaXRpb25zIHRhYmxlLgAAqJIilbJiCWdldGRlY29tcAAAAEjTSJWyYglnZXRkZW1hbmQAAEB2mFaVsmIKZ2V0ZGVwb3NpdAAAAACZVpWyYghnZXRkZXBvdAAAFJomY5eyYgtnZXRkaXN0YW5jZQAAVDyOuaiyYgtnZXRlbGlnaWJsZcgDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVsaWdpYmxlCnN1bW1hcnk6ICdHZXQgZWxpZ2libGUgcmVzb3VyY2UgaXRlbSBJRHMgYXQgYSBsb2NhdGlvbiBhbmQgc3RyYXR1bScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGxpc3Qgb2YgcmVzb3VyY2UgaXRlbSBJRHMgZWxpZ2libGUgdG8gYmUgZ2F0aGVyZWQgYXQgdGhlIGdpdmVuIGNvb3JkaW5hdGVzIGFuZCBzdHJhdHVtIGRlcHRoLiBJdGVtcyBhcmUgZ2F0ZWQgYnkgYm90aCB0aGUgbG9jYXRpb24ncyByZXNvdXJjZSBwcm9maWxlIGFuZCB0aGUgZGVwdGggdGhyZXNob2xkIGZvciBlYWNoIHRpZXIuAADAEeWpsmIJZ2V0ZW50Y2xzjAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0ZW50Y2xzCnN1bW1hcnk6ICdHZXQgZW50aXR5IGNsYXNzIGVudW0gdmFsdWVzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgZnVsbCBzZXQgb2YgZW50aXR5IGNsYXNzIGVudW0gdmFsdWVzIGFuZCB0aGVpciBzdHJpbmcgbmFtZXMgKE9yYml0YWxWZXNzZWwsIFBsYW5ldGFyeVN0cnVjdHVyZSkuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGVjb2RlIGVudGl0eSBjbGFzcyBpZGVudGlmaWVycy4AsHLZ5amyYgtnZXRlbnRpdGllc6QCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVudGl0aWVzCnN1bW1hcnk6ICdHZXQgYWxsIGVudGl0aWVzIGZvciBhIHBsYXllcicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmV0dXJucyBmdWxsIGVudGl0eSBpbmZvIGZvciBhbGwgZW50aXRpZXMgb3duZWQgYnkgYSBwbGF5ZXIuIE9wdGlvbmFsbHkgZmlsdGVyIGJ5IGVudGl0eSB0eXBlLgAA8NnlqbJiCWdldGVudGl0eaICLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVudGl0eQpzdW1tYXJ5OiAnR2V0IGVudGl0eSBzdGF0ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmV0dXJucyB0aGUgY3VycmVudCBzdGF0ZSBvZiBhbiBlbnRpdHkgaW5jbHVkaW5nIGlkZW50aXR5LCBjYXJnbywgc2NoZWR1bGUgc3RhdGUsIGFuZCB0eXBlLXNwZWNpZmljIGZpZWxkcy6Qp7s1U7qyYgxnZXRmb290cHJpbnQAALxBKq3psmILZ2V0aW5mZGVjYXkAoNBUOq7psmIMZ2V0aW5mbHVlbmNlAACUjmav6bJiC2dldGluZnZhbHVlAABMNkmq7LJiC2dldGl0ZW1kYXRhqAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0aXRlbWRhdGEKc3VtbWFyeTogJ0dldCBmdWxsIGl0ZW0gY2F0YWxvZycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGNvbXBsZXRlIGl0ZW0gY2F0YWxvZyBhcyB0aGUgY29udHJhY3Qgc2VlcyBpdCwgaW5jbHVkaW5nIHR5cGUsIHN1YnR5cGUsIHRpZXIsIG1hc3MsIGFuZCBvdGhlciBzdGF0aWMgbWV0YWRhdGEuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgYW5kIGNsaWVudHMgdG8gbWlycm9yIHRoZSBjb250cmFjdCdzIGl0ZW0gZGVmaW5pdGlvbnMuAABOTqrssmIKZ2V0aXRlbWlkc4YDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGl0ZW1pZHMKc3VtbWFyeTogJ0dldCBpdGVtIGlkIHRvIG5hbWUgbWFwcGluZ3MnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIG1hcHBpbmcgb2YgaXRlbSBpZCBjb25zdGFudHMgdG8gdGhlaXIgY2Fub25pY2FsIHN0cmluZyBuYW1lcy4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byByZXNvbHZlIG51bWVyaWMgaXRlbSBpZHMgdG8gaHVtYW4tcmVhZGFibGUgaWRlbnRpZmllcnMuAAAAWKrssmIIZ2V0aXRlbXOaAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRpdGVtcwpzdW1tYXJ5OiAnR2V0IGFsbCBhdmFpbGFibGUgaXRlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgYSBsaXN0IG9mIGFsbCBpdGVtcyBpbiB0aGUgZ2FtZSBpbmNsdWRpbmcgdGhlaXIgaWQsIGJhc2UgcHJpY2UsIGFuZCBtYXNzLgBU9Vmq7LJiC2dldGl0ZW10eXBlAIBV9Vmq7LJiDGdldGl0ZW10eXBlc4gDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGl0ZW10eXBlcwpzdW1tYXJ5OiAnR2V0IGl0ZW0gdHlwZSBlbnVtIHZhbHVlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgc2V0IG9mIGl0ZW0gdHlwZSBlbnVtIHZhbHVlcyBhbmQgdGhlaXIgc3RyaW5nIG5hbWVzIChyZXNvdXJjZSwgY29tcG9uZW50LCBtb2R1bGUsIGVudGl0eSkuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGVjb2RlIGl0ZW0gdHlwZSBpZGVudGlmaWVycy4AAAAAH/qyYgdnZXRqb2JzAABMVjJNB7NiC2dldGtpbmRtZXRh+AMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0a2luZG1ldGEKc3VtbWFyeTogJ0dldCBlbnRpdHkga2luZCBtZXRhZGF0YScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGVudGl0eSBraW5kIHJlZ2lzdHJ5IGFuZCB0ZW1wbGF0ZSByZWdpc3RyeSwgaW5jbHVkaW5nIGVhY2gga2luZCdzIGNsYXNzaWZpY2F0aW9uLCBjYXBhYmlsaXR5IGZsYWdzLCBaLWNvb3JkaW5hdGUsIGFuZCBkZWZhdWx0IGxhYmVsLCBwbHVzIHRoZSBtYXBwaW5nIG9mIGVudGl0eSBpdGVtIGlkcyB0byBraW5kcyB3aXRoIGRpc3BsYXkgbGFiZWxzLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGludGVycHJldCBlbnRpdHkga2luZHMgYW5kIGNhcGFiaWxpdGllcy4AJnXZIBqzYgtnZXRsb2NhdGlvbuICLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGxvY2F0aW9uCnN1bW1hcnk6ICdHZXQgbG9jYXRpb24gaW5mb3JtYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgaW5mb3JtYXRpb24gYWJvdXQgYSBsb2NhdGlvbiBpbmNsdWRpbmcgd2hldGhlciBhIHN5c3RlbSBleGlzdHMsIGFuZCBmb3IgZWFjaCBpdGVtOiBwcmljZSwgc3VwcGx5LCByYXJpdHkgbXVsdGlwbGllciwgYW5kIGxvY2F0aW9uIG11bHRpcGxpZXIuAIDJJiEas2IKZ2V0bG9jZGF0Yf4CLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGxvY2RhdGEKc3VtbWFyeTogJ0dldCBkZXJpdmVkIGxvY2F0aW9uIGRhdGEnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgZGVyaXZlZCBsb2NhdGlvbiBkYXRhIGluY2x1ZGluZyBzdGF0aWMgcHJvcGVydGllcyAodHlwZSwgZGlmZmljdWx0eSwgc2VlZHMpIGZyb20gdGhlIGdhbWUgc2VlZCBhbmQgZXBvY2gtc3BlY2lmaWMgcHJvcGVydGllcyAoYWN0aXZlLCBzZWVkcykgZnJvbSB0aGUgY3VycmVudCBlcG9jaCBzZWVkLgAAWyhPJ7NiCmdldG1pbnRjZmcA4JNRN08ns2IMZ2V0bWludHJlYWR5AACwqj4nKrNiC2dldG1vZHR5cGVz1gMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0bW9kdHlwZXMKc3VtbWFyeTogJ0dldCBtb2R1bGUgdHlwZSBlbnVtIHZhbHVlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgc2V0IG9mIG1vZHVsZSB0eXBlIGVudW0gdmFsdWVzIGFuZCB0aGVpciBzdHJpbmcgbmFtZXMgKGFueSwgZW5naW5lLCBnZW5lcmF0b3IsIGdhdGhlcmVyLCBsb2FkZXIsIHdhcnAsIGNyYWZ0ZXIsIGxhdW5jaGVyLCBzdG9yYWdlLCBoYXVsZXIpLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGRlY29kZSBtb2R1bGUgc3VidHlwZSBpZGVudGlmaWVycyBhbmQgc2xvdCBjb21wYXRpYmlsaXR5LgAAVlEnKrNiCmdldG1vZHVsZXOAAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRtb2R1bGVzCnN1bW1hcnk6ICdHZXQgYWxsIG1vZHVsZSBpdGVtcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIHN1YnNldCBvZiBpdGVtcyBjbGFzc2lmaWVkIGFzIG1vZHVsZXMsIGluY2x1ZGluZyBlYWNoIG1vZHVsZSdzIGlkLCBtYXNzLCBzdWJ0eXBlLCBhbmQgdGllci4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBlbnVtZXJhdGUgaW5zdGFsbGFibGUgZXF1aXBtZW50LgAA8OcaNbNiCWdldG5lYXJiecoDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldG5lYXJieQpzdW1tYXJ5OiAnR2V0IG5lYXJieSByZWFjaGFibGUgc3lzdGVtcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyBuZWFyYnkgc3lzdGVtcyByZWFjaGFibGUgYnkgYW4gZW50aXR5IGZyb20gaXRzIHByb2plY3RlZCBsb2NhdGlvbi4gUmV0dXJucyBjdXJyZW50IHN0YXRlICh3aXRoIGNvbXBsZXRlZCB0YXNrcyByZXNvbHZlZCksIHByb2plY3RlZCBzdGF0ZSAoYWZ0ZXIgYWxsIHNjaGVkdWxlZCB0YXNrcyksIGFuZCBhIGxpc3Qgb2YgcmVhY2hhYmxlIHN5c3RlbXMgd2l0aCBkaXN0YW5jZSwgZW5lcmd5IGNvc3QsIGFuZCBmbGlnaHQgdGltZS4AgMLm5DWzYgpnZXRuZnRiYXNlAAAAXdPlNbNiCmdldG5mdGluZm/wAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRuZnRpbmZvCnN1bW1hcnk6ICdHZXQgTkZUIHNjaGVtYSBhbmQgdGVtcGxhdGUgY29uZmlndXJhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgc2V0IG9mIEF0b21pY0Fzc2V0cyBzY2hlbWFzIGFuZCB0ZW1wbGF0ZXMgdGhlIGdhbWUgY29udHJhY3QgZXhwZWN0cywgcGx1cyB0aGUgY3VycmVudCBgaXRlbV9pZCDihpIgKHRlbXBsYXRlX2lkLCBzY2hlbWFfbmFtZSlgIG1hcHBpbmcgc3RvcmVkIGluIHRoZSBgbmZ0Y29uZmlnYCB0YWJsZS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBzeW5jIGF0b21pY2Fzc2V0cyBzdGF0ZSB3aXRoIHRoZSBjb250cmFjdC4AALjKm1izYglnZXRwbGF5ZXL9Ai0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRwbGF5ZXIKc3VtbWFyeTogJ0dldCBwbGF5ZXIgaW5mb3JtYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgaW5mb3JtYXRpb24gYWJvdXQgYSBwbGF5ZXIgaW5jbHVkaW5nIGJhbGFuY2UsIGRlYnQsIG5ldHdvcnRoLCBlbnRpdHkgY291bnRzLCBhbmQgcHJpY2luZyBmb3IgbmV4dCBwdXJjaGFzZXMuIFJldHVybnMgaXNfcGxheWVyPWZhbHNlIGlmIHRoZSBhY2NvdW50IGhhcyBub3Qgam9pbmVkIHRoZSBnYW1lLgAAACBSWrNiB2dldHBvb2wAAAAAOFJas2IIZ2V0cG9vbHMAoLLJ+NFbs2IMZ2V0cHJvanN0YXRlywMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0cHJvanN0YXRlCnN1bW1hcnk6ICdHZXQgcHJvamVjdGVkIGVudGl0eSBzdGF0ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIHByb2plY3RlZCBzdGF0ZSBvZiBhbiBlbnRpdHkgYWZ0ZXIgYXBwbHlpbmcgdGhlIG5leHQgdGFza19jb3VudCBzY2hlZHVsZWQgdGFza3MgKG9yIGFsbCB0YXNrcyBpZiB0YXNrX2NvdW50IGlzIG9taXR0ZWQpLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIHByZXZpZXcgdGhlIHJlc3VsdCBvZiBhbiBlbnRpdHkncyBzY2hlZHVsZSB3aXRob3V0IHJlc29sdmluZyBvbi1jaGFpbi4AAFDVIXWzYglnZXRyZWNpcGWmAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZWNpcGUKc3VtbWFyeTogJ0dldCBhIHNpbmdsZSBjcmFmdGluZyByZWNpcGUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSByZWNpcGUgd2hvc2Ugb3V0cHV0IG1hdGNoZXMgdGhlIGdpdmVuIGl0ZW0gaWQsIGluY2x1ZGluZyBpdHMgaW5wdXRzLCBibGVuZCB3ZWlnaHRzLCBzdGF0IHNsb3RzLCBhbmQgcmVzb2x2ZWQgaXRlbSBtYXNzIGluZm8uIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGlzcGxheSBjcmFmdGluZyByZXF1aXJlbWVudHMuAABW1SF1s2IKZ2V0cmVjaXBlc6wDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlY2lwZXMKc3VtbWFyeTogJ0xpc3QgY3JhZnRpbmcgcmVjaXBlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgYSBwYWdpbmF0ZWQgbGlzdCBvZiBjcmFmdGluZyByZWNpcGVzIHN0YXJ0aW5nIGF0IHRoZSBwcm92aWRlZCBsb3dlciBib3VuZCBvdXRwdXQgaXRlbSBpZCwgdXAgdG8gdGhlIHNwZWNpZmllZCBsaW1pdC4gRWFjaCBlbnRyeSBpbmNsdWRlcyBpbnB1dHMsIGJsZW5kIHdlaWdodHMsIHN0YXQgc2xvdHMsIGFuZCByZXNvbHZlZCBpdGVtIG1hc3MgaW5mby4AAM4GYXWzYgpnZXRyZXNjYXRzngMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0cmVzY2F0cwpzdW1tYXJ5OiAnR2V0IHJlc291cmNlIGNhdGVnb3J5IGVudW0gdmFsdWVzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgZnVsbCBzZXQgb2YgcmVzb3VyY2UgY2F0ZWdvcnkgZW51bSB2YWx1ZXMgYW5kIHRoZWlyIHN0cmluZyBuYW1lcyAob3JlLCBnYXMsIHJlZ29saXRoLCBiaW9tYXNzLCBjcnlzdGFsKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZWNvZGUgcmVzb3VyY2Ugc3VidHlwZSBpZGVudGlmaWVycy4AsNpXYXWzYgtnZXRyZXNlcnZlc/wDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlc2VydmVzCnN1bW1hcnk6ICdHZXQgY3VycmVudCByZXNlcnZlIG1vZGlmaWNhdGlvbnMgYXQgYSBsb2NhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyB0aGUgY2hhaW4ncyBtb2RpZmljYXRpb25zIHRvIGRlcml2ZWQgcmVzZXJ2ZXMgYXQgdGhlIGdpdmVuIGNvb3JkaW5hdGUgZm9yIHRoZSBjdXJyZW50IGVwb2NoIGFzIGEgbGlzdCBvZiB7c3RyYXR1bSwgcmVtYWluaW5nfSBwYWlycy4gU3RyYXRhIG5vdCBwcmVzZW50IGluIHRoZSByZXNwb25zZSB1c2UgdGhlaXIgZGVyaXZlZCBpbml0aWFsIHJlc2VydmUuIENvbXBvc2Ugd2l0aCBTREsgZGVyaXZhdGlvbiB0byBnZXQgdGhlIGZ1bGwgcGVyLWxvY2F0aW9uIHN0cmF0YSB2aWV3LoAVuppidbNiDGdldHJlc291cmNlc4cDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlc291cmNlcwpzdW1tYXJ5OiAnR2V0IGFsbCByZXNvdXJjZSBpdGVtcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIHN1YnNldCBvZiBpdGVtcyBjbGFzc2lmaWVkIGFzIHJlc291cmNlcywgaW5jbHVkaW5nIGVhY2ggcmVzb3VyY2UncyBpZCwgbWFzcywgc3VidHlwZSwgYW5kIHRpZXIuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZW51bWVyYXRlIGdhdGhlcmFibGUgbWF0ZXJpYWxzLgCAQm5fhbNiCmdldHNlcnZpY2UAAAAAONOIs2IIZ2V0c2xvdHO7Ay0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRzbG90cwpzdW1tYXJ5OiAnR2V0IGVudGl0eSBzbG90IGxheW91dHMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBtb2R1bGUgc2xvdCBsYXlvdXQgZm9yIGV2ZXJ5IGVudGl0eSBpdGVtIHR5cGUsIGxpc3RpbmcgdGhlIG9yZGVyZWQgc2xvdCB0eXBlcyBhdmFpbGFibGUgZm9yIG1vZHVsZSBpbnN0YWxsYXRpb24uIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGV0ZXJtaW5lIHdoaWNoIG1vZHVsZSB0eXBlcyBhcmUgY29tcGF0aWJsZSB3aXRoIGEgZ2l2ZW4gZW50aXR5IGh1bGwuAIDU2dyMs2IKZ2V0c3RyYXR1bdICLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHN0cmF0dW0Kc3VtbWFyeTogJ0dldCByZXNvdXJjZSBzdHJhdHVtIGRhdGEnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgcmVzb3VyY2Ugc3RyYXR1bSBkYXRhIGZvciBhIHNwZWNpZmljIGRlcHRoIGxheWVyIGF0IGEgY29vcmRpbmF0ZSwgaW5jbHVkaW5nIHRoZSBzdHJhdHVtIHNlZWQgaW5mbyBhbmQgZGVyaXZlZCByZXNvdXJjZSBzdGF0cy6AlbtGSo2zYgxnZXRzdW1tYXJpZXPoAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRzdW1tYXJpZXMKc3VtbWFyeTogJ0dldCBlbnRpdHkgc3VtbWFyaWVzIGZvciBhIHBsYXllcicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmV0dXJucyBsaWdodHdlaWdodCBzdW1tYXJpZXMgb2YgYWxsIGVudGl0aWVzIG93bmVkIGJ5IGEgcGxheWVyIGluY2x1ZGluZyB0eXBlLCBpZCwgb3duZXIsIG5hbWUsIGxvY2F0aW9uLCBhbmQgaWRsZSBzdGF0dXMuIE9wdGlvbmFsbHkgZmlsdGVyIGJ5IGVudGl0eSB0eXBlLgAAPvSxqrNiCmdldHVwZ2pvYnMA4JNRV2W6s2IMZ2V0dm90ZXJlYWR5AAAAAFhlurNiCGdldHZvdGVzAABUpE1eyrNiC2dldHdvcm1ob2xlAJAdnubmqullDGdyb3VwdHJhbnNpdAAAotrm5qrpZQtncm91cHRyYXZlbJoELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdyb3VwdHJhdmVsCnN1bW1hcnk6ICdNb3ZlIG11bHRpcGxlIGVudGl0aWVzIHRvZ2V0aGVyJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbml0aWF0ZSBncm91cCB0cmF2ZWwgZm9yIG11bHRpcGxlIGVudGl0aWVzIHRvIGEgZGVzdGluYXRpb24uIEFsbCBlbnRpdGllcyBtdXN0IGJlIGF0IHRoZSBzYW1lIGxvY2F0aW9uIGFuZCBvd25lZCBieSB0aGUgY2FsbGVyLiBBdCBsZWFzdCBvbmUgZW50aXR5IHdpdGggZW5naW5lcyBpcyByZXF1aXJlZCB0byBwcm92aWRlIHRocnVzdC4gRmxpZ2h0IGR1cmF0aW9uIGlzIGNhbGN1bGF0ZWQgZnJvbSBjb21iaW5lZCB0aHJ1c3QgYW5kIHRvdGFsIG1hc3Mgb2YgYWxsIGVudGl0aWVzLiBDcmVhdGVzIGFuIGVudGl0eWdyb3VwIGZvciBhdG9taWMgcmVzb2x1dGlvbiBhbmQgY2FuY2VsbGF0aW9uLgAAAAAA0LBpBGhhc2j4AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBoYXNoCnN1bW1hcnk6ICdDYWxjdWxhdGUgc2hhMjU2IGhhc2gnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkNhbGN1bGF0ZXMgdGhlIHNoYTI1NiBoYXNoIG9mIGEgc3RyaW5nIGJhc2VkIHVzaW5nIHRoZSBnYW1lIHNlZWQuAAAAQITSsGkHaGFzaDUxMvsBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGhhc2g1MTIKc3VtbWFyeTogJ0NhbGN1bGF0ZSBzaGE1MTIgaGFzaCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ2FsY3VsYXRlcyB0aGUgc2hhNTEyIGhhc2ggb2YgYSBzdHJpbmcgYmFzZWQgdXNpbmcgdGhlIGdhbWUgc2VlZC4AKLsG5UurdAtpbXBvcnRjYXJnbwAAQIwK5UurdAppbXBvcnRjZWxsAOCzy1PlS6t0DGltcG9ydGVudGl0eQAAGqJV5UurdAtpbXBvcnRlcG9jaAAAqqaX5UurdAtpbXBvcnRncm91cADAFspr5kurdAxpbXBvcnRuZnRjZmcAcJU3seZLq3QMaW1wb3J0cGxheWVyALqvwurmS6t0DWltcG9ydHJlc2VydmUAAFQ2GedLq3QLaW1wb3J0c3RhdGUAAAAAAAAwHX0Eam9pbsQBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGpvaW4Kc3VtbWFyeTogJ0pvaW4gYSBnYW1lJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpKb2luIGEgZ2FtZSBvZiBTaGlwbG9hZAAAAAA0NLWJBmxhdW5jaAAAAAAAAJAMjQRsb2FkAAAA8Mmom6eTCW1pbnRyZWFkeQAAAAAquqw2lQhtb3ZldGlsZQAAgPoumquzmQpuYXR1cmFsaXplAAAAiFcz6fKaCW5mdGltZ3VybLIDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IG5mdGltZ3VybApzdW1tYXJ5OiAnR2V0IE5GVCBpbWFnZSBVUkwgZm9yIGEgY2FyZ28gaXRlbScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGltYWdlIFVSTCB0aGUgY29udHJhY3QgZW1pdHMgZm9yIGEgZ2l2ZW4gY2FyZ28gaXRlbSwgb3B0aW9uYWxseSBzY29wZWQgdG8gYSBsb2NhdGlvbi4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyBhbmQgTkZUIHJlbmRlcmVycyB0byBmZXRjaCB0aGUgY2Fub25pY2FsIGFydHdvcmsgZm9yIGFuIGl0ZW0gb3IgcGFja2VkIGVudGl0eS4AAAAA+OUynQZub3RpZnmKAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBub3RpZnkKc3VtbWFyeTogJ1Rhc2sgbGlmZWN5Y2xlIG5vdGlmaWNhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW50ZXJuYWwgYWN0aW9uIHRoYXQgbm90aWZpZXMgZW50aXR5IG93bmVycyBvZiB0YXNrIGxpZmVjeWNsZSBldmVudHMgKHJlc29sdmVkLCBjYW5jZWxsZWQpLiBDYWxsZWQgaW5saW5lIHdoZW4gdGFza3MgY2hhbmdlIHN0YXRlLiBVc2VzIHJlcXVpcmVfcmVjaXBpZW50IHRvIGVuYWJsZSBvZmYtY2hhaW4gbW9uaXRvcmluZyB2aWEgYWN0aW9uIHRyYWNlcy4AAGXXIIVMrApwbGFjZWNhcmdvyQQtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcGxhY2VjYXJnbwpzdW1tYXJ5OiAnUmVzdG9yZSBORlQgY2FyZ28gb250byBhIGhvc3QgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gY2FsbGVkIGlubGluZSBieSB0aGUgcGxhdGZvcm0gY29udHJhY3Qgb25seS4gUmVzdG9yZXMgdGhlIGNhcmdvIHJlY29yZGVkIGluIGFuIHVud3JhcHBlZCBORlQgb250byBhIGhvc3QgZW50aXR5LiBWYWxpZGF0ZXMgaG9zdCBvd25lcnNoaXAsIGxvYWRlcnMsIGFuZCByZW1haW5pbmcgY2FwYWNpdHksIGRlc2VyaWFsaXplcyB0aGUgTkZUJ3MgaXRlbSBkYXRhLCBhbmQgYXBwZW5kcyBhbiB1bndyYXAgdGFzayB0byBkZWxpdmVyIHRoZSBjYXJnbyB0byB0aGUgaG9zdC4gVGhlIHBsYXRmb3JtIGNvbnRyYWN0IGNyZWRpdHMgdGhlIGRlcG9zaXQgcmVmdW5kIGFuZCBidXJucyB0aGUgYXNzZXQuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AfHZ5KoVMrAtwbGFjZWVudGl0ecAELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHBsYWNlZW50aXR5CnN1bW1hcnk6ICdNYXRlcmlhbGl6ZSBhIHBhY2tlZC1lbnRpdHkgTkZUIGFzIGEgbGl2ZSBlbnRpdHknCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiBjYWxsZWQgaW5saW5lIGJ5IHRoZSBwbGF0Zm9ybSBjb250cmFjdCBvbmx5LiBFbXBsYWNlcyBhIGxpdmUgb3JiaXRhbCB2ZXNzZWwgKHNoaXAgb3IgY29udGFpbmVyKSBmcm9tIGl0cyBwYWNrZWQtZW50aXR5IE5GVCBkYXRhIGF0IHRoZSByZWNvcmRlZCB3cmFwIG9yaWdpbiwgdGhlbiBxdWV1ZXMgdHJhdmVsIGFuZCByZWNoYXJnZSB0YXNrcyB0byBkZWxpdmVyIGl0IHRvIHRoZSB0YXJnZXQgbmV4dXMgYXQgZnVsbCBlbmVyZ3kuIFRoZSBwbGF0Zm9ybSBjb250cmFjdCBjcmVkaXRzIHRoZSBkZXBvc2l0IHJlZnVuZCBhbmQgYnVybnMgdGhlIGFzc2V0LiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAAAAil3TkLoIcmVjaGFyZ2XNAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiByZWNoYXJnZQpzdW1tYXJ5OiAnUmVjaGFyZ2Ugc2hpcCBlbmVyZ3knCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClNjaGVkdWxlIGEgcmVjaGFyZ2UgdGFzayBmb3IgYW4gZW50aXR5IHRvIHJlc3RvcmUgZW5lcmd5IHRvIGZ1bGwgY2FwYWNpdHkuIFRoZSByZWNoYXJnZSBkdXJhdGlvbiBkZXBlbmRzIG9uIGN1cnJlbnQgZW5lcmd5IGxldmVsIGFuZCByZWNoYXJnZSByYXRlLuCzy1M1fJe6DHJlZnJzaGVudGl0ebgDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHJlZnJzaGVudGl0eQpzdW1tYXJ5OiAnUmVmcmVzaCBkZXJpdmVkIGVudGl0eSBzdGF0ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmVjb21wdXRlIGRlcml2ZWQgZmllbGRzIG9uIGFuIGVudGl0eSBmcm9tIGl0cyBjdXJyZW50IGNhcmdvIGFuZCBtb2R1bGVzLCByZWZyZXNoaW5nIGNhcGFiaWxpdHkgc3RhdHMgYW5kIGNhcmdvIG1hc3MuIFRoZSBlbnRpdHkgbXVzdCBiZSBpZGxlIHdpdGggbm8gc2NoZWR1bGVkIHRhc2tzLiBVc2VkIHRvIHJlY29uY2lsZSBkZXJpdmVkIHN0YXRlIGFmdGVyIGRhdGEgbWlncmF0aW9ucyBvciBjb250cmFjdCB1cGdyYWRlcy6gIjKXqk2lugxyZW1vdmVvcmFjbGUAAAAAAChpproGcmVuYW1lAAAAAEDtSLG6B3Jlc29sdmXQAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiByZXNvbHZlCnN1bW1hcnk6ICdDb21wbGV0ZSBzY2hlZHVsZWQgdGFza3MnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlc29sdmUgY29tcGxldGVkIHRhc2tzIGluIGFuIGVudGl0eSdzIHNjaGVkdWxlLCBhcHBseWluZyB0aGVpciBlZmZlY3RzIChyZWNoYXJnZSBlbmVyZ3ksIHVwZGF0ZSBsb2NhdGlvbiwgbG9hZC91bmxvYWQgY2FyZ28pLiBJZiBjb3VudCBpcyBzcGVjaWZpZWQsIHJlc29sdmUgZXhhY3RseSB0aGF0IG1hbnkgdGFza3M7IG90aGVyd2lzZSByZXNvbHZlIGFsbCBjb21wbGV0ZWQgdGFza3MuIEZhaWxzIGlmIGNvdW50IGV4Y2VlZHMgdGhlIG51bWJlciBvZiBjb21wbGV0ZWQgdGFza3MuAECMRu1IsboKcmVzb2x2ZWFsbADg4zVK7UixugxyZXNvbHZlZWFybHkAAAAAAESjtroGcmV2ZWFsAAAAACrqRKW8CHJtbW9kdWxlvAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcm1tb2R1bGUKc3VtbWFyeTogJ1JlbW92ZSBhIG1vZHVsZSBmcm9tIGEgc2xvdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmVtb3ZlIGFuIGluc3RhbGxlZCBtb2R1bGUgZnJvbSBhIHNsb3Qgb24gYSBsaXZlIGVudGl0eSBvciBhIHBhY2tlZCBlbnRpdHkgaW4gY2FyZ28uIFRoZSBlbnRpdHkgbXVzdCBiZSBpZGxlIHdpdGggbm8gc2NoZWR1bGVkIHRhc2tzLiBUaGUgbW9kdWxlIGlzIHJldHVybmVkIHRvIGNhcmdvLiBGYWlscyBpZiB0aGUgZW50aXR5IGRvZXMgbm90IGhhdmUgZW5vdWdoIGNhcmdvIGNhcGFjaXR5IHRvIGhvbGQgdGhlIHJldHVybmVkIG1vZHVsZS4AAABsobymvAhybW5mdGNmZ6EDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHJtbmZ0Y2ZnCnN1bW1hcnk6ICdSZW1vdmUgTkZUIHRlbXBsYXRlIG1hcHBpbmcgZm9yIGFuIGl0ZW0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlbW92ZSB0aGUgQXRvbWljQXNzZXRzIHRlbXBsYXRlIG1hcHBpbmcgZm9yIHRoZSBzcGVjaWZpZWQgaXRlbSBpZCBmcm9tIHRoZSBgbmZ0Y29uZmlnYCB0YWJsZS4gQWZ0ZXIgcmVtb3ZhbCB0aGUgaXRlbSBjYW4gbm8gbG9uZ2VyIGJlIHdyYXBwZWQgb3IgdW53cmFwcGVkIHVudGlsIGEgbmV3IG1hcHBpbmcgaXMgc2V0LiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAAAAyG2HssIIc2V0Y2l2aWMAAMBVGeuIssIKc2V0Y2x1c3RlcgAAAMDpUoqywglzZXRjb29yZHMAAMC8+qzpssIKc2V0aW5mYnVybgAAAAAhremywghzZXRpbmZkMQCQppEqremywgxzZXRpbmZkZW1hbmQAAECeTq7pssIKc2V0aW5mbWludACQG3OKr+mywgxzZXRpbmZ3ZWlnaHQAAABILnc1s8IJc2V0bmV4dGlkAAAAYAvlNbPCCXNldG5mdGNmZ8QDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHNldG5mdGNmZwpzdW1tYXJ5OiAnU2V0IE5GVCB0ZW1wbGF0ZSBtYXBwaW5nIGZvciBhbiBpdGVtJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpCaW5kIGFuIGl0ZW0gaWQgdG8gYW4gQXRvbWljQXNzZXRzIHRlbXBsYXRlIGlkIGFuZCBzY2hlbWEgbmFtZS4gVXNlZCB0byBjb25maWd1cmUgaG93IHRoZSBjb250cmFjdCBtaW50cyBhbmQgcmVjb2duaXplcyBORlRzIGZvciBhIGdpdmVuIGl0ZW0uIEluc2VydHMgYSBuZXcgbWFwcGluZyBpZiBvbmUgZG9lcyBub3QgZXhpc3QsIG9yIHVwZGF0ZXMgdGhlIGV4aXN0aW5nIG1hcHBpbmcuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AAMgKIoqzwglzZXRzb2NrZXQAkCJtWN2Ws8IMc2V0dGhyZXNob2xkAAAypqiay7PCC3NldHdyYXBjb3N0AACAUquay7PCCnNldHdyYXBmZWUAAAAAQMWcdcMHc2h1dHRsZQAAAKDsGsRpxglzdG93Y2FyZ2/VBS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzdG93Y2FyZ28Kc3VtbWFyeTogJ1Jlc2VydmUgYSBjYXJnbyBzdGFjayBmb3Igd3JhcHBpbmcgaW50byBhbiBORlQnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiBjYWxsZWQgaW5saW5lIGJ5IHRoZSBwbGF0Zm9ybSBjb250cmFjdCBvbmx5LiBSZXNlcnZlcyBhbmQgY29uc3VtZXMgYSBjYXJnbyBzdGFjayBvbiBhIGxpdmUgZW50aXR5IGZvciB3cmFwcGluZyBpbnRvIGFuIE5GVC4gVmFsaWRhdGVzIGVudGl0eSBvd25lcnNoaXAsIGxvYWRlcnMsIGFuZCBwcmVzZW5jZSBhdCB0aGUgbmV4dXMsIGFuZCBjb25maXJtcyB0aGUgdGFyZ2V0IGNhcmdvIHN0YWNrIGlzIGF2YWlsYWJsZSBhbmQgbm90IHJlc2VydmVkIGJ5IGEgcGVuZGluZyB0YXNrLiBDb21wdXRlcyB0aGUgd3JhcCBjb3N0IGFuZCBmZWUsIGRlYml0cyB0aGVtIGZyb20gdGhlIG93bmVyJ3MgcGxhdGZvcm0gZGVwb3NpdCBiYWxhbmNlLCBkZXJpdmVzIHRoZSBORlQncyBpbW11dGFibGUgZGF0YSwgYW5kIG1pbnRzIHRoZSBORlQgaW5saW5lIGFzIHRoZSBnYW1lIGNvbnRyYWN0IGJlZm9yZSBjb25zdW1pbmcgdGhlIGNhcmdvLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAIDPLk/FacYKc3Rvd2VudGl0eZkFLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHN0b3dlbnRpdHkKc3VtbWFyeTogJ1Jlc2VydmUgYW4gZW50aXR5IGZvciB3cmFwcGluZyBpbnRvIGFuIE5GVCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW50ZXJuYWwgYWN0aW9uIGNhbGxlZCBpbmxpbmUgYnkgdGhlIHBsYXRmb3JtIGNvbnRyYWN0IG9ubHkuIFJlc2VydmVzIGEgd2hvbGUgZW50aXR5IChzaGlwLCBjb250YWluZXIsIG9yIHBsYW5ldGFyeSBzdHJ1Y3R1cmUpIGZvciB3cmFwcGluZyBpbnRvIGFuIE5GVC4gVGhlIGVudGl0eSBtdXN0IGJlIGlkbGUgd2l0aCBlbXB0eSBjYXJnbyBhbmQgbm8gc2NoZWR1bGVkIHRhc2tzLiBDb21wdXRlcyB0aGUgd3JhcCBjb3N0IGFuZCBmZWUsIGRlYml0cyB0aGVtIGZyb20gdGhlIG93bmVyJ3MgcGxhdGZvcm0gZGVwb3NpdCBiYWxhbmNlLCBkZXJpdmVzIHRoZSBlbnRpdHkgTkZUJ3MgaW1tdXRhYmxlIGRhdGEsIG1pbnRzIHRoZSBORlQgaW5saW5lIGFzIHRoZSBnYW1lIGNvbnRyYWN0LCBhbmQgZXJhc2VzIHRoZSBlbnRpdHkgZnJvbSB0aGUgd29ybGQuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AgIo6UVkNxwpzd2FwbW9kdWxlAAAAACq6XA3HCHN3YXB0aWxlAAAAACA7PM3NB3RyYW5zaXQAAAAAAES1zc0GdHJhdmVs+wEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogdHJhdmVsCnN1bW1hcnk6ICdNb3ZlIGEgc2hpcCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW5pdGlhdGUgdHJhdmVsIG9mIGFuIGVudGl0eSBmcm9tIGl0cyBjdXJyZW50IGxvY2F0aW9uIHRvIGEgbmV3IGRlc3RpbmF0aW9uLgDANLFGtc3NCnRyYXZlbHBsYW4AAAAAnsaq0tQIdW5kZXBsb3nnBC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1bmRlcGxveQpzdW1tYXJ5OiAnUGFjayBhIGRlcGxveWVkIGVudGl0eSBpbnRvIGEgaG9zdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUGFjayBhbiBlbnRpdHkgaW50byBhIGhvc3QgZW50aXR5J3MgY2FyZ28gYXMgYSBwYWNrZWQtZW50aXR5IGl0ZW0uIEhvc3QgYW5kIHRhcmdldCBtdXN0IHNoYXJlIHRoZSBzYW1lIG93bmVyIGFuZCBjb29yZGluYXRlcywgdGhlIGhvc3QgbXVzdCBoYXZlIGxvYWRlcnMgYW5kIGVub3VnaCBjYXBhY2l0eSBmb3IgdGhlIHBhY2tlZCBtYXNzLCBhbmQgdGhlIHRhcmdldCBtdXN0IGJlIGlkbGUgd2l0aCBlbXB0eSBjYXJnby4gQ3JlYXRlcyBhbiBlbnRpdHlncm91cCBhbmQgc2NoZWR1bGVzIHVuZGVwbG95IHRhc2tzIG9uIGJvdGggZW50aXRpZXM7IG9uIHJlc29sdXRpb24gdGhlIHRhcmdldCBpcyBlcmFzZWQgYW5kIHRoZSBwYWNrZWQgZW50aXR5IGlzIGFkZGVkIHRvIHRoZSBob3N0J3MgY2FyZ28uIEludmVyc2Ugb2YgZGVwbG95LgAAAAAkQ+PUBnVubG9hZAAAAABAJXNZ1Qd1cGdyYWRlAADAoU8lc1nVCnVwZ3JhZGVqb2IAAK7K1zSkMt0Ldm90ZWNoYXJ0ZXIAAADwyairMt0Jdm90ZXJlYWR5AAAAAAAAUK/hBHdhcnCfAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB3YXJwCnN1bW1hcnk6ICdXYXJwIHRvIGEgZGVzdGluYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkluc3RhbnRseSB0ZWxlcG9ydCBhbiBlbnRpdHkgdG8gYSBkZXN0aW5hdGlvbiBzeXN0ZW0uIFJlcXVpcmVzIHdhcnAgY2FwYWJpbGl0eSwgZnVsbCBlbmVyZ3ksIGVtcHR5IGNhcmdvLCBhbmQgYW4gZW1wdHkgc2NoZWR1bGUuIFRoZSBkZXN0aW5hdGlvbiBtdXN0IGJlIGEgdmFsaWQgc3lzdGVtIHdpdGhpbiB3YXJwIHJhbmdlLiBSZXNvbHZlcyBpbW1lZGlhdGVseSBhcyBhIHplcm8tZHVyYXRpb24gdGFzay4AAAAAAKCq4wR3aXBlsgEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd2lwZQpzdW1tYXJ5OiAnREVCVUc6IHdpcGUgYWN0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tJgAAAAAAyq5BA2k2NAAACWNhcmdvX3JvdwAAAPiqfE1DA2k2NAAADGNoYXJ0ZXJzX3JvdwCYW5Mi5LZDA2k2NAAAD2NpdmljY29uZmlnX3JvdwAAAABg6UxEA2k2NAAACWNsYWltX3JvdwAAAOCqjHVEA2k2NAAAC2NsdXN0ZXJfcm93AAAAAGQnJUUDaTY0AAAKY29tbWl0X3JvdwAAAACATKtKA2k2NAAACWRlcG90X3JvdwAAyAiZTKtKA2k2NAAADWRlcG90YWNjdF9yb3cAAAAA+OzyVANpNjQAAAplbnRpdHlfcm93AKqml/ns8lQDaTY0AAAPZW50aXR5Z3JvdXBfcm93AACwCvvs8lQDaTY0AAAOZW50aXR5X3NlcV9yb3cAAAAAgIZoVQNpNjQAAAllcG9jaF9yb3cAAMg0RnPWdANpNjQAAA1pbmZiYWxsb3Rfcm93AAAAYF591nQDaTY0AAALaW5mYnVybl9yb3cAAEjTSJXWdANpNjQAAA1pbmZkZW1hbmRfcm93AAAAACAa13QDaTY0AAAKaW5mbG9jX3JvdwAAACBPJ9d0A2k2NAAAC2luZm1pbnRfcm93AAC4yptY13QDaTY0AAANaW5mcGxheWVyX3Jvd4BovMqbWNd0A2k2NAAAEGluZnBsYXllcmxvY19yb3cAAAAgUlrXdANpNjQAAAtpbmZwb29sX3JvdwCAzy4abdd0A2k2NAAADmluZnF1YWxpdHlfcm93AAAAPkaT13QDaTY0AAAMaW5mdGFsbHlfcm93AAAAQGW613QDaTY0AAALaW5mdm90ZV9yb3cAAMiNOcXXdANpNjQAAA1pbmZ3ZWlnaHRfcm93AAAAAACAD30DaTY0AAAHam9iX3JvdwAAAAAAm6eTA2k2NAAACW1pbnRxX3JvdwAAYG5NivKaA2k2NAAADW5mdGNvbmZpZ19yb3cAAGALqYjMpQNpNjQAABFvcmFjbGVfY29uZmlnX3JvdwAAAACriMylA2k2NAAACm9yYWNsZV9yb3cAAAAAXOVNrANpNjQAAApwbGF5ZXJfcm93AAAAQO2rsLoDaTY0AAALcmVzZXJ2ZV9yb3cAAAAARKO2ugNpNjQAAApyZXZlYWxfcm93AAAAQCG3r8IDaTY0AAALc2VydmljZV9yb3cAAAAAAJVNxgNpNjQAAAlzdGF0ZV9yb3cAAAAAAKyqzwNpNjQAAAl0eXBlc19yb3cAAAAAH/pY1QNpNjQAAAp1cGdqb2Jfcm93AABza1JUzeUDaTY0AAAOd3JhcGNvbmZpZ19yb3cAAAAZU1TN5QNpNjQAAAx3cmFwY29zdF9yb3cBEVNoaXBsb2FkIChTZXJ2ZXIpEVNoaXBsb2FkIChTZXJ2ZXIpAAAAXAAyjXXSNM0xDHRhc2tfcmVzdWx0cwDAcTdPilIyDHRhc2tfcmVzdWx0cwAAyDTWFJ0+DHRhc2tfcmVzdWx0cwAAAABEhaZBDmNhbmNlbF9yZXN1bHRzAADINFbpTEQMdGFza19yZXN1bHRzkJe56KqMdUQMdGFza19yZXN1bHRzAAAAAIC8zEUMdGFza19yZXN1bHRzAAAAh768zEULam9iX3JlY2VpcHQAAAANu0ilSgx0YXNrX3Jlc3VsdHMAAAAAeBqrSgx0YXNrX3Jlc3VsdHMAgLo040yrSgx0YXNrX3Jlc3VsdHMAAFDQ5EyrSgx0YXNrX3Jlc3VsdHMAgM8uT4WwSgZzdHJpbmcAAAAAXNWyYQx0YXNrX3Jlc3VsdHMAwDSxXtWyYQx0YXNrX3Jlc3VsdHMAwFX5moayYg5jaGFydGVyX3Jlc3VsdKDUzfmahrJiE2NoYXJ0ZXJfdHJlZV9yZXN1bHTgk1E334ayYhNjaGFydGVycmVhZHlfcmVzdWx0AMBVGeuIsmILY2x1c3Rlcl9yb3cAAGBuTYqyYgtnYW1lX2NvbmZpZwAAqJIilbJiDWRlY29tcF9yZXN1bHQAAEjTSJWyYg1kZW1hbmRfcmVzdWx0AEB2mFaVsmIOZXh0ZW5kZWRfYXNzZXQAAACZVpWyYgpkZXBvdF92aWV3ABSaJmOXsmIGdWludDY0AFQ8jrmosmIIdWludDE2W10AAMAR5amyYgtlbnVtX3Jlc3VsdACwctnlqbJiDWVudGl0eV9pbmZvW10AAPDZ5amyYgtlbnRpdHlfaW5mb5CnuzVTurJiEGZvb3RwcmludF9yZXN1bHQAvEEqremyYgZ1aW50NjSg0FQ6rumyYhBpbmZsdWVuY2VfdG90YWxzAJSOZq/psmIPaW5mdmFsdWVfcmVzdWx0AEw2SarssmIPaXRlbWRhdGFfcmVzdWx0AABOTqrssmIPaXRlbV9pZHNfcmVzdWx0AAAAWKrssmIKaXRlbXNfaW5mbwBU9Vmq7LJiBXVpbnQ4gFX1WarssmILZW51bV9yZXN1bHQAAAAAH/qyYgtqb2JzX3Jlc3VsdABMVjJNB7NiEGtpbmRfbWV0YV9yZXN1bHQAJnXZIBqzYg1sb2NhdGlvbl9pbmZvAIDJJiEas2IQbG9jYXRpb25fZGVyaXZlZAAAWyhPJ7NiDm1pbnRjZmdfcmVzdWx04JNRN08ns2IGdWludDMyALCqPicqs2ILZW51bV9yZXN1bHQAAFZRJyqzYg5tb2R1bGVzX3Jlc3VsdAAA8OcaNbNiC25lYXJieV9pbmZvAIDC5uQ1s2IIc3RyaW5nW10AAF3T5TWzYg5uZnRpbmZvX3Jlc3VsdAAAuMqbWLNiC3BsYXllcl9pbmZvAAAAIFJas2IQcG9vbF9wYWlyX3Jlc3VsdAAAADhSWrNiDHBvb2xzX3Jlc3VsdKCyyfjRW7NiD3Byb2plY3RlZF9zdGF0ZQAAUNUhdbNiDnJlY2lwZXNfcmVzdWx0AABW1SF1s2IOcmVjaXBlc19yZXN1bHQAAM4GYXWzYgtlbnVtX3Jlc3VsdACw2ldhdbNiE3N0cmF0dW1fcmVtYWluaW5nW12AFbqaYnWzYhByZXNvdXJjZXNfcmVzdWx0AIBCbl+Fs2ILc2VydmljZV9yb3cAAAA404izYhVlbnRpdHlfbGF5b3V0c19yZXN1bHQAgNTZ3IyzYgxzdHJhdHVtX2RhdGGAlbtGSo2zYhBlbnRpdHlfc3VtbWFyeVtdAAA+9LGqs2IOdXBnam9ic19yZXN1bHTgk1FXZbqzYgZ1aW50MzIAAABYZbqzYgt2b3RlX3Jlc3VsdABUpE1eyrNiDXdvcm1ob2xlX2luZm+QHZ7m5qrpZQx0YXNrX3Jlc3VsdHMAotrm5qrpZQx0YXNrX3Jlc3VsdHMAAAAAANCwaQtjaGVja3N1bTI1NgAAAECE0rBpC2NoZWNrc3VtNTEyAAAAADQ0tYkMdGFza19yZXN1bHRzAAAAAACQDI0MdGFza19yZXN1bHRzAAAAKrqsNpUMdGFza19yZXN1bHRzAACIVzPp8poGc3RyaW5nAABl1yCFTKwMdGFza19yZXN1bHRzAHx2eSqFTKwMdGFza19yZXN1bHRzAAAAil3TkLoMdGFza19yZXN1bHRzAAAAQO1IsboPcmVzb2x2ZV9yZXN1bHRzAECMRu1IsboScmVzb2x2ZWFsbF9yZXN1bHRz4OM1Su1IsboPcmVzb2x2ZV9yZXN1bHRzAAAAQMWcdcMMdGFza19yZXN1bHRzAACg7BrEacYMdGFza19yZXN1bHRzAIDPLk/FacYMdGFza19yZXN1bHRzAAAAKrpcDccMdGFza19yZXN1bHRzAAAAIDs8zc0MdGFza19yZXN1bHRzAAAAAES1zc0MdGFza19yZXN1bHRzAMA0sUa1zc0MdGFza19yZXN1bHRzAAAAnsaq0tQMdGFza19yZXN1bHRzAAAAACRD49QMdGFza19yZXN1bHRzAAAAQCVzWdUMdGFza19yZXN1bHRzAMChTyVzWdULam9iX3JlY2VpcHQAAAAAAFCv4Qx0YXNrX3Jlc3VsdHM=');
821
+ const abiBlob$1 = Blob.from('DmVvc2lvOjphYmkvMS4yAhVCX3ZlY3Rvcl9lbnRpdHlfcmVmX0UMZW50aXR5X3JlZltdDWxvY2F0aW9uX3R5cGUFdWludDi0AgthYmFuZG9ucGxvdAABB3Bsb3RfaWQGdWludDY0CmFkZGNvbnRyaWIABQZwbGF5ZXIEbmFtZQllbnRpdHlfaWQGdWludDY0AXgFaW50NjQBeQVpbnQ2NAZidW5kbGUMY2FyZ29faXRlbVtdCWFkZG1vZHVsZQAECWVudGl0eV9pZAZ1aW50NjQMbW9kdWxlX2luZGV4BXVpbnQ4Cm1vZHVsZV9yZWYJY2FyZ29fcmVmCnRhcmdldF9yZWYKY2FyZ29fcmVmPwhhZGRuZXh1cwADCm5leHVzX25hbWUGc3RyaW5nAXgFaW50NjQBeQVpbnQ2NAlhZGRvcmFjbGUAAQlvcmFjbGVfaWQEbmFtZQ1iYWxsb3RfY3JlZGl0AAIHYWNjb3VudARuYW1lBmFtb3VudAZ1aW50NjQKYmFsbG90X3JvdwAHCWJhbGxvdF9pZAZ1aW50NjQEa2luZAV1aW50OAdzdWJqZWN0BnVpbnQ2NAVzZWF0cwZ1aW50MzINc2V0dGxlZF9lcG9jaAZ1aW50MzIFcXVldWUIdWludDMyW10GcGFya2VkD2JhbGxvdF9jcmVkaXRbXQ5iYWxsb3Rfc2VxX3JvdwADB25leHRfaWQGdWludDY0BmN1cnNvcgZ1aW50NjQJcGFnZV9yb3dzBnVpbnQzMgxiYWxsb3RfdGFsbHkAAgZvcHRpb24GdWludDMyBndlaWdodAZ1aW50NjQPYmFsbG90cGlja3Nfcm93AAIHYWNjb3VudARuYW1lBXBpY2tzCHVpbnQzMltdEGJhbGxvdHNldHRsZV9yb3cABgliYWxsb3RfaWQGdWludDY0BXJvdW5kBnVpbnQzMgZjdXJzb3IGdWludDY0DHRhcmdldF9lcG9jaAZ1aW50MzIHdGFsbGllcw5iYWxsb3RfdGFsbHlbXQZzZWF0ZWQIdWludDMyW10FYmxlbmQAAgJpZAZ1aW50NjQGaW5wdXRzDGNhcmdvX2l0ZW1bXQxidWlsZGVyX2xhbmUABApzbG90X2luZGV4BXVpbnQ4BXNwZWVkBnVpbnQxNgVkcmFpbgZ1aW50MzIKb3V0cHV0X3BjdAZ1aW50MTYNYnVpbGRpbmdzX3JvdwACCWVudGl0eV9pZAZ1aW50NjQIYnVpbGRpbmcFdWludDgIYnVpbGRqb2IABQl0YXJnZXRfaWQGdWludDY0B2RvY2tfaWQGdWludDY0BHNsb3QFdWludDgOdGFyZ2V0X2l0ZW1faWQGdWludDE2BmlucHV0cwxjYXJnb19pdGVtW10MYnVpbGRqb2Jfcm93AAoCaWQGdWludDY0CGJ1aWxkaW5nBnVpbnQ2NAZzb2NrZXQFdWludDgGdGFyZ2V0BnVpbnQ2NAVvd25lcgRuYW1lBmNvb3Jkcwtjb29yZGluYXRlcwlzdGFydHNfYXQKdGltZV9wb2ludAxjb21wbGV0ZXNfYXQKdGltZV9wb2ludA50YXJnZXRfaXRlbV9pZAZ1aW50MTYFY2FyZ28MY2FyZ29faXRlbVtdEGJ1aWxkam9ic19yZXN1bHQAAQRqb2JzDmJ1aWxkam9iX3Jvd1tdCWJ1aWxkcGxvdAACCmJ1aWxkZXJfaWQGdWludDY0B3Bsb3RfaWQGdWludDY0BmNhbmNlbAADAmlkBnVpbnQ2NAhsYW5lX2tleQV1aW50OAVjb3VudAZ1aW50NjQOY2FuY2VsX3Jlc3VsdHMABgllbnRpdHlfaWQGdWludDY0C2VudGl0eV90eXBlBG5hbWUPY2FuY2VsbGVkX2NvdW50BXVpbnQ4EHNjaGVkdWxlX3N0YXJ0ZWQLdGltZV9wb2ludD8LZW50aXR5Z3JvdXAHdWludDY0Pw1ncm91cF9tZW1iZXJzFkJfdmVjdG9yX2VudGl0eV9yZWZfRT8LY2FuY2VsYnVpbGQAAQZqb2JfaWQGdWludDY0C2NhbmNlbGNpdmljAAMIYnVpbGRpbmcGdWludDY0CGxhbmVfa2V5BXVpbnQ4B2Zyb21faWQGdWludDY0C2NhbmNlbGNyYWZ0AAIGam9iX2lkBnVpbnQ2NAdzaGlwX2lkBnVpbnQ2NApjYXJnb19pdGVtAAUHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0B21vZHVsZXMObW9kdWxlX2VudHJ5W10IcXVhbnRpdHkGdWludDMyCWVudGl0eV9pZAd1aW50NjQ/CWNhcmdvX3JlZgAEB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCWVudGl0eV9pZAd1aW50NjQ/CWNhcmdvX3JvdwAHAmlkBnVpbnQ2NAllbnRpdHlfaWQGdWludDY0B2l0ZW1faWQGdWludDY0CHF1YW50aXR5BnVpbnQ2NAVzdGF0cwZ1aW50NjQHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQtzZXF1ZW5jZV9pZAd1aW50NjQ/CmNhcmdvX3ZpZXcABgdpdGVtX2lkBnVpbnQxNgVzdGF0cwZ1aW50NjQHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQhxdWFudGl0eQZ1aW50MzICaWQGdWludDY0CWVudGl0eV9pZAd1aW50NjQ/CmNhc3RiYWxsb3QAAwZwbGF5ZXIEbmFtZQliYWxsb3RfaWQGdWludDY0BXBpY2tzCHVpbnQzMltdEGNoYXJ0ZXJfbm9kZV9kZWYABgdub2RlX2lkBnVpbnQzMgRjb3N0BnVpbnQ2NAdwcmVyZXFzCHVpbnQzMltdBmdyYW50cw1jaXZpY19ncmFudFtdD2V4Y2x1c2lvbl9ncm91cAZ1aW50MTYKcmVwZWF0X2NhcAV1aW50OBJjaGFydGVyX3JlYWR5X3ZpZXcAAwF4BWludDY0AXkFaW50NjQHbWFuZGF0ZQZ1aW50MzIOY2hhcnRlcl9yZXN1bHQADgtsb2NhdGlvbl9pZAZ1aW50NjQIbGlmZXRpbWUGdWludDY0BXNwZW50BnVpbnQ2NAp1bmFzc2lnbmVkBnVpbnQ2NAdtYW5kYXRlBnVpbnQzMgluZXh0X2Nvc3QGdWludDY0C3ByZXJlcXNfbWV0BGJvb2wJYnVpbGRhYmxlBGJvb2wFZXBvY2gGdWludDMyBWJ1aWx0DmNoYXJ0ZXJfdmlld1tdCWJhbGxvdF9pZAZ1aW50NjQIc2V0dGxpbmcEYm9vbAVxdWV1ZQtzZWF0X3ZpZXdbXQhwcm9ncmVzcw9wcm9ncmVzc192aWV3W10TY2hhcnRlcl90cmVlX3Jlc3VsdAABBW5vZGVzEmNoYXJ0ZXJfbm9kZV9kZWZbXQxjaGFydGVyX3ZpZXcAAgdub2RlX2lkBnVpbnQzMgdyZXBlYXRzBnVpbnQxNgxjaGFydGVycmVhZHkAAgF4BWludDY0AXkFaW50NjQTY2hhcnRlcnJlYWR5X3Jlc3VsdAABBndvcmxkcxRjaGFydGVyX3JlYWR5X3ZpZXdbXQ9jaXRpemVuc2hpcF9yb3cABAtsb2NhdGlvbl9pZAZ1aW50NjQIbGlmZXRpbWUGdWludDY0BmFjdGl2ZQZ1aW50NjQMYWN0aXZlX2Vwb2NoBnVpbnQzMgtjaXZpY19ncmFudAAEBGtpbmQFdWludDgIYnVpbGRpbmcFdWludDgEc3RhdAV1aW50OAV2YWx1ZQZ1aW50MTYPY2l2aWNjb25maWdfcm93AAELY2l2aWNfb3duZXIEbmFtZQxjaXZpY3NodXR0bGUABAhidWlsZGluZwZ1aW50NjQHZnJvbV9pZAZ1aW50NjQFdG9faWQGdWludDY0BWl0ZW1zDGNhcmdvX2l0ZW1bXQljbGFpbV9yb3cAAQVvd25lcgRuYW1lCmNsYWltYnVpbGQAAQZqb2JfaWQGdWludDY0CmNsYWltY3JhZnQAAgZqb2JfaWQGdWludDY0B3NoaXBfaWQGdWludDY0CWNsYWltcGxvdAADCmJ1aWxkZXJfaWQGdWludDY0DnRhcmdldF9pdGVtX2lkBnVpbnQxNgRzbG90DGNsdXN0ZXJfc2xvdAxjbGFpbXN0YXJ0ZXIAAQVvd25lcgRuYW1lCWNsZWFucnN2cAACBWVwb2NoBnVpbnQ2NAhtYXhfcm93cwZ1aW50NjQKY2xlYXJ0YWJsZQADCnRhYmxlX25hbWUEbmFtZQVzY29wZQVuYW1lPwhtYXhfcm93cwd1aW50NjQ/CmNsb3NlZXBvY2gAAQVlcG9jaAZ1aW50NjQMY2x1c3Rlcl9jZWxsAAMCZ3gEaW50OAJneQRpbnQ4BmVudGl0eQZ1aW50NjQLY2x1c3Rlcl9yb3cAAgRyb290BnVpbnQ2NAVjZWxscw5jbHVzdGVyX2NlbGxbXQxjbHVzdGVyX3Nsb3QAAwNodWIGdWludDY0Amd4BGludDgCZ3kEaW50OA5jbHVzdGVyX3NvdXJjZQACCXNvdXJjZV9pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdDGNsdXN0ZXJjcmFmdAAGAmlkBnVpbnQ2NAlyZWNpcGVfaWQGdWludDE2CHF1YW50aXR5BnVpbnQzMgdzb3VyY2VzEGNsdXN0ZXJfc291cmNlW10GdGFyZ2V0B3VpbnQ2ND8Ec2xvdAZ1aW50OD8GY29tbWl0AAMJb3JhY2xlX2lkBG5hbWUFZXBvY2gGdWludDY0BmNvbW1pdAtjaGVja3N1bTI1Ngpjb21taXRfcm93AAQCaWQGdWludDY0BWVwb2NoBnVpbnQ2NAlvcmFjbGVfaWQEbmFtZQZjb21taXQLY2hlY2tzdW0yNTYJY29uZmlnbG9nAAEGY29uZmlnC2dhbWVfY29uZmlnC2Nvb3JkaW5hdGVzAAMBeAVpbnQ2NAF5BWludDY0AXoHdWludDE2Pwhjb3VwbGluZwADC2NvdW50ZXJwYXJ0CmVudGl0eV9yZWYEaG9sZAZ1aW50NjQEa2luZAV1aW50OAVjcmFmdAAGAmlkBnVpbnQ2NAlyZWNpcGVfaWQGdWludDE2CHF1YW50aXR5BnVpbnQzMgZpbnB1dHMMY2FyZ29faXRlbVtdBnRhcmdldAd1aW50NjQ/BHNsb3QGdWludDg/DGNyYWZ0ZXJfbGFuZQAECnNsb3RfaW5kZXgFdWludDgFc3BlZWQGdWludDE2BWRyYWluBnVpbnQzMgpvdXRwdXRfcGN0BnVpbnQxNghjcmFmdGpvYgAGB3NoaXBfaWQGdWludDY0C3dvcmtzaG9wX2lkBnVpbnQ2NARzbG90BXVpbnQ4CXJlY2lwZV9pZAZ1aW50MTYIcXVhbnRpdHkGdWludDMyBmlucHV0cwxjYXJnb19pdGVtW10MY3JhZnRqb2Jfcm93AAwCaWQGdWludDY0CGJ1aWxkaW5nBnVpbnQ2NAZzb2NrZXQFdWludDgFb3duZXIEbmFtZQdzaGlwX2lkBnVpbnQ2NAZjb29yZHMLY29vcmRpbmF0ZXMJc3RhcnRzX2F0CnRpbWVfcG9pbnQMY29tcGxldGVzX2F0CnRpbWVfcG9pbnQJcmVjaXBlX2lkBnVpbnQxNghxdWFudGl0eQZ1aW50MzILZW5lcmd5X3BhaWQGdWludDMyBWNhcmdvDGNhcmdvX2l0ZW1bXRBjcmFmdGpvYnNfcmVzdWx0AAEEam9icw5jcmFmdGpvYl9yb3dbXQlkYmdjcmVkaXQABQVvd25lcgRuYW1lAXgFaW50NjQBeQVpbnQ2NA1hbW91bnRfYXRvbWljBnVpbnQ2NARub2RlB3VpbnQzMj8KZGJnbWFuZGF0ZQADAXgFaW50NjQBeQVpbnQ2NAdub2RlX2lkBnVpbnQzMgtkYmdwYWdlcm93cwABBHJvd3MGdWludDMyCGRiZ3B1cmdlAAIKdGFibGVfbmFtZQRuYW1lBXNjb3BlBW5hbWU/CGRiZ3NlYXRzAAMBeAVpbnQ2NAF5BWludDY0BXNlYXRzBnVpbnQzMg1kZWNvbXBfYnVja2V0AAMIY2F0ZWdvcnkFdWludDgEdGllcgV1aW50OAhyYXdfbWFzcwZ1aW50MzINZGVjb21wX3Jlc3VsdAADB2l0ZW1faWQGdWludDE2DnByb2Nlc3NlZF9tYXNzBnVpbnQ2NAdidWNrZXRzD2RlY29tcF9idWNrZXRbXQlkZWxlbnRpdHkAAQllbnRpdHlfaWQGdWludDY0DWRlbWFuZF9yZXN1bHQABQ1hYnVuZGFudF9tYXNrBXVpbnQ4DGxhY2tpbmdfbWFzawV1aW50OAVhY3V0ZQV1aW50OAduZWVkX2ZwCHVpbnQ2NFtdBWVwb2NoBnVpbnQzMghkZW1vbGlzaAABCWVudGl0eV9pZAZ1aW50NjQGZGVwbG95AAMCaWQGdWludDY0A3JlZgljYXJnb19yZWYEc2xvdA1jbHVzdGVyX3Nsb3Q/CmRlcG90X3ZpZXcABApwbGF5ZXJfY2FwBnVpbnQ2NAtzdG9yZWRfbWFzcwZ1aW50NjQNcmVzZXJ2ZWRfbWFzcwZ1aW50NjQEcm93cw1zdG9yYWdlX3Jvd1tdCmRlcG90c3RvcmUAAwdzaGlwX2lkBnVpbnQ2NAhkZXBvdF9pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdCWRlcG90dGFrZQADB3NoaXBfaWQGdWludDY0CGRlcG90X2lkBnVpbnQ2NAVpdGVtcwxjYXJnb19pdGVtW10KZGVzY2VudGl0eQAEB2l0ZW1faWQGdWludDE2Cmh1bGxfc3RhdHMGdWludDY0DG1vZHVsZV9pdGVtcwh1aW50MTZbXQxtb2R1bGVfc3RhdHMIdWludDY0W10GZW5hYmxlAAEHZW5hYmxlZARib29sDGVuZXJneV9zdGF0cwACCGNhcGFjaXR5BnVpbnQzMghyZWNoYXJnZQZ1aW50MzIUZW50aXR5X2N1cnJlbnRfc3RhdGUAAgtjb29yZGluYXRlcwtjb29yZGluYXRlcwZlbmVyZ3kGdWludDMyD2VudGl0eV9kZWZhdWx0cwACC3dhcmVob3VzZV96BnVpbnQxNgtjb250YWluZXJfegZ1aW50MTYLZW50aXR5X2luZm8AFwR0eXBlBG5hbWUCaWQGdWludDY0BW93bmVyBG5hbWULZW50aXR5X25hbWUGc3RyaW5nC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzB2l0ZW1faWQGdWludDE2CWNhcmdvbWFzcwZ1aW50MzIFY2FyZ28MY2FyZ29fdmlld1tdB21vZHVsZXMObW9kdWxlX2VudHJ5W10GZW5lcmd5B3VpbnQzMj8IaHVsbG1hc3MHdWludDMyPwhjYXBhY2l0eQd1aW50MzI/B2VuZ2luZXMPbW92ZW1lbnRfc3RhdHM/BHdhcnALd2FycF9zdGF0cz8JZ2VuZXJhdG9yDWVuZXJneV9zdGF0cz8GaGF1bGVyDWhhdWxlcl9zdGF0cz8OZ2F0aGVyZXJfbGFuZXMPZ2F0aGVyZXJfbGFuZVtdDWNyYWZ0ZXJfbGFuZXMOY3JhZnRlcl9sYW5lW10NYnVpbGRlcl9sYW5lcw5idWlsZGVyX2xhbmVbXQxsb2FkZXJfbGFuZXMNbG9hZGVyX2xhbmVbXQhsYXVuY2hlcg9sYXVuY2hlcl9zdGF0cz8FbGFuZXMGbGFuZVtdBWhvbGRzBmhvbGRbXQ1lbnRpdHlfbGF5b3V0AAMOZW50aXR5X2l0ZW1faWQGdWludDE2BXNsb3RzCnNsb3RfZGVmW10NYmFzZV9odWxsbWFzcwZ1aW50MzIVZW50aXR5X2xheW91dHNfcmVzdWx0AAEIZW50aXRpZXMPZW50aXR5X2xheW91dFtdCmVudGl0eV9yZWYAAgtlbnRpdHlfdHlwZQRuYW1lCWVudGl0eV9pZAZ1aW50NjQKZW50aXR5X3JvdwAMAmlkBnVpbnQ2NAVvd25lcgRuYW1lBGtpbmQEbmFtZQdpdGVtX2lkBnVpbnQxNgRuYW1lBnN0cmluZwVzdGF0cwZ1aW50NjQLY29vcmRpbmF0ZXMLY29vcmRpbmF0ZXMGZW5lcmd5B3VpbnQzMj8JY2FyZ29tYXNzBnVpbnQzMgdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdBWxhbmVzBmxhbmVbXQVob2xkcwZob2xkW10OZW50aXR5X3NlcV9yb3cAAQduZXh0X2lkBnVpbnQ2NA5lbnRpdHlfc3VtbWFyeQAIBHR5cGUEbmFtZQJpZAZ1aW50NjQFb3duZXIEbmFtZQtlbnRpdHlfbmFtZQZzdHJpbmcLY29vcmRpbmF0ZXMLY29vcmRpbmF0ZXMHaXNfaWRsZQRib29sDnJlc29sdmVkX2NvdW50BnVpbnQzMg1wZW5kaW5nX2NvdW50BnVpbnQzMhBlbnRpdHlfdGFza19pbmZvAAQJZW50aXR5X2lkBnVpbnQ2NAtlbnRpdHlfdHlwZQRuYW1lCnRhc2tfY291bnQGdWludDMyEHNjaGVkdWxlX3N0YXJ0ZWQKdGltZV9wb2ludA9lbnRpdHlncm91cF9yb3cAAgJpZAZ1aW50NjQMcGFydGljaXBhbnRzDGVudGl0eV9yZWZbXQtlbnVtX21lbWJlcgACBXZhbHVlBXVpbnQ4BG5hbWUGc3RyaW5nC2VudW1fcmVzdWx0AAEHbWVtYmVycw1lbnVtX21lbWJlcltdCWVwb2NoX3JvdwAEBWVwb2NoBnVpbnQ2NApvcmFjbGVfaWRzBm5hbWVbXQl0aHJlc2hvbGQFdWludDgEc2VlZAtjaGVja3N1bTI1NgxmaXhjYXJnb21hc3MAAQllbnRpdHlfaWQGdWludDY0CmZpeGl0ZW1pZHMAABBmb290cHJpbnRfcmVzdWx0AAEFY2VsbHMLZ3JpZF9jZWxsW10LZm9yY2VyZXZlYWwAAQVlcG9jaAZ1aW50NjQFZm91bmQABAZwbGF5ZXIEbmFtZQllbnRpdHlfaWQGdWludDY0AXgFaW50NjQBeQVpbnQ2NAtnYW1lX2NvbmZpZwADB3ZlcnNpb24GdWludDMyCGRlZmF1bHRzD2VudGl0eV9kZWZhdWx0cwVpdGVtcwppdGVtX2RlZltdBmdhdGhlcgAFCXNvdXJjZV9pZAZ1aW50NjQOZGVzdGluYXRpb25faWQGdWludDY0B3N0cmF0dW0GdWludDE2CHF1YW50aXR5BnVpbnQzMgRzbG90BnVpbnQ4Pw1nYXRoZXJlcl9sYW5lAAUKc2xvdF9pbmRleAV1aW50OAV5aWVsZAZ1aW50MTYFZHJhaW4GdWludDMyBWRlcHRoBnVpbnQxNgpvdXRwdXRfcGN0BnVpbnQxNgpnYXRoZXJwbGFuAAYJc291cmNlX2lkBnVpbnQ2NA5kZXN0aW5hdGlvbl9pZAZ1aW50NjQHc3RyYXR1bQZ1aW50MTYIcXVhbnRpdHkGdWludDMyCHJlY2hhcmdlBGJvb2wFc2xvdHMFYnl0ZXMMZ2VuZXNpc2ZsZWV0AAEIZW50aXRpZXMMZW50aXR5X3Jvd1tdDGdlbmVzaXN3b3JsZAAEB2ZvdW5kZXIEbmFtZQF4BWludDY0AXkFaW50NjQIbm9kZV9pZHMIdWludDMyW10MZ2V0YnVpbGRqb2JzAAELYnVpbGRpbmdfaWQGdWludDY0CmdldGNoYXJ0ZXIAAgF4BWludDY0AXkFaW50NjQMZ2V0Y2hhcnR0cmVlAAAMZ2V0Y2hydHJlYWR5AAAKZ2V0Y2x1c3RlcgABBmh1Yl9pZAZ1aW50NjQJZ2V0Y29uZmlnAAAMZ2V0Y3JhZnRqb2JzAAELYnVpbGRpbmdfaWQGdWludDY0CWdldGRlY29tcAABB2l0ZW1faWQGdWludDE2CWdldGRlbWFuZAACAXgFaW50NjQBeQVpbnQ2NApnZXRkZXBvc2l0AAIFb3duZXIEbmFtZQhhc3NldF9pZAZ1aW50NjQIZ2V0ZGVwb3QAAghkZXBvdF9pZAZ1aW50NjQFb3duZXIEbmFtZQtnZXRkaXN0YW5jZQAEAmF4BWludDY0AmF5BWludDY0AmJ4BWludDY0AmJ5BWludDY0C2dldGVsaWdpYmxlAAIGY29vcmRzC2Nvb3JkaW5hdGVzB3N0cmF0dW0GdWludDE2CWdldGVudGNscwAAC2dldGVudGl0aWVzAAIFb3duZXIEbmFtZQtlbnRpdHlfdHlwZQVuYW1lPwlnZXRlbnRpdHkAAQllbnRpdHlfaWQGdWludDY0DGdldGZvb3RwcmludAABB2l0ZW1faWQGdWludDE2C2dldGluZmRlY2F5AAIGYWN0aXZlBnVpbnQ2NAZlcG9jaHMGdWludDMyDGdldGluZmx1ZW5jZQADBW93bmVyBG5hbWUBeAVpbnQ2NAF5BWludDY0C2dldGluZnZhbHVlAAMFaXRlbXMMY2FyZ29faXRlbVtdAXgFaW50NjQBeQVpbnQ2NAtnZXRpdGVtZGF0YQAACmdldGl0ZW1pZHMAAAhnZXRpdGVtcwAAC2dldGl0ZW10eXBlAAEHaXRlbV9pZAZ1aW50MTYMZ2V0aXRlbXR5cGVzAAALZ2V0a2luZG1ldGEAAAtnZXRsb2NhdGlvbgACAXgFaW50NjQBeQVpbnQ2NApnZXRsb2NkYXRhAAIBeAVpbnQ2NAF5BWludDY0CmdldG1pbnRjZmcAAAxnZXRtaW50cmVhZHkAAAtnZXRtb2R0eXBlcwAACmdldG1vZHVsZXMAAAlnZXRuZWFyYnkAAgllbnRpdHlfaWQGdWludDY0CHJlY2hhcmdlBGJvb2wKZ2V0bmZ0YmFzZQAACmdldG5mdGluZm8AAAlnZXRwbGF5ZXIAAQdhY2NvdW50BG5hbWUHZ2V0cG9vbAACCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgIZ2V0cG9vbHMAAAxnZXRwcm9qc3RhdGUAAgllbnRpdHlfaWQGdWludDY0CnRhc2tfY291bnQGdWludDg/CWdldHJlY2lwZQABDm91dHB1dF9pdGVtX2lkBnVpbnQxNgpnZXRyZWNpcGVzAAILbG93ZXJfYm91bmQGdWludDE2BWxpbWl0BXVpbnQ4CmdldHJlc2NhdHMAAAtnZXRyZXNlcnZlcwACAXgFaW50NjQBeQVpbnQ2NAxnZXRyZXNvdXJjZXMAAAhnZXRzbG90cwAACmdldHN0cmF0dW0AAwF4BWludDY0AXkFaW50NjQHc3RyYXR1bQZ1aW50MTYMZ2V0c3VtbWFyaWVzAAIFb3duZXIEbmFtZQtlbnRpdHlfdHlwZQVuYW1lPwxnZXR2b3RlcmVhZHkAAAhnZXR2b3RlcwADAXgFaW50NjQBeQVpbnQ2NAZwbGF5ZXIEbmFtZQtnZXR3b3JtaG9sZQACAXgFaW50NjQBeQVpbnQ2NAlncmlkX2NlbGwAAgJneARpbnQ4Amd5BGludDgMZ3JvdXB0cmFuc2l0AAUIZW50aXRpZXMMZW50aXR5X3JlZltdAmF4BWludDY0AmF5BWludDY0AmJ4BWludDY0AmJ5BWludDY0C2dyb3VwdHJhdmVsAAQIZW50aXRpZXMMZW50aXR5X3JlZltdAXgFaW50NjQBeQVpbnQ2NAhyZWNoYXJnZQRib29sBGhhc2gAAQV2YWx1ZQZzdHJpbmcHaGFzaDUxMgABBXZhbHVlBnN0cmluZwxoYXVsZXJfc3RhdHMABAhjYXBhY2l0eQV1aW50OAplZmZpY2llbmN5BnVpbnQxNgVkcmFpbgZ1aW50MzIQY2FwYWNpdHlfYnlfdGllchFoYXVsZXJfdGllcl9jYXBbXQ9oYXVsZXJfdGllcl9jYXAAAgR0aWVyBXVpbnQ4CGNhcGFjaXR5BXVpbnQ4BGhvbGQABQJpZAZ1aW50NjQEa2luZAV1aW50OAtjb3VudGVycGFydAplbnRpdHlfcmVmBXVudGlsCnRpbWVfcG9pbnQNaW5jb21pbmdfbWFzcwZ1aW50MzILaW1wb3J0Y2FyZ28AAQNyb3cJY2FyZ29fcm93CmltcG9ydGNlbGwABARyb290BnVpbnQ2NAJneARpbnQ4Amd5BGludDgJZW50aXR5X2lkBnVpbnQ2NAxpbXBvcnRlbnRpdHkAAQNyb3cKZW50aXR5X3JvdwtpbXBvcnRlcG9jaAABA3JvdwllcG9jaF9yb3cLaW1wb3J0Z3JvdXAAAQNyb3cPZW50aXR5Z3JvdXBfcm93DGltcG9ydG5mdGNmZwABA3Jvdw1uZnRjb25maWdfcm93DGltcG9ydHBsYXllcgABBW93bmVyBG5hbWUNaW1wb3J0cmVzZXJ2ZQACC2Vwb2NoX3Njb3BlBnVpbnQzMgNyb3cLcmVzZXJ2ZV9yb3cLaW1wb3J0c3RhdGUAAQNyb3cJc3RhdGVfcm93C2luZmJ1cm5fcm93AAEDYnBzBnVpbnQxNg1pbmZkZW1hbmRfcm93AAMEcGVhawZ1aW50NjQEYmFzZQZ1aW50NjQFZmxvb3IGdWludDY0EGluZmx1ZW5jZV90b3RhbHMACxFzdGFuZGluZ19saWZldGltZQZ1aW50NjQPc3RhbmRpbmdfYWN0aXZlBnVpbnQ2NBRjaXRpemVuc2hpcF9saWZldGltZQZ1aW50NjQSY2l0aXplbnNoaXBfYWN0aXZlBnVpbnQ2NBFsb2NhdGlvbl9saWZldGltZQZ1aW50NjQPbG9jYXRpb25fYWN0aXZlBnVpbnQ2NAVzcGVudAZ1aW50NjQHbWFuZGF0ZQZ1aW50MzIHZm91bmRlcgRuYW1lB2ZvdW5kZWQGdWludDMyBWVwb2NoBnVpbnQzMgtpbmZtaW50X3JvdwADCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgJdGhyZXNob2xkBnVpbnQ2NAtpbmZwb29sX3JvdwAGCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgFZ3JhZGUFdWludDgIcXVhbnRpdHkGdWludDY0BXN0YXRzBnVpbnQ2NANiYXIGdWludDY0DmluZnF1YWxpdHlfcm93AAECZDEGdWludDMyD2luZnZhbHVlX3Jlc3VsdAACDHRvdGFsX2F0b21pYwZ1aW50NjQPcGVyX2l0ZW1fYXRvbWljCHVpbnQ2NFtdDWluZndlaWdodF9yb3cAAwhjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4CXdlaWdodF9mcAZ1aW50NjQIaXRlbV9kZWYABQJpZAZ1aW50MTYEbWFzcwZ1aW50MzIEdHlwZQV1aW50OAdzdWJ0eXBlBXVpbnQ4BHRpZXIFdWludDgMaXRlbV9pZF9wYWlyAAICaWQGdWludDE2BG5hbWUGc3RyaW5nD2l0ZW1faWRzX3Jlc3VsdAABBWl0ZW1zDml0ZW1faWRfcGFpcltdD2l0ZW1kYXRhX3Jlc3VsdAACBWl0ZW1zCml0ZW1fZGVmW10HcmVjaXBlcw5yZWNpcGVzX3Jlc3VsdAppdGVtc19pbmZvAAEFaXRlbXMKaXRlbV9kZWZbXQtqb2JfcmVjZWlwdAADBmpvYl9pZAZ1aW50NjQJc3RhcnRzX2F0CnRpbWVfcG9pbnQMY29tcGxldGVzX2F0CnRpbWVfcG9pbnQEam9pbgABB2FjY291bnQEbmFtZRBraW5kX21ldGFfcmVzdWx0AAIFa2luZHMPa2luZF9tZXRhX3Jvd1tdCXRlbXBsYXRlcxN0ZW1wbGF0ZV9tZXRhX3Jvd1tdDWtpbmRfbWV0YV9yb3cABQRraW5kBG5hbWUOY2xhc3NpZmljYXRpb24FdWludDgQY2FwYWJpbGl0eV9mbGFncwV1aW50OAd6X2Nvb3JkBnVpbnQzMg1kZWZhdWx0X2xhYmVsBnN0cmluZwRsYW5lAAIIbGFuZV9rZXkFdWludDgIc2NoZWR1bGUIc2NoZWR1bGUGbGF1bmNoAAMLbGF1bmNoZXJfaWQGdWludDY0CmNhdGNoZXJfaWQGdWludDY0BWl0ZW1zDGNhcmdvX2l0ZW1bXQ5sYXVuY2hlcl9zdGF0cwADC2NoYXJnZV9yYXRlBnVpbnQxNgh2ZWxvY2l0eQZ1aW50MTYFZHJhaW4GdWludDE2BGxvYWQAAwJpZAZ1aW50NjQHZnJvbV9pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdC2xvYWRlcl9sYW5lAAQKc2xvdF9pbmRleAV1aW50OARtYXNzBnVpbnQzMgZ0aHJ1c3QGdWludDE2Cm91dHB1dF9wY3QGdWludDE2EGxvY2F0aW9uX2Rlcml2ZWQAAgxzdGF0aWNfcHJvcHMPbG9jYXRpb25fc3RhdGljBHNpemUGdWludDE2DWxvY2F0aW9uX2luZm8AAwZjb29yZHMLY29vcmRpbmF0ZXMJaXNfc3lzdGVtBGJvb2wLaXNfd29ybWhvbGUEYm9vbA9sb2NhdGlvbl9zdGF0aWMABQZjb29yZHMLY29vcmRpbmF0ZXMEdHlwZQ1sb2NhdGlvbl90eXBlB3N1YnR5cGUFdWludDgFc2VlZDAFdWludDgFc2VlZDEFdWludDgKbG9ja2VyX3JvdwADCGRlcG90X2lkBnVpbnQ2NAtzdG9yZWRfbWFzcwZ1aW50NjQNcmVzZXJ2ZWRfbWFzcwZ1aW50NjQMbWFuZGF0ZXNfcm93AAIHbm9kZV9pZAZ1aW50MzIHcmVwZWF0cwZ1aW50MTYTbWludF90aHJlc2hvbGRfdmlldwADCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgJdGhyZXNob2xkBnVpbnQ2NA5taW50Y2ZnX3Jlc3VsdAACCnRocmVzaG9sZHMVbWludF90aHJlc2hvbGRfdmlld1tdCGJ1cm5fYnBzBnVpbnQxNgltaW50cV9yb3cAAgJpZAZ1aW50NjQFZ3JhZGUFdWludDgJbWludHJlYWR5AAEJbWF4X21pbnRzB3VpbnQzMj8MbW9kdWxlX2VudHJ5AAIEdHlwZQV1aW50OAlpbnN0YWxsZWQOcGFja2VkX21vZHVsZT8LbW9kdWxlX2luZm8ABAJpZAZ1aW50MTYEbWFzcwZ1aW50MzILbW9kdWxlX3R5cGUFdWludDgEdGllcgV1aW50OA5tb2R1bGVzX3Jlc3VsdAABB21vZHVsZXMNbW9kdWxlX2luZm9bXQ5tb3ZlbWVudF9zdGF0cwACBnRocnVzdAZ1aW50MzIFZHJhaW4GdWludDMyCG1vdmV0aWxlAAUGaHViX2lkBnVpbnQ2NAdmcm9tX2d4BGludDgHZnJvbV9neQRpbnQ4BXRvX2d4BGludDgFdG9fZ3kEaW50OApuYXR1cmFsaXplAAMGcGxheWVyBG5hbWUBeAVpbnQ2NAF5BWludDY0C25lYXJieV9pbmZvAAUKY2FuX3RyYXZlbARib29sB2N1cnJlbnQUZW50aXR5X2N1cnJlbnRfc3RhdGUJcHJvamVjdGVkFGVudGl0eV9jdXJyZW50X3N0YXRlCm1heF9lbmVyZ3kGdWludDMyB3N5c3RlbXMPbmVhcmJ5X3N5c3RlbVtdDW5lYXJieV9zeXN0ZW0ABAhkaXN0YW5jZQZ1aW50NjQLZW5lcmd5X2Nvc3QGdWludDY0C2ZsaWdodF90aW1lBnVpbnQzMghsb2NhdGlvbg1sb2NhdGlvbl9pbmZvDm5mdF9jYXJnb19pdGVtAAQHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0B21vZHVsZXMObW9kdWxlX2VudHJ5W10IcXVhbnRpdHkGdWludDMyEG5mdF9pdGVtX3BheWxvYWQAAgRpdGVtDm5mdF9jYXJnb19pdGVtCGxvY2F0aW9uDGNvb3JkaW5hdGVzPw5uZnRfc2NoZW1hX2RlZgACC3NjaGVtYV9uYW1lBG5hbWUGZmllbGRzDnNjaGVtYV9maWVsZFtdEG5mdF90ZW1wbGF0ZV9kZWYAAwdpdGVtX2lkBnVpbnQxNgtzY2hlbWFfbmFtZQRuYW1lC3RlbXBsYXRlX2lkBWludDMyDW5mdGNvbmZpZ19yb3cAAwdpdGVtX2lkBnVpbnQxNgt0ZW1wbGF0ZV9pZAVpbnQzMgtzY2hlbWFfbmFtZQRuYW1lCW5mdGltZ3VybAACBGl0ZW0KY2FyZ29faXRlbQhsb2NhdGlvbgxjb29yZGluYXRlcz8ObmZ0aW5mb19yZXN1bHQAAgdzY2hlbWFzEG5mdF9zY2hlbWFfZGVmW10JdGVtcGxhdGVzEm5mdF90ZW1wbGF0ZV9kZWZbXQZub3RpZnkAAQVldmVudAp0YXNrX2V2ZW50EW9yYWNsZV9jb25maWdfcm93AAIJdGhyZXNob2xkBXVpbnQ4CGRlYWRsaW5lBnVpbnQzMgpvcmFjbGVfcm93AAECaWQEbmFtZQ1wYWNrZWRfbW9kdWxlAAIHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0CnBsYWNlY2FyZ28AAwVvd25lcgRuYW1lB2hvc3RfaWQGdWludDY0CGFzc2V0X2lkBnVpbnQ2NAtwbGFjZWVudGl0eQADBW93bmVyBG5hbWUIYXNzZXRfaWQGdWludDY0D3RhcmdldF9uZXh1c19pZAZ1aW50NjQLcGxheWVyX2luZm8AAwVvd25lcgRuYW1lCWlzX3BsYXllcgRib29sDGNvbXBhbnlfbmFtZQZzdHJpbmcKcGxheWVyX3JvdwABBW93bmVyBG5hbWUQcG9vbF9wYWlyX3Jlc3VsdAAJCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgHaXRlbV9pZAZ1aW50MTYRc3RhbmRhcmRfcXVhbnRpdHkGdWludDY0DnN0YW5kYXJkX3N0YXRzBnVpbnQ2NBBwcmVtaXVtX3F1YW50aXR5BnVpbnQ2NA1wcmVtaXVtX3N0YXRzBnVpbnQ2NANiYXIGdWludDY0CXRocmVzaG9sZAZ1aW50NjQJcG9vbF92aWV3AAcIY2F0ZWdvcnkFdWludDgEdGllcgV1aW50OAVncmFkZQV1aW50OAdpdGVtX2lkBnVpbnQxNghxdWFudGl0eQZ1aW50NjQFc3RhdHMGdWludDY0A2JhcgZ1aW50NjQMcG9vbHNfcmVzdWx0AAEFcG9vbHMLcG9vbF92aWV3W10McHJvZ3Jlc3Nfcm93AAIHbm9kZV9pZAZ1aW50MzIGYW1vdW50BnVpbnQ2NA1wcm9ncmVzc192aWV3AAIHbm9kZV9pZAZ1aW50MzIGYW1vdW50BnVpbnQ2NA9wcm9qZWN0ZWRfc3RhdGUAEQVvd25lcgRuYW1lC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzBmVuZXJneQd1aW50MzI/CWNhcmdvbWFzcwZ1aW50MzIFY2FyZ28MY2FyZ29fdmlld1tdCGh1bGxtYXNzB3VpbnQzMj8IY2FwYWNpdHkHdWludDMyPwdlbmdpbmVzD21vdmVtZW50X3N0YXRzPwR3YXJwC3dhcnBfc3RhdHM/CWdlbmVyYXRvcg1lbmVyZ3lfc3RhdHM/BmhhdWxlcg1oYXVsZXJfc3RhdHM/DmdhdGhlcmVyX2xhbmVzD2dhdGhlcmVyX2xhbmVbXQ1jcmFmdGVyX2xhbmVzDmNyYWZ0ZXJfbGFuZVtdDWJ1aWxkZXJfbGFuZXMOYnVpbGRlcl9sYW5lW10MbG9hZGVyX2xhbmVzDWxvYWRlcl9sYW5lW10IbGF1bmNoZXIPbGF1bmNoZXJfc3RhdHM/BHRpZXIFdWludDgIcmVjaGFyZ2UAAQJpZAZ1aW50NjQMcmVjaXBlX2lucHV0AAIHaXRlbV9pZAZ1aW50MTYIcXVhbnRpdHkGdWludDMyEHJlY2lwZV9pdGVtX2luZm8AAgJpZAZ1aW50MTYEbWFzcwZ1aW50MzIPcmVjaXBlX3Jlc3BvbnNlAAgOb3V0cHV0X2l0ZW1faWQGdWludDE2C291dHB1dF9tYXNzBnVpbnQzMgZpbnB1dHMOcmVjaXBlX2lucHV0W10Kc3RhdF9zbG90cxRzdGF0X3Nsb3RfcmVzcG9uc2VbXQ1ibGVuZF93ZWlnaHRzBWJ5dGVzC291dHB1dF9pdGVtEHJlY2lwZV9pdGVtX2luZm8LaW5wdXRfaXRlbXMScmVjaXBlX2l0ZW1faW5mb1tdD3NvdXJjZV9zdWJjbGFzcwd1aW50MTY/DnJlY2lwZXNfcmVzdWx0AAEHcmVjaXBlcxFyZWNpcGVfcmVzcG9uc2VbXQhyZWZpdF9vcAACAm9wBXVpbnQ4BHNsb3QFdWludDgMcmVmcnNoZW50aXR5AAEJZW50aXR5X2lkBnVpbnQ2NAxyZW1vdmVvcmFjbGUAAQlvcmFjbGVfaWQEbmFtZQZyZW5hbWUAAgJpZAZ1aW50NjQEbmFtZQZzdHJpbmcLcmVzZXJ2ZV9yb3cABQJpZAZ1aW50NjQIY29vcmRfaWQGdWludDY0B3N0cmF0dW0GdWludDE2CXJlbWFpbmluZwZ1aW50MzIKbGFzdF9ibG9jaxRibG9ja190aW1lc3RhbXBfdHlwZQdyZXNvbHZlAAICaWQGdWludDY0BWNvdW50B3VpbnQ2ND8PcmVzb2x2ZV9yZXN1bHRzAAYJZW50aXR5X2lkBnVpbnQ2NAtlbnRpdHlfdHlwZQRuYW1lDnJlc29sdmVkX2NvdW50BnVpbnQzMhRuZXdfc2NoZWR1bGVfc3RhcnRlZAt0aW1lX3BvaW50PwtlbnRpdHlncm91cAd1aW50NjQ/DWdyb3VwX21lbWJlcnMWQl92ZWN0b3JfZW50aXR5X3JlZl9FPwpyZXNvbHZlYWxsAAEFb3duZXIEbmFtZRJyZXNvbHZlYWxsX3Jlc3VsdHMAAgdzY2FubmVkBnVpbnQzMghyZXNvbHZlZAZ1aW50MzIMcmVzb2x2ZWVhcmx5AAICaWQGdWludDY0BWNvdW50B3VpbnQ2ND8NcmVzb3VyY2VfaW5mbwAEAmlkBnVpbnQxNgRtYXNzBnVpbnQzMghjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4DnJlc291cmNlX3N0YXRzAAMFc3RhdDEGdWludDE2BXN0YXQyBnVpbnQxNgVzdGF0MwZ1aW50MTYQcmVzb3VyY2VzX3Jlc3VsdAABCXJlc291cmNlcw9yZXNvdXJjZV9pbmZvW10GcmV2ZWFsAAMJb3JhY2xlX2lkBG5hbWUFZXBvY2gGdWludDY0BnJldmVhbAtjaGVja3N1bTI1NgpyZXZlYWxfcm93AAQCaWQGdWludDY0BWVwb2NoBnVpbnQ2NAlvcmFjbGVfaWQEbmFtZQZyZXZlYWwLY2hlY2tzdW0yNTYIcm1tb2R1bGUAAwllbnRpdHlfaWQGdWludDY0DG1vZHVsZV9pbmRleAV1aW50OAp0YXJnZXRfcmVmCmNhcmdvX3JlZj8Icm1uZnRjZmcAAQdpdGVtX2lkBnVpbnQxNg5yb3V0ZV93YXlwb2ludAACAXgFaW50NjQBeQVpbnQ2NAhzY2hlZHVsZQACB3N0YXJ0ZWQKdGltZV9wb2ludAV0YXNrcwZ0YXNrW10Mc2NoZW1hX2ZpZWxkAAIEbmFtZQZzdHJpbmcKZmllbGRfdHlwZQZzdHJpbmcJc2VhdF92aWV3AAQHbm9kZV9pZAZ1aW50MzIEY29zdAZ1aW50NjQIcHJvZ3Jlc3MGdWludDY0A2dhcAZ1aW50NjQIc2V0Y2l2aWMAAQdhY2NvdW50BG5hbWUKc2V0Y2x1c3RlcgABA3JvdwtjbHVzdGVyX3JvdwlzZXRjb29yZHMAAwllbnRpdHlfaWQGdWludDY0AXgFaW50NjQBeQVpbnQ2NAtzZXRkZWFkbGluZQABCGRlYWRsaW5lBnVpbnQzMgpzZXRpbmZidXJuAAEDYnBzBnVpbnQxNghzZXRpbmZkMQABAmQxBnVpbnQzMgxzZXRpbmZkZW1hbmQAAwRwZWFrBnVpbnQ2NARiYXNlBnVpbnQ2NAVmbG9vcgZ1aW50NjQKc2V0aW5mbWludAADCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgJdGhyZXNob2xkBnVpbnQ2NAxzZXRpbmZ3ZWlnaHQAAwhjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4CXdlaWdodF9mcAZ1aW50NjQJc2V0bmV4dGlkAAEHbmV4dF9pZAZ1aW50NjQJc2V0bmZ0Y2ZnAAMHaXRlbV9pZAZ1aW50MTYLdGVtcGxhdGVfaWQFaW50MzILc2NoZW1hX25hbWUEbmFtZQxzZXR0aHJlc2hvbGQAAQl0aHJlc2hvbGQFdWludDgMc2V0dGxlYmFsbG90AAIJYmFsbG90X2lkBnVpbnQ2NAltYXhfcGFnZXMGdWludDMyDHNldHVud3JhcG1pbgABCGFzc2V0X2lkBnVpbnQ2NAtzZXR3cmFwY29zdAADCWl0ZW1fdHlwZQV1aW50OAR0aWVyBXVpbnQ4BmFtb3VudAZ1aW50NjQKc2V0d3JhcGZlZQACB2ZlZV9wY3QGdWludDE2C2ZlZV9hY2NvdW50BG5hbWUHc2h1dHRsZQAEB2NhcnJpZXIGdWludDY0B2Zyb21faWQGdWludDY0BXRvX2lkBnVpbnQ2NAVpdGVtcwxjYXJnb19pdGVtW10Ic2xvdF9kZWYAAwR0eXBlBXVpbnQ4Cm91dHB1dF9wY3QGdWludDE2CG1heF90aWVyBXVpbnQ4DHN0YW5kaW5nX3JvdwAEB2FjY291bnQEbmFtZQhsaWZldGltZQZ1aW50NjQGYWN0aXZlBnVpbnQ2NAxhY3RpdmVfZXBvY2gGdWludDMyEnN0YXRfc2xvdF9yZXNwb25zZQABB3NvdXJjZXMNc3RhdF9zb3VyY2VbXQtzdGF0X3NvdXJjZQACC2lucHV0X2luZGV4BXVpbnQ4EGlucHV0X3N0YXRfaW5kZXgFdWludDgJc3RhdGVfcm93AAMHZW5hYmxlZARib29sBWVwb2NoBnVpbnQzMgRzZWVkC2NoZWNrc3VtMjU2C3N0b3JhZ2Vfcm93AAcCaWQGdWludDY0BW93bmVyBG5hbWUHaXRlbV9pZAZ1aW50NjQIcXVhbnRpdHkGdWludDY0BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdC3NlcXVlbmNlX2lkB3VpbnQ2ND8Jc3Rvd2NhcmdvAAUFb3duZXIEbmFtZQllbnRpdHlfaWQGdWludDY0CG5leHVzX2lkBnVpbnQ2NAhjYXJnb19pZAZ1aW50NjQIcXVhbnRpdHkGdWludDY0CnN0b3dlbnRpdHkAAwVvd25lcgRuYW1lCWVudGl0eV9pZAZ1aW50NjQIbmV4dXNfaWQGdWludDY0DHN0cmF0dW1fZGF0YQACB3N0cmF0dW0Mc3RyYXR1bV9pbmZvBXN0YXRzDnJlc291cmNlX3N0YXRzDHN0cmF0dW1faW5mbwAFB2l0ZW1faWQGdWludDE2BHNlZWQGdWludDY0CHJpY2huZXNzBnVpbnQxNgdyZXNlcnZlBnVpbnQzMgtyZXNlcnZlX21heAZ1aW50MzIRc3RyYXR1bV9yZW1haW5pbmcAAwdzdHJhdHVtBnVpbnQxNglyZW1haW5pbmcGdWludDMyCmxhc3RfYmxvY2sUYmxvY2tfdGltZXN0YW1wX3R5cGUKc3dhcG1vZHVsZQADCWVudGl0eV9pZAZ1aW50NjQMbW9kdWxlX2luZGV4BXVpbnQ4Cm1vZHVsZV9yZWYJY2FyZ29fcmVmCHN3YXB0aWxlAAUGaHViX2lkBnVpbnQ2NARhX2d4BGludDgEYV9neQRpbnQ4BGJfZ3gEaW50OARiX2d5BGludDgEdGFzawAMBHR5cGUFdWludDgIZHVyYXRpb24GdWludDMyCmNhbmNlbGFibGUFdWludDgLY29vcmRpbmF0ZXMMY29vcmRpbmF0ZXM/BWNhcmdvDGNhcmdvX2l0ZW1bXQljb3VwbGluZ3MKY291cGxpbmdbXQdzdWJqZWN0C2VudGl0eV9yZWY/C2VudGl0eWdyb3VwB3VpbnQ2ND8LZW5lcmd5X2Nvc3QHdWludDMyPw50YXJnZXRfaXRlbV9pZAd1aW50MTY/BXJlZml0CXJlZml0X29wPwxjaGFydGVyX25vZGUHdWludDMyPwp0YXNrX2V2ZW50AAoKZXZlbnRfdHlwZQV1aW50OAVvd25lcgRuYW1lC2VudGl0eV90eXBlBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAp0YXNrX2luZGV4BnVpbnQzMgR0YXNrBHRhc2sJc3RhcnRzX2F0CnRpbWVfcG9pbnQMY29tcGxldGVzX2F0CnRpbWVfcG9pbnQKbmV3X2VuZXJneQd1aW50MzI/CGxhbmVfa2V5BXVpbnQ4DHRhc2tfcmVzdWx0cwABCGVudGl0aWVzEmVudGl0eV90YXNrX2luZm9bXRF0ZW1wbGF0ZV9tZXRhX3JvdwADB2l0ZW1faWQGdWludDE2BGtpbmQEbmFtZQ1kaXNwbGF5X2xhYmVsBnN0cmluZwd0cmFuc2l0AAUCaWQGdWludDY0AmF4BWludDY0AmF5BWludDY0AmJ4BWludDY0AmJ5BWludDY0BnRyYXZlbAAEAmlkBnVpbnQ2NAF4BWludDY0AXkFaW50NjQIcmVjaGFyZ2UEYm9vbAp0cmF2ZWxwbGFuAAMIZW50aXRpZXMMZW50aXR5X3JlZltdCXdheXBvaW50cxByb3V0ZV93YXlwb2ludFtdCHJlY2hhcmdlBGJvb2wJdHlwZXNfcm93ABACaWQGdWludDY0E2VudGl0eV9zdW1tYXJ5X3R5cGUOZW50aXR5X3N1bW1hcnkQZ2FtZV9jb25maWdfdHlwZQtnYW1lX2NvbmZpZxZzdHJhdHVtX3JlbWFpbmluZ190eXBlEXN0cmF0dW1fcmVtYWluaW5nFW5mdF9pdGVtX3BheWxvYWRfdHlwZRBuZnRfaXRlbV9wYXlsb2FkEmRlY29tcF9yZXN1bHRfdHlwZQ1kZWNvbXBfcmVzdWx0EmRlbWFuZF9yZXN1bHRfdHlwZQ1kZW1hbmRfcmVzdWx0FGluZnZhbHVlX3Jlc3VsdF90eXBlD2luZnZhbHVlX3Jlc3VsdBVpbmZsdWVuY2VfdG90YWxzX3R5cGUQaW5mbHVlbmNlX3RvdGFscxFwb29sc19yZXN1bHRfdHlwZQxwb29sc19yZXN1bHQVcG9vbF9wYWlyX3Jlc3VsdF90eXBlEHBvb2xfcGFpcl9yZXN1bHQTbWludGNmZ19yZXN1bHRfdHlwZQ5taW50Y2ZnX3Jlc3VsdBNjaGFydGVyX3Jlc3VsdF90eXBlDmNoYXJ0ZXJfcmVzdWx0GGNoYXJ0ZXJyZWFkeV9yZXN1bHRfdHlwZRNjaGFydGVycmVhZHlfcmVzdWx0EHZvdGVfcmVzdWx0X3R5cGULdm90ZV9yZXN1bHQPZGVwb3Rfdmlld190eXBlCmRlcG90X3ZpZXcIdW5kZXBsb3kAAgdob3N0X2lkBnVpbnQ2NAl0YXJnZXRfaWQGdWludDY0BnVubG9hZAADAmlkBnVpbnQ2NAV0b19pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdB3VwZ3JhZGUABQpidWlsZGVyX2lkBnVpbnQ2NAl0YXJnZXRfaWQGdWludDY0DnRhcmdldF9pdGVtX2lkBnVpbnQxNgZpbnB1dHMMY2FyZ29faXRlbVtdBHNsb3QGdWludDg/C3ZvdGVfb3B0aW9uAAUHbm9kZV9pZAZ1aW50MzIEY29zdAZ1aW50NjQEc2VhdAZ1aW50MzIGd2VpZ2h0BnVpbnQ2NARyYW5rBnVpbnQzMgt2b3RlX3Jlc3VsdAAJC2xvY2F0aW9uX2lkBnVpbnQ2NAliYWxsb3RfaWQGdWludDY0BWVwb2NoBnVpbnQzMg1zZXR0bGVkX2Vwb2NoBnVpbnQzMgVzZWF0cwZ1aW50MzIIc2V0dGxpbmcEYm9vbAVxdWV1ZQh1aW50MzJbXQdvcHRpb25zDXZvdGVfb3B0aW9uW10FcGlja3MIdWludDMyW10Jdm90ZXJlYWR5AAEJbWF4X3BhZ2VzBnVpbnQzMgR3YXJwAAMCaWQGdWludDY0AXgFaW50NjQBeQVpbnQ2NAp3YXJwX3N0YXRzAAEFcmFuZ2UGdWludDMyBHdpcGUAAAp3b3JsZHNfcm93AAkLbG9jYXRpb25faWQGdWludDY0CGxpZmV0aW1lBnVpbnQ2NAZhY3RpdmUGdWludDY0DGFjdGl2ZV9lcG9jaAZ1aW50MzIFc3BlbnQGdWludDY0CnVuYXNzaWduZWQGdWludDY0CWJhbGxvdF9pZAZ1aW50NjQHZm91bmRlcgRuYW1lB2ZvdW5kZWQGdWludDMyDXdvcm1ob2xlX2luZm8AAwZjb29yZHMLY29vcmRpbmF0ZXMLaXNfd29ybWhvbGUEYm9vbAtkZXN0aW5hdGlvbgtjb29yZGluYXRlcw53cmFwY29uZmlnX3JvdwADB2ZlZV9wY3QGdWludDE2C2ZlZV9hY2NvdW50BG5hbWUMbWluX2Fzc2V0X2lkBnVpbnQ2NAx3cmFwY29zdF9yb3cAAwlpdGVtX3R5cGUFdWludDgEdGllcgV1aW50OAZhbW91bnQGdWludDY0oAEAMo110jTNMQthYmFuZG9ucGxvdAAAwHE3T4pSMgphZGRjb250cmliAAAAUFEnKlMyCWFkZG1vZHVsZccDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGFkZG1vZHVsZQpzdW1tYXJ5OiAnSW5zdGFsbCBhIG1vZHVsZSBpbnRvIGEgc2xvdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW5zdGFsbCBhIG1vZHVsZSBmcm9tIGNhcmdvIGludG8gYSBtb2R1bGUgc2xvdCBvbiBhIGxpdmUgZW50aXR5IG9yIGEgcGFja2VkIGVudGl0eSBpbiBjYXJnby4gVGhlIGVudGl0eSBtdXN0IGJlIGlkbGUgd2l0aCBubyBzY2hlZHVsZWQgdGFza3MuIFRoZSBtb2R1bGUgdHlwZSBtdXN0IGJlIGNvbXBhdGlibGUgd2l0aCB0aGUgdGFyZ2V0IHNsb3QgdHlwZS4gVGhlIG1vZHVsZSBpdGVtIGlzIHJlbW92ZWQgZnJvbSBjYXJnbyB1cG9uIGluc3RhbGxhdGlvbi4AAABYdzVTMghhZGRuZXh1c6cDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGFkZG5leHVzCnN1bW1hcnk6ICdBZGQgYSBuZXh1cyBsb2NhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ3JlYXRlIGEgbmV3IG5leHVzIGVudGl0eSBhdCB0aGUgZ2l2ZW4gY29vcmRpbmF0ZXMuIE5leHVzZXMgYXJlIG93bmVkIGJ5IHRoZSBjb250cmFjdCBhbmQgc2VydmUgYXMgZml4ZWQgZ2F0aGVyaW5nIHBvaW50cyB3aGVyZSBwbGF5ZXJzIGNhbiB3cmFwLCB1bndyYXAsIGRlcGxveSwgYW5kIG90aGVyd2lzZSBpbnRlcmFjdCB3aXRoIE5GVC1iYWNrZWQgYXNzZXRzLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAABQEZlLUzIJYWRkb3JhY2xlAAAAAACANFU8BWJsZW5k/AItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogYmxlbmQKc3VtbWFyeTogJ0JsZW5kIGNhcmdvIHN0YWNrcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ29tYmluZSBtdWx0aXBsZSBjYXJnbyBzdGFja3Mgb2YgdGhlIHNhbWUgaXRlbSB0eXBlIGludG8gYSBzaW5nbGUgc3RhY2sgd2l0aCBuZXcgYmxlbmRlZCBzdGF0cy4gQWxsIGlucHV0IHN0YWNrcyBtdXN0IHNoYXJlIHRoZSBzYW1lIGl0ZW0gaWQuIFRoZSBvdXRwdXQgc3RhY2sgaGFzIHRoZSBjb21iaW5lZCBxdWFudGl0eSBvZiBhbGwgaW5wdXRzLgAAAIe+FJ0+CGJ1aWxkam9iAAAAyDTWFJ0+CWJ1aWxkcGxvdAAAAAAARIWmQQZjYW5jZWzCAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjYW5jZWwKc3VtbWFyeTogJ0NhbmNlbCBzY2hlZHVsZWQgdGFza3MnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkNhbmNlbCB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiB0YXNrcyBmcm9tIHRoZSBlbmQgb2YgYW4gZW50aXR5J3Mgc2NoZWR1bGUuIFRhc2tzIHRoYXQgYXJlIGltbXV0YWJsZSBhbmQgaW4gcHJvZ3Jlc3MgY2Fubm90IGJlIGNhbmNlbGxlZC4AUnT6RIWmQQtjYW5jZWxidWlsZAAAkNsORYWmQQtjYW5jZWxjaXZpYwAA8jIXRYWmQQtjYW5jZWxjcmFmdAAAQKYxmpOxQQpjYXN0YmFsbG90AOCTUfeqfE1DDGNoYXJ0ZXJyZWFkeQCgYs66YeS2QwxjaXZpY3NodXR0bGUAAECKTh/pTEQKY2xhaW1idWlsZAAAQF7mIulMRApjbGFpbWNyYWZ0AAAAyDRW6UxECWNsYWltcGxvdABwVb4mY+lMRAxjbGFpbXN0YXJ0ZXIAAACoG99pVEQJY2xlYW5yc3Zw7AItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY2xlYW5yc3ZwCnN1bW1hcnk6ICdDbGVhbiB1cCBwYXN0IGVwb2NoIHJlc2VydmVzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpFcmFzZSByZXNlcnZlIHRhYmxlIHJvd3MgZnJvbSBhIHBhc3QgZXBvY2guIENhbm5vdCBjbGVhbiB0aGUgY3VycmVudCBvciBmdXR1cmUgZXBvY2hzLiBUaGUgbWF4X3Jvd3MgcGFyYW1ldGVyIGNhcHMgdGhlIG51bWJlciBvZiByb3dzIGVyYXNlZCBwZXIgY2FsbCB0byBsaW1pdCBDUFUgdXNhZ2UuAICKx+RrVEQKY2xlYXJ0YWJsZb4BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNsZWFydGFibGUKc3VtbWFyeTogJ0RFQlVHOiBjbGVhcnRhYmxlIGFjdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQBAQ7QqhWlECmNsb3NlZXBvY2gAkJe56KqMdUQMY2x1c3RlcmNyYWZ0AAAAAABkJyVFBmNvbW1pdOwBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNvbW1pdApzdW1tYXJ5OiAnU2V0IGNvbW1pdCB2YWx1ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKU2V0IHRoZSBpbml0aWFsIGNvbW1pdCB2YWx1ZSBkdXJpbmcgZ2FtZSBpbml0aWFsaXphdGlvbi4AAGA0MrcmRQljb25maWdsb2fdAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjb25maWdsb2cKc3VtbWFyeTogJ0xvZyBnYW1lIGNvbmZpZ3VyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiB0aGF0IGxvZ3MgdGhlIGN1cnJlbnQgZ2FtZSBjb25maWd1cmF0aW9uLiBDYWxsZWQgaW5saW5lIGFmdGVyIGluaXRpYWxpemF0aW9uIHRvIGJyb2FkY2FzdCBjb25maWcgdmlhIGFjdGlvbiB0cmFjZXMuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AAAAAgLzMRQVjcmFmdMgDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNyYWZ0CnN1bW1hcnk6ICdDcmFmdCBpdGVtcyBmcm9tIGEgcmVjaXBlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUcmFuc2Zvcm0gY2FyZ28gaXRlbXMgaW50byBhIG5ldyBpdGVtIHVzaW5nIGEgcmVjaXBlLiBUaGUgZW50aXR5IG11c3QgaGF2ZSBhIGNyYWZ0ZXIgbW9kdWxlIGluc3RhbGxlZC4gQ29uc3VtZXMgZW5lcmd5IGFuZCBzY2hlZHVsZXMgYSBjcmFmdGluZyB0YXNrIHdpdGggZHVyYXRpb24gYmFzZWQgb24gdG90YWwgaW5wdXQgbWFzcyBhbmQgY3JhZnRlciBzcGVlZC4gSW5wdXQgcXVhbnRpdGllcyBtdXN0IGV4YWN0bHkgbWF0Y2ggdGhlIHJlY2lwZSByZXF1aXJlbWVudHMuAAAAh768zEUIY3JhZnRqb2IAAADILqmL2EkJZGJnY3JlZGl0AACAyiZNI9lJCmRiZ21hbmRhdGUAADCnVzFT2UkLZGJncGFnZXJvd3MAAAAAil1d2UkIZGJncHVyZ2UAAAAAOBuF2UkIZGJnc2VhdHMAAADw2eWpokoJZGVsZW50aXR5AAAAAA27SKVKCGRlbW9saXNo8QMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZGVtb2xpc2gKc3VtbWFyeTogJ0RlbW9saXNoIGEgc3RhdGlvbmFyeSBlbnRpdHknCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkRlY29tbWlzc2lvbiBhbiBlbnRpdHksIGVyYXNpbmcgaXQgZnJvbSB0aGUgZ2FtZS4gVGhlIGVudGl0eSBtdXN0IGJlIGlkbGUsIGhhdmUgZW1wdHkgY2FyZ28sIGFuZCBoYXZlIG5vIGluc3RhbGxlZCBtb2R1bGVzIChyZW1vdmUgZWFjaCB2aWEgcm1tb2R1bGUgZmlyc3QpLiBTY2hlZHVsZXMgYSBkZW1vbGlzaCB0YXNrIHRoYXQgZXJhc2VzIHRoZSBlbnRpdHkgb24gcmVzb2x1dGlvbi4gT25seSB2YWxpZCBmb3IgZW50aXRpZXMgdGhhdCBjYW5ub3QgbW92ZTsgdXNlIHVuZGVwbG95IG9yIHdyYXBlbnRpdHkgZm9yIHRoZSByZXN0LgAAAAB4GqtKBmRlcGxveewCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGRlcGxveQpzdW1tYXJ5OiAnRGVwbG95IGEgcGFja2VkIGVudGl0eScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVW5wYWNrIGEgcGFja2VkIGVudGl0eSBpdGVtIChwYWNrZWQgc2hpcCBvciBwYWNrZWQgY29udGFpbmVyKSBmcm9tIGNhcmdvLCBzY2hlZHVsaW5nIGEgZGVwbG95IHRhc2sgdGhhdCBjcmVhdGVzIHRoZSBuZXcgZW50aXR5IGF0IHRoZSBkZXBsb3lpbmcgZW50aXR5J3MgbG9jYXRpb24gdXBvbiByZXNvbHV0aW9uLgCAujTjTKtKCmRlcG90c3RvcmUAAABQ0ORMq0oJZGVwb3R0YWtlAACAzy5PhbBKCmRlc2NlbnRpdHnJAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBkZXNjZW50aXR5CnN1bW1hcnk6ICdEZXNjcmliZSBhIHBhY2tlZCBlbnRpdHknCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIGEgaHVtYW4tcmVhZGFibGUgZGVzY3JpcHRpb24gc3RyaW5nIGZvciBhIHBhY2tlZCBlbnRpdHksIGRlcml2ZWQgZnJvbSB0aGUgZW50aXR5IGl0ZW0gaWQsIGh1bGwgc3RhdHMsIGFuZCB0aGUgbGlzdCBvZiBpbnN0YWxsZWQgbW9kdWxlIGl0ZW0gaWRzIGFuZCBzdGF0cy4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyBhbmQgTkZUIHJlbmRlcmVycyB0byBkaXNwbGF5IHBhY2tlZCBlbnRpdGllcy4AAAAAqHjMVAZlbmFibGXdAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBlbmFibGUKc3VtbWFyeTogJ1NldCBlbmFibGVkIHN0YXRlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGlzIGdhbWUgb2YgU2hpcGxvYWQugLGRlF2DulsMZml4Y2FyZ29tYXNzkAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZml4Y2FyZ29tYXNzCnN1bW1hcnk6ICdERUJVRzogcmVjb21wdXRlIGVudGl0eSBjYXJnbyBtYXNzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZWNvbXB1dGUgYW5kIHJld3JpdGUgYW4gZW50aXR5J3MgY2FyZ28gbWFzcyBmcm9tIGl0cyBjdXJyZW50IGNhcmdvLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuIEF2YWlsYWJsZSBmb3IgcmVwYWlyaW5nIGRyaWZ0IGJldHdlZW4gY2FjaGVkIGNhcmdvIG1hc3MgYW5kIHRoZSB0cnVlIG1hc3MgZGVyaXZlZCBmcm9tIGNhcmdvIHJvd3MuAABOTqrsulsKZml4aXRlbWlkcwAAolFbXYUuXQtmb3JjZXJldmVhbL4ELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGZvcmNlcmV2ZWFsCnN1bW1hcnk6ICdERUJVRzogZm9yY2UtZmluYWxpemUgYW4gZXBvY2ggZnJvbSBleGlzdGluZyByZXZlYWxzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpGaW5hbGl6ZSBhIHN0dWNrIGVwb2NoIGJ5IGNvbXB1dGluZyBpdHMgc2VlZCBmcm9tIHRoZSByZXZlYWxzIGFscmVhZHkgc3VibWl0dGVkLCB3aXRob3V0IHdhaXRpbmcgZm9yIHRoZSBjb25maWd1cmVkIHRocmVzaG9sZC4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LiBUaGUgc2VlZCBpcyBkZXJpdmVkIHNvbGVseSBmcm9tIHRoZSBwcmUtaW1hZ2UtbG9ja2VkIHJldmVhbHMgYWxyZWFkeSBvbiBjaGFpbjsgbm8gYWRtaW4tc3VwcGxpZWQgZW50cm9weSBpcyBpbnRyb2R1Y2VkLiBVc2VkIHRvIHVuYmxvY2sgZXBvY2ggcHJvZ3Jlc3Npb24gd2hlbiB0aGUgdGhyZXNob2xkIGNhbm5vdCBvdGhlcndpc2UgYmUgbWV0LgAAAACANDVdBWZvdW5kAAAAAABc1bJhBmdhdGhlcpcDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdhdGhlcgpzdW1tYXJ5OiAnR2F0aGVyIHJlc291cmNlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKR2F0aGVyIHJlc291cmNlcyBhdCB0aGUgc2hpcCdzIGN1cnJlbnQgbG9jYXRpb24uIE9ubHkgd29ya3MgYXQgZ2F0aGVyYWJsZSBsb2NhdGlvbiB0eXBlcy4gU2NoZWR1bGVzIGEgZ2F0aGVyIHRhc2sgdGhhdCBjb25zdW1lcyBlbmVyZ3kgYW5kIHlpZWxkcyBjYXJnbyBiYXNlZCBvbiB0aGUgc2hpcCdzIGdhdGhlcmVyIHN0YXRzIGFuZCB0aGUgbG9jYXRpb24ncyByZXNvdXJjZSBjb21wb3NpdGlvbi4AwDSxXtWyYQpnYXRoZXJwbGFuAJCVigs7rKZiDGdlbmVzaXNmbGVldKkELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdlbmVzaXNmbGVldApzdW1tYXJ5OiAnTWludCB0aGUgb25lLXRpbWUgZ2VuZXNpcyBmbGVldCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRW1wbGFjZSB0aGUgb25lLXRpbWUgZ2VuZXNpcyBmbGVldDogYSBjYWxsZXItc3VwcGxpZWQgc2V0IG9mIGVudGl0aWVzIChzaGlwcywgc3RydWN0dXJlcywgYW5kIGNvbnRhaW5lcnMpIHdyaXR0ZW4gdG8gdGhlIHdvcmxkIGFzLWlzLiBWYWxpZCBvbmx5IGR1cmluZyB0aGUgcHJlLWdlbmVzaXMgd2luZG93LCBiZWZvcmUgZXBvY2ggMSBpcyBmaW5hbGl6ZWQuIFRoZSBzdXBwbGllZCBlbnRpdHkgaWRzIGFyZSBob25vcmVkIGFuZCB0aGUgaWQgc2VxdWVuY2UgaXMgYWR2YW5jZWQgcGFzdCB0aGVtOyBpZCAwIGlzIHJlc2VydmVkIGZvciB0aGUgR2VuZXNpcyBOZXh1cy4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LpDipRw7rKZiDGdlbmVzaXN3b3JsZOcHLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdlbmVzaXN3b3JsZApzdW1tYXJ5OiAnRm91bmQgYSB3b3JsZCBhdCBnYW1lIGxhdW5jaCB3aXRoIGl0cyBjaXZpYyBjaGFydGVycyBhbHJlYWR5IGNvbXBsZXRlZCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRm91bmQgYSBwbGFuZXQgYXMgYSB3b3JsZCBkdXJpbmcgdGhlIHByZS1nZW5lc2lzIHdpbmRvdywgYmVmb3JlIGVwb2NoIDEgaXMgZmluYWxpemVkLCB3aXRoIHRoZSBsaXN0ZWQgY2hhcnRlciBub2RlcyBjb21wbGV0ZWQgaW4gb3JkZXIuIFRoZSBmb3VuZGVyIG11c3QgaG9sZCBhIGNvbXBhbnkgb24gdGhlIHBsYXRmb3JtOyB0aGUgZm91bmRlciBpcyBjcmVkaXRlZCB3aXRoIGxpZmV0aW1lIGluZmx1ZW5jZSBlcXVhbCB0byB0aGUgc3VtbWVkIGNvc3Qgb2YgdGhlIGxpc3RlZCBub2RlcywgYW5kIGVhY2ggbm9kZSBpcyB0aGVuIGNvbXBsZXRlZCB0aHJvdWdoIHRoZSBzYW1lIHJ1bGVzIGEgY2hhcnRlciBjcmFuayBhcHBsaWVzOiBwcmVyZXF1aXNpdGVzIG11c3QgYmUgc2F0aXNmaWVkIGJ5IGVhcmxpZXIgbm9kZXMgaW4gdGhlIGxpc3QsIGEgc3Bhd24gbm9kZSBhZG9wdHMgYSBjaXZpYyBlbnRpdHkgb2YgaXRzIGtpbmQgYWxyZWFkeSBzdGFuZGluZyBhdCB0aGUgbG9jYXRpb24gb3Igc3Bhd25zIG9uZSwgYW5kIGEgcmVmaXQgbm9kZSByZWZpdHMgdGhlIGVudGl0eSByZWNvcmRlZCBmb3IgaXRzIHRhcmdldC4gU3BlbnQgYWR2YW5jZXMgYnkgZXZlcnkgbm9kZSdzIGNvc3QsIHNvIHRoZSByZXN1bHRpbmcgd29ybGQgaXMgb25lIGEgc2luZ2xlIGZvdW5kZXIgY291bGQgaGF2ZSBhZHZhbmNlZCBhbG9uZS4gRWFjaCBsb2NhdGlvbiBjYW4gYmUgZm91bmRlZCB0aGlzIHdheSBvbmNlLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkugA99KTp9smIMZ2V0YnVpbGRqb2JzAADAVfmahrJiCmdldGNoYXJ0ZXIAoNTN+ZqGsmIMZ2V0Y2hhcnR0cmVlAOCTUTffhrJiDGdldGNocnRyZWFkeQAAwFUZ64iyYgpnZXRjbHVzdGVyAAAAYG5NirJiCWdldGNvbmZpZ8oCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGNvbmZpZwpzdW1tYXJ5OiAnR2V0IGdhbWUgY29uZmlndXJhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyB0aGUgZ2FtZSBjb25maWd1cmF0aW9uIGluY2x1ZGluZyBkZWZhdWx0IGVudGl0eSBzdGF0cyBmb3Igd2FyZWhvdXNlcyBhbmQgY29udGFpbmVycywgYW5kIHRoZSBmdWxsIGl0ZW0gZGVmaW5pdGlvbnMgdGFibGUugA99eZmLsmIMZ2V0Y3JhZnRqb2JzAAAAqJIilbJiCWdldGRlY29tcAAAAEjTSJWyYglnZXRkZW1hbmQAAEB2mFaVsmIKZ2V0ZGVwb3NpdAAAAACZVpWyYghnZXRkZXBvdAAAFJomY5eyYgtnZXRkaXN0YW5jZQAAVDyOuaiyYgtnZXRlbGlnaWJsZcgDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVsaWdpYmxlCnN1bW1hcnk6ICdHZXQgZWxpZ2libGUgcmVzb3VyY2UgaXRlbSBJRHMgYXQgYSBsb2NhdGlvbiBhbmQgc3RyYXR1bScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGxpc3Qgb2YgcmVzb3VyY2UgaXRlbSBJRHMgZWxpZ2libGUgdG8gYmUgZ2F0aGVyZWQgYXQgdGhlIGdpdmVuIGNvb3JkaW5hdGVzIGFuZCBzdHJhdHVtIGRlcHRoLiBJdGVtcyBhcmUgZ2F0ZWQgYnkgYm90aCB0aGUgbG9jYXRpb24ncyByZXNvdXJjZSBwcm9maWxlIGFuZCB0aGUgZGVwdGggdGhyZXNob2xkIGZvciBlYWNoIHRpZXIuAADAEeWpsmIJZ2V0ZW50Y2xzjAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0ZW50Y2xzCnN1bW1hcnk6ICdHZXQgZW50aXR5IGNsYXNzIGVudW0gdmFsdWVzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgZnVsbCBzZXQgb2YgZW50aXR5IGNsYXNzIGVudW0gdmFsdWVzIGFuZCB0aGVpciBzdHJpbmcgbmFtZXMgKE9yYml0YWxWZXNzZWwsIFBsYW5ldGFyeVN0cnVjdHVyZSkuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGVjb2RlIGVudGl0eSBjbGFzcyBpZGVudGlmaWVycy4AsHLZ5amyYgtnZXRlbnRpdGllc6QCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVudGl0aWVzCnN1bW1hcnk6ICdHZXQgYWxsIGVudGl0aWVzIGZvciBhIHBsYXllcicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmV0dXJucyBmdWxsIGVudGl0eSBpbmZvIGZvciBhbGwgZW50aXRpZXMgb3duZWQgYnkgYSBwbGF5ZXIuIE9wdGlvbmFsbHkgZmlsdGVyIGJ5IGVudGl0eSB0eXBlLgAA8NnlqbJiCWdldGVudGl0eaICLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVudGl0eQpzdW1tYXJ5OiAnR2V0IGVudGl0eSBzdGF0ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmV0dXJucyB0aGUgY3VycmVudCBzdGF0ZSBvZiBhbiBlbnRpdHkgaW5jbHVkaW5nIGlkZW50aXR5LCBjYXJnbywgc2NoZWR1bGUgc3RhdGUsIGFuZCB0eXBlLXNwZWNpZmljIGZpZWxkcy6Qp7s1U7qyYgxnZXRmb290cHJpbnQAALxBKq3psmILZ2V0aW5mZGVjYXkAoNBUOq7psmIMZ2V0aW5mbHVlbmNlAACUjmav6bJiC2dldGluZnZhbHVlAABMNkmq7LJiC2dldGl0ZW1kYXRhqAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0aXRlbWRhdGEKc3VtbWFyeTogJ0dldCBmdWxsIGl0ZW0gY2F0YWxvZycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGNvbXBsZXRlIGl0ZW0gY2F0YWxvZyBhcyB0aGUgY29udHJhY3Qgc2VlcyBpdCwgaW5jbHVkaW5nIHR5cGUsIHN1YnR5cGUsIHRpZXIsIG1hc3MsIGFuZCBvdGhlciBzdGF0aWMgbWV0YWRhdGEuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgYW5kIGNsaWVudHMgdG8gbWlycm9yIHRoZSBjb250cmFjdCdzIGl0ZW0gZGVmaW5pdGlvbnMuAABOTqrssmIKZ2V0aXRlbWlkc4YDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGl0ZW1pZHMKc3VtbWFyeTogJ0dldCBpdGVtIGlkIHRvIG5hbWUgbWFwcGluZ3MnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIG1hcHBpbmcgb2YgaXRlbSBpZCBjb25zdGFudHMgdG8gdGhlaXIgY2Fub25pY2FsIHN0cmluZyBuYW1lcy4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byByZXNvbHZlIG51bWVyaWMgaXRlbSBpZHMgdG8gaHVtYW4tcmVhZGFibGUgaWRlbnRpZmllcnMuAAAAWKrssmIIZ2V0aXRlbXOaAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRpdGVtcwpzdW1tYXJ5OiAnR2V0IGFsbCBhdmFpbGFibGUgaXRlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgYSBsaXN0IG9mIGFsbCBpdGVtcyBpbiB0aGUgZ2FtZSBpbmNsdWRpbmcgdGhlaXIgaWQsIGJhc2UgcHJpY2UsIGFuZCBtYXNzLgBU9Vmq7LJiC2dldGl0ZW10eXBlAIBV9Vmq7LJiDGdldGl0ZW10eXBlc4gDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGl0ZW10eXBlcwpzdW1tYXJ5OiAnR2V0IGl0ZW0gdHlwZSBlbnVtIHZhbHVlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgc2V0IG9mIGl0ZW0gdHlwZSBlbnVtIHZhbHVlcyBhbmQgdGhlaXIgc3RyaW5nIG5hbWVzIChyZXNvdXJjZSwgY29tcG9uZW50LCBtb2R1bGUsIGVudGl0eSkuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGVjb2RlIGl0ZW0gdHlwZSBpZGVudGlmaWVycy4ATFYyTQezYgtnZXRraW5kbWV0YfgDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGtpbmRtZXRhCnN1bW1hcnk6ICdHZXQgZW50aXR5IGtpbmQgbWV0YWRhdGEnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBlbnRpdHkga2luZCByZWdpc3RyeSBhbmQgdGVtcGxhdGUgcmVnaXN0cnksIGluY2x1ZGluZyBlYWNoIGtpbmQncyBjbGFzc2lmaWNhdGlvbiwgY2FwYWJpbGl0eSBmbGFncywgWi1jb29yZGluYXRlLCBhbmQgZGVmYXVsdCBsYWJlbCwgcGx1cyB0aGUgbWFwcGluZyBvZiBlbnRpdHkgaXRlbSBpZHMgdG8ga2luZHMgd2l0aCBkaXNwbGF5IGxhYmVscy4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBpbnRlcnByZXQgZW50aXR5IGtpbmRzIGFuZCBjYXBhYmlsaXRpZXMuACZ12SAas2ILZ2V0bG9jYXRpb27iAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRsb2NhdGlvbgpzdW1tYXJ5OiAnR2V0IGxvY2F0aW9uIGluZm9ybWF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGluZm9ybWF0aW9uIGFib3V0IGEgbG9jYXRpb24gaW5jbHVkaW5nIHdoZXRoZXIgYSBzeXN0ZW0gZXhpc3RzLCBhbmQgZm9yIGVhY2ggaXRlbTogcHJpY2UsIHN1cHBseSwgcmFyaXR5IG11bHRpcGxpZXIsIGFuZCBsb2NhdGlvbiBtdWx0aXBsaWVyLgCAySYhGrNiCmdldGxvY2RhdGH+Ai0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRsb2NkYXRhCnN1bW1hcnk6ICdHZXQgZGVyaXZlZCBsb2NhdGlvbiBkYXRhJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGRlcml2ZWQgbG9jYXRpb24gZGF0YSBpbmNsdWRpbmcgc3RhdGljIHByb3BlcnRpZXMgKHR5cGUsIGRpZmZpY3VsdHksIHNlZWRzKSBmcm9tIHRoZSBnYW1lIHNlZWQgYW5kIGVwb2NoLXNwZWNpZmljIHByb3BlcnRpZXMgKGFjdGl2ZSwgc2VlZHMpIGZyb20gdGhlIGN1cnJlbnQgZXBvY2ggc2VlZC4AAFsoTyezYgpnZXRtaW50Y2ZnAOCTUTdPJ7NiDGdldG1pbnRyZWFkeQAAsKo+JyqzYgtnZXRtb2R0eXBlc9YDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldG1vZHR5cGVzCnN1bW1hcnk6ICdHZXQgbW9kdWxlIHR5cGUgZW51bSB2YWx1ZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBtb2R1bGUgdHlwZSBlbnVtIHZhbHVlcyBhbmQgdGhlaXIgc3RyaW5nIG5hbWVzIChhbnksIGVuZ2luZSwgZ2VuZXJhdG9yLCBnYXRoZXJlciwgbG9hZGVyLCB3YXJwLCBjcmFmdGVyLCBsYXVuY2hlciwgc3RvcmFnZSwgaGF1bGVyKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZWNvZGUgbW9kdWxlIHN1YnR5cGUgaWRlbnRpZmllcnMgYW5kIHNsb3QgY29tcGF0aWJpbGl0eS4AAFZRJyqzYgpnZXRtb2R1bGVzgAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0bW9kdWxlcwpzdW1tYXJ5OiAnR2V0IGFsbCBtb2R1bGUgaXRlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBzdWJzZXQgb2YgaXRlbXMgY2xhc3NpZmllZCBhcyBtb2R1bGVzLCBpbmNsdWRpbmcgZWFjaCBtb2R1bGUncyBpZCwgbWFzcywgc3VidHlwZSwgYW5kIHRpZXIuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZW51bWVyYXRlIGluc3RhbGxhYmxlIGVxdWlwbWVudC4AAPDnGjWzYglnZXRuZWFyYnnKAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRuZWFyYnkKc3VtbWFyeTogJ0dldCBuZWFyYnkgcmVhY2hhYmxlIHN5c3RlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgbmVhcmJ5IHN5c3RlbXMgcmVhY2hhYmxlIGJ5IGFuIGVudGl0eSBmcm9tIGl0cyBwcm9qZWN0ZWQgbG9jYXRpb24uIFJldHVybnMgY3VycmVudCBzdGF0ZSAod2l0aCBjb21wbGV0ZWQgdGFza3MgcmVzb2x2ZWQpLCBwcm9qZWN0ZWQgc3RhdGUgKGFmdGVyIGFsbCBzY2hlZHVsZWQgdGFza3MpLCBhbmQgYSBsaXN0IG9mIHJlYWNoYWJsZSBzeXN0ZW1zIHdpdGggZGlzdGFuY2UsIGVuZXJneSBjb3N0LCBhbmQgZmxpZ2h0IHRpbWUuAIDC5uQ1s2IKZ2V0bmZ0YmFzZQAAAF3T5TWzYgpnZXRuZnRpbmZv8AMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0bmZ0aW5mbwpzdW1tYXJ5OiAnR2V0IE5GVCBzY2hlbWEgYW5kIHRlbXBsYXRlIGNvbmZpZ3VyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBBdG9taWNBc3NldHMgc2NoZW1hcyBhbmQgdGVtcGxhdGVzIHRoZSBnYW1lIGNvbnRyYWN0IGV4cGVjdHMsIHBsdXMgdGhlIGN1cnJlbnQgYGl0ZW1faWQg4oaSICh0ZW1wbGF0ZV9pZCwgc2NoZW1hX25hbWUpYCBtYXBwaW5nIHN0b3JlZCBpbiB0aGUgYG5mdGNvbmZpZ2AgdGFibGUuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gc3luYyBhdG9taWNhc3NldHMgc3RhdGUgd2l0aCB0aGUgY29udHJhY3QuAAC4yptYs2IJZ2V0cGxheWVy/QItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0cGxheWVyCnN1bW1hcnk6ICdHZXQgcGxheWVyIGluZm9ybWF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGluZm9ybWF0aW9uIGFib3V0IGEgcGxheWVyIGluY2x1ZGluZyBiYWxhbmNlLCBkZWJ0LCBuZXR3b3J0aCwgZW50aXR5IGNvdW50cywgYW5kIHByaWNpbmcgZm9yIG5leHQgcHVyY2hhc2VzLiBSZXR1cm5zIGlzX3BsYXllcj1mYWxzZSBpZiB0aGUgYWNjb3VudCBoYXMgbm90IGpvaW5lZCB0aGUgZ2FtZS4AAAAgUlqzYgdnZXRwb29sAAAAADhSWrNiCGdldHBvb2xzAKCyyfjRW7NiDGdldHByb2pzdGF0ZcsDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHByb2pzdGF0ZQpzdW1tYXJ5OiAnR2V0IHByb2plY3RlZCBlbnRpdHkgc3RhdGUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBwcm9qZWN0ZWQgc3RhdGUgb2YgYW4gZW50aXR5IGFmdGVyIGFwcGx5aW5nIHRoZSBuZXh0IHRhc2tfY291bnQgc2NoZWR1bGVkIHRhc2tzIChvciBhbGwgdGFza3MgaWYgdGFza19jb3VudCBpcyBvbWl0dGVkKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBwcmV2aWV3IHRoZSByZXN1bHQgb2YgYW4gZW50aXR5J3Mgc2NoZWR1bGUgd2l0aG91dCByZXNvbHZpbmcgb24tY2hhaW4uAABQ1SF1s2IJZ2V0cmVjaXBlpgMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0cmVjaXBlCnN1bW1hcnk6ICdHZXQgYSBzaW5nbGUgY3JhZnRpbmcgcmVjaXBlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgcmVjaXBlIHdob3NlIG91dHB1dCBtYXRjaGVzIHRoZSBnaXZlbiBpdGVtIGlkLCBpbmNsdWRpbmcgaXRzIGlucHV0cywgYmxlbmQgd2VpZ2h0cywgc3RhdCBzbG90cywgYW5kIHJlc29sdmVkIGl0ZW0gbWFzcyBpbmZvLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGRpc3BsYXkgY3JhZnRpbmcgcmVxdWlyZW1lbnRzLgAAVtUhdbNiCmdldHJlY2lwZXOsAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZWNpcGVzCnN1bW1hcnk6ICdMaXN0IGNyYWZ0aW5nIHJlY2lwZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIGEgcGFnaW5hdGVkIGxpc3Qgb2YgY3JhZnRpbmcgcmVjaXBlcyBzdGFydGluZyBhdCB0aGUgcHJvdmlkZWQgbG93ZXIgYm91bmQgb3V0cHV0IGl0ZW0gaWQsIHVwIHRvIHRoZSBzcGVjaWZpZWQgbGltaXQuIEVhY2ggZW50cnkgaW5jbHVkZXMgaW5wdXRzLCBibGVuZCB3ZWlnaHRzLCBzdGF0IHNsb3RzLCBhbmQgcmVzb2x2ZWQgaXRlbSBtYXNzIGluZm8uAADOBmF1s2IKZ2V0cmVzY2F0c54DLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlc2NhdHMKc3VtbWFyeTogJ0dldCByZXNvdXJjZSBjYXRlZ29yeSBlbnVtIHZhbHVlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgc2V0IG9mIHJlc291cmNlIGNhdGVnb3J5IGVudW0gdmFsdWVzIGFuZCB0aGVpciBzdHJpbmcgbmFtZXMgKG9yZSwgZ2FzLCByZWdvbGl0aCwgYmlvbWFzcywgY3J5c3RhbCkuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGVjb2RlIHJlc291cmNlIHN1YnR5cGUgaWRlbnRpZmllcnMuALDaV2F1s2ILZ2V0cmVzZXJ2ZXP8Ay0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZXNlcnZlcwpzdW1tYXJ5OiAnR2V0IGN1cnJlbnQgcmVzZXJ2ZSBtb2RpZmljYXRpb25zIGF0IGEgbG9jYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgdGhlIGNoYWluJ3MgbW9kaWZpY2F0aW9ucyB0byBkZXJpdmVkIHJlc2VydmVzIGF0IHRoZSBnaXZlbiBjb29yZGluYXRlIGZvciB0aGUgY3VycmVudCBlcG9jaCBhcyBhIGxpc3Qgb2Yge3N0cmF0dW0sIHJlbWFpbmluZ30gcGFpcnMuIFN0cmF0YSBub3QgcHJlc2VudCBpbiB0aGUgcmVzcG9uc2UgdXNlIHRoZWlyIGRlcml2ZWQgaW5pdGlhbCByZXNlcnZlLiBDb21wb3NlIHdpdGggU0RLIGRlcml2YXRpb24gdG8gZ2V0IHRoZSBmdWxsIHBlci1sb2NhdGlvbiBzdHJhdGEgdmlldy6AFbqaYnWzYgxnZXRyZXNvdXJjZXOHAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZXNvdXJjZXMKc3VtbWFyeTogJ0dldCBhbGwgcmVzb3VyY2UgaXRlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBzdWJzZXQgb2YgaXRlbXMgY2xhc3NpZmllZCBhcyByZXNvdXJjZXMsIGluY2x1ZGluZyBlYWNoIHJlc291cmNlJ3MgaWQsIG1hc3MsIHN1YnR5cGUsIGFuZCB0aWVyLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGVudW1lcmF0ZSBnYXRoZXJhYmxlIG1hdGVyaWFscy4AAAA404izYghnZXRzbG90c7sDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHNsb3RzCnN1bW1hcnk6ICdHZXQgZW50aXR5IHNsb3QgbGF5b3V0cycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIG1vZHVsZSBzbG90IGxheW91dCBmb3IgZXZlcnkgZW50aXR5IGl0ZW0gdHlwZSwgbGlzdGluZyB0aGUgb3JkZXJlZCBzbG90IHR5cGVzIGF2YWlsYWJsZSBmb3IgbW9kdWxlIGluc3RhbGxhdGlvbi4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZXRlcm1pbmUgd2hpY2ggbW9kdWxlIHR5cGVzIGFyZSBjb21wYXRpYmxlIHdpdGggYSBnaXZlbiBlbnRpdHkgaHVsbC4AgNTZ3IyzYgpnZXRzdHJhdHVt0gItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0c3RyYXR1bQpzdW1tYXJ5OiAnR2V0IHJlc291cmNlIHN0cmF0dW0gZGF0YScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyByZXNvdXJjZSBzdHJhdHVtIGRhdGEgZm9yIGEgc3BlY2lmaWMgZGVwdGggbGF5ZXIgYXQgYSBjb29yZGluYXRlLCBpbmNsdWRpbmcgdGhlIHN0cmF0dW0gc2VlZCBpbmZvIGFuZCBkZXJpdmVkIHJlc291cmNlIHN0YXRzLoCVu0ZKjbNiDGdldHN1bW1hcmllc+gCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHN1bW1hcmllcwpzdW1tYXJ5OiAnR2V0IGVudGl0eSBzdW1tYXJpZXMgZm9yIGEgcGxheWVyJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZXR1cm5zIGxpZ2h0d2VpZ2h0IHN1bW1hcmllcyBvZiBhbGwgZW50aXRpZXMgb3duZWQgYnkgYSBwbGF5ZXIgaW5jbHVkaW5nIHR5cGUsIGlkLCBvd25lciwgbmFtZSwgbG9jYXRpb24sIGFuZCBpZGxlIHN0YXR1cy4gT3B0aW9uYWxseSBmaWx0ZXIgYnkgZW50aXR5IHR5cGUu4JNRV2W6s2IMZ2V0dm90ZXJlYWR5AAAAAFhlurNiCGdldHZvdGVzAABUpE1eyrNiC2dldHdvcm1ob2xlAJAdnubmqullDGdyb3VwdHJhbnNpdAAAotrm5qrpZQtncm91cHRyYXZlbJoELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdyb3VwdHJhdmVsCnN1bW1hcnk6ICdNb3ZlIG11bHRpcGxlIGVudGl0aWVzIHRvZ2V0aGVyJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbml0aWF0ZSBncm91cCB0cmF2ZWwgZm9yIG11bHRpcGxlIGVudGl0aWVzIHRvIGEgZGVzdGluYXRpb24uIEFsbCBlbnRpdGllcyBtdXN0IGJlIGF0IHRoZSBzYW1lIGxvY2F0aW9uIGFuZCBvd25lZCBieSB0aGUgY2FsbGVyLiBBdCBsZWFzdCBvbmUgZW50aXR5IHdpdGggZW5naW5lcyBpcyByZXF1aXJlZCB0byBwcm92aWRlIHRocnVzdC4gRmxpZ2h0IGR1cmF0aW9uIGlzIGNhbGN1bGF0ZWQgZnJvbSBjb21iaW5lZCB0aHJ1c3QgYW5kIHRvdGFsIG1hc3Mgb2YgYWxsIGVudGl0aWVzLiBDcmVhdGVzIGFuIGVudGl0eWdyb3VwIGZvciBhdG9taWMgcmVzb2x1dGlvbiBhbmQgY2FuY2VsbGF0aW9uLgAAAAAA0LBpBGhhc2j4AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBoYXNoCnN1bW1hcnk6ICdDYWxjdWxhdGUgc2hhMjU2IGhhc2gnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkNhbGN1bGF0ZXMgdGhlIHNoYTI1NiBoYXNoIG9mIGEgc3RyaW5nIGJhc2VkIHVzaW5nIHRoZSBnYW1lIHNlZWQuAAAAQITSsGkHaGFzaDUxMvsBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGhhc2g1MTIKc3VtbWFyeTogJ0NhbGN1bGF0ZSBzaGE1MTIgaGFzaCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ2FsY3VsYXRlcyB0aGUgc2hhNTEyIGhhc2ggb2YgYSBzdHJpbmcgYmFzZWQgdXNpbmcgdGhlIGdhbWUgc2VlZC4AKLsG5UurdAtpbXBvcnRjYXJnbwAAQIwK5UurdAppbXBvcnRjZWxsAOCzy1PlS6t0DGltcG9ydGVudGl0eQAAGqJV5UurdAtpbXBvcnRlcG9jaAAAqqaX5UurdAtpbXBvcnRncm91cADAFspr5kurdAxpbXBvcnRuZnRjZmcAcJU3seZLq3QMaW1wb3J0cGxheWVyALqvwurmS6t0DWltcG9ydHJlc2VydmUAAFQ2GedLq3QLaW1wb3J0c3RhdGUAAAAAAAAwHX0Eam9pbsQBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGpvaW4Kc3VtbWFyeTogJ0pvaW4gYSBnYW1lJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpKb2luIGEgZ2FtZSBvZiBTaGlwbG9hZAAAAAA0NLWJBmxhdW5jaAAAAAAAAJAMjQRsb2FkAAAA8Mmom6eTCW1pbnRyZWFkeQAAAAAquqw2lQhtb3ZldGlsZQAAgPoumquzmQpuYXR1cmFsaXplAAAAiFcz6fKaCW5mdGltZ3VybLIDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IG5mdGltZ3VybApzdW1tYXJ5OiAnR2V0IE5GVCBpbWFnZSBVUkwgZm9yIGEgY2FyZ28gaXRlbScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGltYWdlIFVSTCB0aGUgY29udHJhY3QgZW1pdHMgZm9yIGEgZ2l2ZW4gY2FyZ28gaXRlbSwgb3B0aW9uYWxseSBzY29wZWQgdG8gYSBsb2NhdGlvbi4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyBhbmQgTkZUIHJlbmRlcmVycyB0byBmZXRjaCB0aGUgY2Fub25pY2FsIGFydHdvcmsgZm9yIGFuIGl0ZW0gb3IgcGFja2VkIGVudGl0eS4AAAAA+OUynQZub3RpZnmKAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBub3RpZnkKc3VtbWFyeTogJ1Rhc2sgbGlmZWN5Y2xlIG5vdGlmaWNhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW50ZXJuYWwgYWN0aW9uIHRoYXQgbm90aWZpZXMgZW50aXR5IG93bmVycyBvZiB0YXNrIGxpZmVjeWNsZSBldmVudHMgKHJlc29sdmVkLCBjYW5jZWxsZWQpLiBDYWxsZWQgaW5saW5lIHdoZW4gdGFza3MgY2hhbmdlIHN0YXRlLiBVc2VzIHJlcXVpcmVfcmVjaXBpZW50IHRvIGVuYWJsZSBvZmYtY2hhaW4gbW9uaXRvcmluZyB2aWEgYWN0aW9uIHRyYWNlcy4AAGXXIIVMrApwbGFjZWNhcmdvyQQtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcGxhY2VjYXJnbwpzdW1tYXJ5OiAnUmVzdG9yZSBORlQgY2FyZ28gb250byBhIGhvc3QgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gY2FsbGVkIGlubGluZSBieSB0aGUgcGxhdGZvcm0gY29udHJhY3Qgb25seS4gUmVzdG9yZXMgdGhlIGNhcmdvIHJlY29yZGVkIGluIGFuIHVud3JhcHBlZCBORlQgb250byBhIGhvc3QgZW50aXR5LiBWYWxpZGF0ZXMgaG9zdCBvd25lcnNoaXAsIGxvYWRlcnMsIGFuZCByZW1haW5pbmcgY2FwYWNpdHksIGRlc2VyaWFsaXplcyB0aGUgTkZUJ3MgaXRlbSBkYXRhLCBhbmQgYXBwZW5kcyBhbiB1bndyYXAgdGFzayB0byBkZWxpdmVyIHRoZSBjYXJnbyB0byB0aGUgaG9zdC4gVGhlIHBsYXRmb3JtIGNvbnRyYWN0IGNyZWRpdHMgdGhlIGRlcG9zaXQgcmVmdW5kIGFuZCBidXJucyB0aGUgYXNzZXQuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AfHZ5KoVMrAtwbGFjZWVudGl0ecAELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHBsYWNlZW50aXR5CnN1bW1hcnk6ICdNYXRlcmlhbGl6ZSBhIHBhY2tlZC1lbnRpdHkgTkZUIGFzIGEgbGl2ZSBlbnRpdHknCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiBjYWxsZWQgaW5saW5lIGJ5IHRoZSBwbGF0Zm9ybSBjb250cmFjdCBvbmx5LiBFbXBsYWNlcyBhIGxpdmUgb3JiaXRhbCB2ZXNzZWwgKHNoaXAgb3IgY29udGFpbmVyKSBmcm9tIGl0cyBwYWNrZWQtZW50aXR5IE5GVCBkYXRhIGF0IHRoZSByZWNvcmRlZCB3cmFwIG9yaWdpbiwgdGhlbiBxdWV1ZXMgdHJhdmVsIGFuZCByZWNoYXJnZSB0YXNrcyB0byBkZWxpdmVyIGl0IHRvIHRoZSB0YXJnZXQgbmV4dXMgYXQgZnVsbCBlbmVyZ3kuIFRoZSBwbGF0Zm9ybSBjb250cmFjdCBjcmVkaXRzIHRoZSBkZXBvc2l0IHJlZnVuZCBhbmQgYnVybnMgdGhlIGFzc2V0LiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAAAAil3TkLoIcmVjaGFyZ2XNAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiByZWNoYXJnZQpzdW1tYXJ5OiAnUmVjaGFyZ2Ugc2hpcCBlbmVyZ3knCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClNjaGVkdWxlIGEgcmVjaGFyZ2UgdGFzayBmb3IgYW4gZW50aXR5IHRvIHJlc3RvcmUgZW5lcmd5IHRvIGZ1bGwgY2FwYWNpdHkuIFRoZSByZWNoYXJnZSBkdXJhdGlvbiBkZXBlbmRzIG9uIGN1cnJlbnQgZW5lcmd5IGxldmVsIGFuZCByZWNoYXJnZSByYXRlLuCzy1M1fJe6DHJlZnJzaGVudGl0ebgDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHJlZnJzaGVudGl0eQpzdW1tYXJ5OiAnUmVmcmVzaCBkZXJpdmVkIGVudGl0eSBzdGF0ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmVjb21wdXRlIGRlcml2ZWQgZmllbGRzIG9uIGFuIGVudGl0eSBmcm9tIGl0cyBjdXJyZW50IGNhcmdvIGFuZCBtb2R1bGVzLCByZWZyZXNoaW5nIGNhcGFiaWxpdHkgc3RhdHMgYW5kIGNhcmdvIG1hc3MuIFRoZSBlbnRpdHkgbXVzdCBiZSBpZGxlIHdpdGggbm8gc2NoZWR1bGVkIHRhc2tzLiBVc2VkIHRvIHJlY29uY2lsZSBkZXJpdmVkIHN0YXRlIGFmdGVyIGRhdGEgbWlncmF0aW9ucyBvciBjb250cmFjdCB1cGdyYWRlcy6gIjKXqk2lugxyZW1vdmVvcmFjbGUAAAAAAChpproGcmVuYW1lAAAAAEDtSLG6B3Jlc29sdmXQAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiByZXNvbHZlCnN1bW1hcnk6ICdDb21wbGV0ZSBzY2hlZHVsZWQgdGFza3MnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlc29sdmUgY29tcGxldGVkIHRhc2tzIGluIGFuIGVudGl0eSdzIHNjaGVkdWxlLCBhcHBseWluZyB0aGVpciBlZmZlY3RzIChyZWNoYXJnZSBlbmVyZ3ksIHVwZGF0ZSBsb2NhdGlvbiwgbG9hZC91bmxvYWQgY2FyZ28pLiBJZiBjb3VudCBpcyBzcGVjaWZpZWQsIHJlc29sdmUgZXhhY3RseSB0aGF0IG1hbnkgdGFza3M7IG90aGVyd2lzZSByZXNvbHZlIGFsbCBjb21wbGV0ZWQgdGFza3MuIEZhaWxzIGlmIGNvdW50IGV4Y2VlZHMgdGhlIG51bWJlciBvZiBjb21wbGV0ZWQgdGFza3MuAECMRu1IsboKcmVzb2x2ZWFsbADg4zVK7UixugxyZXNvbHZlZWFybHkAAAAAAESjtroGcmV2ZWFsAAAAACrqRKW8CHJtbW9kdWxlvAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcm1tb2R1bGUKc3VtbWFyeTogJ1JlbW92ZSBhIG1vZHVsZSBmcm9tIGEgc2xvdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmVtb3ZlIGFuIGluc3RhbGxlZCBtb2R1bGUgZnJvbSBhIHNsb3Qgb24gYSBsaXZlIGVudGl0eSBvciBhIHBhY2tlZCBlbnRpdHkgaW4gY2FyZ28uIFRoZSBlbnRpdHkgbXVzdCBiZSBpZGxlIHdpdGggbm8gc2NoZWR1bGVkIHRhc2tzLiBUaGUgbW9kdWxlIGlzIHJldHVybmVkIHRvIGNhcmdvLiBGYWlscyBpZiB0aGUgZW50aXR5IGRvZXMgbm90IGhhdmUgZW5vdWdoIGNhcmdvIGNhcGFjaXR5IHRvIGhvbGQgdGhlIHJldHVybmVkIG1vZHVsZS4AAABsobymvAhybW5mdGNmZ6EDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHJtbmZ0Y2ZnCnN1bW1hcnk6ICdSZW1vdmUgTkZUIHRlbXBsYXRlIG1hcHBpbmcgZm9yIGFuIGl0ZW0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlbW92ZSB0aGUgQXRvbWljQXNzZXRzIHRlbXBsYXRlIG1hcHBpbmcgZm9yIHRoZSBzcGVjaWZpZWQgaXRlbSBpZCBmcm9tIHRoZSBgbmZ0Y29uZmlnYCB0YWJsZS4gQWZ0ZXIgcmVtb3ZhbCB0aGUgaXRlbSBjYW4gbm8gbG9uZ2VyIGJlIHdyYXBwZWQgb3IgdW53cmFwcGVkIHVudGlsIGEgbmV3IG1hcHBpbmcgaXMgc2V0LiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAAAAyG2HssIIc2V0Y2l2aWMAAMBVGeuIssIKc2V0Y2x1c3RlcgAAAMDpUoqywglzZXRjb29yZHMAANR0MRmVssILc2V0ZGVhZGxpbmUAAMC8+qzpssIKc2V0aW5mYnVybgAAAAAhremywghzZXRpbmZkMQCQppEqremywgxzZXRpbmZkZW1hbmQAAECeTq7pssIKc2V0aW5mbWludACQG3OKr+mywgxzZXRpbmZ3ZWlnaHQAAABILnc1s8IJc2V0bmV4dGlkAAAAYAvlNbPCCXNldG5mdGNmZ8QDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHNldG5mdGNmZwpzdW1tYXJ5OiAnU2V0IE5GVCB0ZW1wbGF0ZSBtYXBwaW5nIGZvciBhbiBpdGVtJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpCaW5kIGFuIGl0ZW0gaWQgdG8gYW4gQXRvbWljQXNzZXRzIHRlbXBsYXRlIGlkIGFuZCBzY2hlbWEgbmFtZS4gVXNlZCB0byBjb25maWd1cmUgaG93IHRoZSBjb250cmFjdCBtaW50cyBhbmQgcmVjb2duaXplcyBORlRzIGZvciBhIGdpdmVuIGl0ZW0uIEluc2VydHMgYSBuZXcgbWFwcGluZyBpZiBvbmUgZG9lcyBub3QgZXhpc3QsIG9yIHVwZGF0ZXMgdGhlIGV4aXN0aW5nIG1hcHBpbmcuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS6QIm1Y3ZazwgxzZXR0aHJlc2hvbGQAkGmM5qiYs8IMc2V0dGxlYmFsbG90ADCdrObyqbPCDHNldHVud3JhcG1pbgAAMqaomsuzwgtzZXR3cmFwY29zdAAAgFKrmsuzwgpzZXR3cmFwZmVlAAAAAEDFnHXDB3NodXR0bGUAAACg7BrEacYJc3Rvd2Nhcmdv1QUtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogc3Rvd2NhcmdvCnN1bW1hcnk6ICdSZXNlcnZlIGEgY2FyZ28gc3RhY2sgZm9yIHdyYXBwaW5nIGludG8gYW4gTkZUJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gY2FsbGVkIGlubGluZSBieSB0aGUgcGxhdGZvcm0gY29udHJhY3Qgb25seS4gUmVzZXJ2ZXMgYW5kIGNvbnN1bWVzIGEgY2FyZ28gc3RhY2sgb24gYSBsaXZlIGVudGl0eSBmb3Igd3JhcHBpbmcgaW50byBhbiBORlQuIFZhbGlkYXRlcyBlbnRpdHkgb3duZXJzaGlwLCBsb2FkZXJzLCBhbmQgcHJlc2VuY2UgYXQgdGhlIG5leHVzLCBhbmQgY29uZmlybXMgdGhlIHRhcmdldCBjYXJnbyBzdGFjayBpcyBhdmFpbGFibGUgYW5kIG5vdCByZXNlcnZlZCBieSBhIHBlbmRpbmcgdGFzay4gQ29tcHV0ZXMgdGhlIHdyYXAgY29zdCBhbmQgZmVlLCBkZWJpdHMgdGhlbSBmcm9tIHRoZSBvd25lcidzIHBsYXRmb3JtIGRlcG9zaXQgYmFsYW5jZSwgZGVyaXZlcyB0aGUgTkZUJ3MgaW1tdXRhYmxlIGRhdGEsIGFuZCBtaW50cyB0aGUgTkZUIGlubGluZSBhcyB0aGUgZ2FtZSBjb250cmFjdCBiZWZvcmUgY29uc3VtaW5nIHRoZSBjYXJnby4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LgCAzy5PxWnGCnN0b3dlbnRpdHmZBS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzdG93ZW50aXR5CnN1bW1hcnk6ICdSZXNlcnZlIGFuIGVudGl0eSBmb3Igd3JhcHBpbmcgaW50byBhbiBORlQnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiBjYWxsZWQgaW5saW5lIGJ5IHRoZSBwbGF0Zm9ybSBjb250cmFjdCBvbmx5LiBSZXNlcnZlcyBhIHdob2xlIGVudGl0eSAoc2hpcCwgY29udGFpbmVyLCBvciBwbGFuZXRhcnkgc3RydWN0dXJlKSBmb3Igd3JhcHBpbmcgaW50byBhbiBORlQuIFRoZSBlbnRpdHkgbXVzdCBiZSBpZGxlIHdpdGggZW1wdHkgY2FyZ28gYW5kIG5vIHNjaGVkdWxlZCB0YXNrcy4gQ29tcHV0ZXMgdGhlIHdyYXAgY29zdCBhbmQgZmVlLCBkZWJpdHMgdGhlbSBmcm9tIHRoZSBvd25lcidzIHBsYXRmb3JtIGRlcG9zaXQgYmFsYW5jZSwgZGVyaXZlcyB0aGUgZW50aXR5IE5GVCdzIGltbXV0YWJsZSBkYXRhLCBtaW50cyB0aGUgTkZUIGlubGluZSBhcyB0aGUgZ2FtZSBjb250cmFjdCwgYW5kIGVyYXNlcyB0aGUgZW50aXR5IGZyb20gdGhlIHdvcmxkLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAICKOlFZDccKc3dhcG1vZHVsZQAAAAAqulwNxwhzd2FwdGlsZQAAAAAgOzzNzQd0cmFuc2l0AAAAAABEtc3NBnRyYXZlbPsBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHRyYXZlbApzdW1tYXJ5OiAnTW92ZSBhIHNoaXAnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkluaXRpYXRlIHRyYXZlbCBvZiBhbiBlbnRpdHkgZnJvbSBpdHMgY3VycmVudCBsb2NhdGlvbiB0byBhIG5ldyBkZXN0aW5hdGlvbi4AwDSxRrXNzQp0cmF2ZWxwbGFuAAAAAJ7GqtLUCHVuZGVwbG955wQtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogdW5kZXBsb3kKc3VtbWFyeTogJ1BhY2sgYSBkZXBsb3llZCBlbnRpdHkgaW50byBhIGhvc3QnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClBhY2sgYW4gZW50aXR5IGludG8gYSBob3N0IGVudGl0eSdzIGNhcmdvIGFzIGEgcGFja2VkLWVudGl0eSBpdGVtLiBIb3N0IGFuZCB0YXJnZXQgbXVzdCBzaGFyZSB0aGUgc2FtZSBvd25lciBhbmQgY29vcmRpbmF0ZXMsIHRoZSBob3N0IG11c3QgaGF2ZSBsb2FkZXJzIGFuZCBlbm91Z2ggY2FwYWNpdHkgZm9yIHRoZSBwYWNrZWQgbWFzcywgYW5kIHRoZSB0YXJnZXQgbXVzdCBiZSBpZGxlIHdpdGggZW1wdHkgY2FyZ28uIENyZWF0ZXMgYW4gZW50aXR5Z3JvdXAgYW5kIHNjaGVkdWxlcyB1bmRlcGxveSB0YXNrcyBvbiBib3RoIGVudGl0aWVzOyBvbiByZXNvbHV0aW9uIHRoZSB0YXJnZXQgaXMgZXJhc2VkIGFuZCB0aGUgcGFja2VkIGVudGl0eSBpcyBhZGRlZCB0byB0aGUgaG9zdCdzIGNhcmdvLiBJbnZlcnNlIG9mIGRlcGxveS4AAAAAJEPj1AZ1bmxvYWQAAAAAQCVzWdUHdXBncmFkZQAAAPDJqKsy3Ql2b3RlcmVhZHkAAAAAAABQr+EEd2FycJ8DLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHdhcnAKc3VtbWFyeTogJ1dhcnAgdG8gYSBkZXN0aW5hdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW5zdGFudGx5IHRlbGVwb3J0IGFuIGVudGl0eSB0byBhIGRlc3RpbmF0aW9uIHN5c3RlbS4gUmVxdWlyZXMgd2FycCBjYXBhYmlsaXR5LCBmdWxsIGVuZXJneSwgZW1wdHkgY2FyZ28sIGFuZCBhbiBlbXB0eSBzY2hlZHVsZS4gVGhlIGRlc3RpbmF0aW9uIG11c3QgYmUgYSB2YWxpZCBzeXN0ZW0gd2l0aGluIHdhcnAgcmFuZ2UuIFJlc29sdmVzIGltbWVkaWF0ZWx5IGFzIGEgemVyby1kdXJhdGlvbiB0YXNrLgAAAAAAoKrjBHdpcGWyAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB3aXBlCnN1bW1hcnk6ICdERUJVRzogd2lwZSBhY3Rpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0oAAAAAGQaozkDaTY0AAAKYmFsbG90X3JvdwAwRK5mGqM5A2k2NAAAD2JhbGxvdHBpY2tzX3JvdwAAsApnGqM5A2k2NAAADmJhbGxvdF9zZXFfcm93oGLOCmcaozkDaTY0AAAQYmFsbG90c2V0dGxlX3JvdwAAwGy6FJ0+A2k2NAAADWJ1aWxkaW5nc19yb3cAAMCHvhSdPgNpNjQAAAxidWlsZGpvYl9yb3cAAAAAAMquQQNpNjQAAAljYXJnb19yb3cAqmt4qu+yQwNpNjQAAA9jaXRpemVuc2hpcF9yb3cAmFuTIuS2QwNpNjQAAA9jaXZpY2NvbmZpZ19yb3cAAAAAYOlMRANpNjQAAAljbGFpbV9yb3cAAADgqox1RANpNjQAAAtjbHVzdGVyX3JvdwAAAABkJyVFA2k2NAAACmNvbW1pdF9yb3cAAMCHvrzMRQNpNjQAAAxjcmFmdGpvYl9yb3cAAAAA+OzyVANpNjQAAAplbnRpdHlfcm93AKqml/ns8lQDaTY0AAAPZW50aXR5Z3JvdXBfcm93AACwCvvs8lQDaTY0AAAOZW50aXR5X3NlcV9yb3cAAAAAgIZoVQNpNjQAAAllcG9jaF9yb3cAAABgXn3WdANpNjQAAAtpbmZidXJuX3JvdwAASNNIldZ0A2k2NAAADWluZmRlbWFuZF9yb3cAAAAgTyfXdANpNjQAAAtpbmZtaW50X3JvdwAAACBSWtd0A2k2NAAAC2luZnBvb2xfcm93AIDPLhpt13QDaTY0AAAOaW5mcXVhbGl0eV9yb3cAAMiNOcXXdANpNjQAAA1pbmZ3ZWlnaHRfcm93AAAAAF8FEY0DaTY0AAAKbG9ja2VyX3JvdwAAAFhlk6aRA2k2NAAADG1hbmRhdGVzX3JvdwAAAAAAm6eTA2k2NAAACW1pbnRxX3JvdwAAYG5NivKaA2k2NAAADW5mdGNvbmZpZ19yb3cAAGALqYjMpQNpNjQAABFvcmFjbGVfY29uZmlnX3JvdwAAAACriMylA2k2NAAACm9yYWNsZV9yb3cAAAAAXOVNrANpNjQAAApwbGF5ZXJfcm93AAAAGKvL6K0DaTY0AAAMcHJvZ3Jlc3Nfcm93AAAAQO2rsLoDaTY0AAALcmVzZXJ2ZV9yb3cAAAAARKO2ugNpNjQAAApyZXZlYWxfcm93AAAAbLo0TcYDaTY0AAAMc3RhbmRpbmdfcm93AAAAAACVTcYDaTY0AAAJc3RhdGVfcm93AAAAQDFzacYDaTY0AAALc3RvcmFnZV9yb3cAAAAAAKyqzwNpNjQAAAl0eXBlc19yb3cAAAAA4BQv5QNpNjQAAAp3b3JsZHNfcm93AABza1JUzeUDaTY0AAAOd3JhcGNvbmZpZ19yb3cAAAAZU1TN5QNpNjQAAAx3cmFwY29zdF9yb3cBEVNoaXBsb2FkIChTZXJ2ZXIpEVNoaXBsb2FkIChTZXJ2ZXIpAAAAXQAyjXXSNM0xDHRhc2tfcmVzdWx0cwDAcTdPilIyDHRhc2tfcmVzdWx0cwAAAIe+FJ0+C2pvYl9yZWNlaXB0AADINNYUnT4MdGFza19yZXN1bHRzAAAAAESFpkEOY2FuY2VsX3Jlc3VsdHMAkNsORYWmQQ5jYW5jZWxfcmVzdWx0c6Bizrph5LZDDHRhc2tfcmVzdWx0cwAAyDRW6UxEDHRhc2tfcmVzdWx0c5CXueiqjHVEDHRhc2tfcmVzdWx0cwAAAACAvMxFDHRhc2tfcmVzdWx0cwAAAIe+vMxFC2pvYl9yZWNlaXB0AAAADbtIpUoMdGFza19yZXN1bHRzAAAAAHgaq0oMdGFza19yZXN1bHRzAIC6NONMq0oMdGFza19yZXN1bHRzAABQ0ORMq0oMdGFza19yZXN1bHRzAIDPLk+FsEoGc3RyaW5nAAAAAFzVsmEMdGFza19yZXN1bHRzAMA0sV7VsmEMdGFza19yZXN1bHRzgA99KTp9smIQYnVpbGRqb2JzX3Jlc3VsdADAVfmahrJiDmNoYXJ0ZXJfcmVzdWx0oNTN+ZqGsmITY2hhcnRlcl90cmVlX3Jlc3VsdOCTUTffhrJiE2NoYXJ0ZXJyZWFkeV9yZXN1bHQAwFUZ64iyYgtjbHVzdGVyX3JvdwAAYG5NirJiC2dhbWVfY29uZmlngA99eZmLsmIQY3JhZnRqb2JzX3Jlc3VsdAAAqJIilbJiDWRlY29tcF9yZXN1bHQAAEjTSJWyYg1kZW1hbmRfcmVzdWx0AEB2mFaVsmIOZXh0ZW5kZWRfYXNzZXQAAACZVpWyYgpkZXBvdF92aWV3ABSaJmOXsmIGdWludDY0AFQ8jrmosmIIdWludDE2W10AAMAR5amyYgtlbnVtX3Jlc3VsdACwctnlqbJiDWVudGl0eV9pbmZvW10AAPDZ5amyYgtlbnRpdHlfaW5mb5CnuzVTurJiEGZvb3RwcmludF9yZXN1bHQAvEEqremyYgZ1aW50NjSg0FQ6rumyYhBpbmZsdWVuY2VfdG90YWxzAJSOZq/psmIPaW5mdmFsdWVfcmVzdWx0AEw2SarssmIPaXRlbWRhdGFfcmVzdWx0AABOTqrssmIPaXRlbV9pZHNfcmVzdWx0AAAAWKrssmIKaXRlbXNfaW5mbwBU9Vmq7LJiBXVpbnQ4gFX1WarssmILZW51bV9yZXN1bHQATFYyTQezYhBraW5kX21ldGFfcmVzdWx0ACZ12SAas2INbG9jYXRpb25faW5mbwCAySYhGrNiEGxvY2F0aW9uX2Rlcml2ZWQAAFsoTyezYg5taW50Y2ZnX3Jlc3VsdOCTUTdPJ7NiBnVpbnQzMgCwqj4nKrNiC2VudW1fcmVzdWx0AABWUScqs2IObW9kdWxlc19yZXN1bHQAAPDnGjWzYgtuZWFyYnlfaW5mbwCAwubkNbNiCHN0cmluZ1tdAABd0+U1s2IObmZ0aW5mb19yZXN1bHQAALjKm1izYgtwbGF5ZXJfaW5mbwAAACBSWrNiEHBvb2xfcGFpcl9yZXN1bHQAAAA4UlqzYgxwb29sc19yZXN1bHSgssn40VuzYg9wcm9qZWN0ZWRfc3RhdGUAAFDVIXWzYg5yZWNpcGVzX3Jlc3VsdAAAVtUhdbNiDnJlY2lwZXNfcmVzdWx0AADOBmF1s2ILZW51bV9yZXN1bHQAsNpXYXWzYhNzdHJhdHVtX3JlbWFpbmluZ1tdgBW6mmJ1s2IQcmVzb3VyY2VzX3Jlc3VsdAAAADjTiLNiFWVudGl0eV9sYXlvdXRzX3Jlc3VsdACA1NncjLNiDHN0cmF0dW1fZGF0YYCVu0ZKjbNiEGVudGl0eV9zdW1tYXJ5W13gk1FXZbqzYgZ1aW50MzIAAABYZbqzYgt2b3RlX3Jlc3VsdABUpE1eyrNiDXdvcm1ob2xlX2luZm+QHZ7m5qrpZQx0YXNrX3Jlc3VsdHMAotrm5qrpZQx0YXNrX3Jlc3VsdHMAAAAAANCwaQtjaGVja3N1bTI1NgAAAECE0rBpC2NoZWNrc3VtNTEyAAAAADQ0tYkMdGFza19yZXN1bHRzAAAAAACQDI0MdGFza19yZXN1bHRzAAAAKrqsNpUMdGFza19yZXN1bHRzAACIVzPp8poGc3RyaW5nAABl1yCFTKwMdGFza19yZXN1bHRzAHx2eSqFTKwMdGFza19yZXN1bHRzAAAAil3TkLoMdGFza19yZXN1bHRzAAAAQO1IsboPcmVzb2x2ZV9yZXN1bHRzAECMRu1IsboScmVzb2x2ZWFsbF9yZXN1bHRz4OM1Su1IsboPcmVzb2x2ZV9yZXN1bHRzAAAAQMWcdcMMdGFza19yZXN1bHRzAACg7BrEacYMdGFza19yZXN1bHRzAIDPLk/FacYMdGFza19yZXN1bHRzAAAAKrpcDccMdGFza19yZXN1bHRzAAAAIDs8zc0MdGFza19yZXN1bHRzAAAAAES1zc0MdGFza19yZXN1bHRzAMA0sUa1zc0MdGFza19yZXN1bHRzAAAAnsaq0tQMdGFza19yZXN1bHRzAAAAACRD49QMdGFza19yZXN1bHRzAAAAQCVzWdUMdGFza19yZXN1bHRzAAAAAABQr+EMdGFza19yZXN1bHRz');
713
822
  ABI.from(abiBlob$1);
714
823
  var Types$1;
715
824
  (function (Types) {
@@ -848,6 +957,108 @@ var Types$1;
848
957
  Struct.type('addoracle')
849
958
  ], addoracle);
850
959
  Types.addoracle = addoracle;
960
+ let ballot_credit = class ballot_credit extends Struct {
961
+ };
962
+ __decorate([
963
+ Struct.field(Name)
964
+ ], ballot_credit.prototype, "account", void 0);
965
+ __decorate([
966
+ Struct.field(UInt64)
967
+ ], ballot_credit.prototype, "amount", void 0);
968
+ ballot_credit = __decorate([
969
+ Struct.type('ballot_credit')
970
+ ], ballot_credit);
971
+ Types.ballot_credit = ballot_credit;
972
+ let ballot_row = class ballot_row extends Struct {
973
+ };
974
+ __decorate([
975
+ Struct.field(UInt64)
976
+ ], ballot_row.prototype, "ballot_id", void 0);
977
+ __decorate([
978
+ Struct.field(UInt8)
979
+ ], ballot_row.prototype, "kind", void 0);
980
+ __decorate([
981
+ Struct.field(UInt64)
982
+ ], ballot_row.prototype, "subject", void 0);
983
+ __decorate([
984
+ Struct.field(UInt32)
985
+ ], ballot_row.prototype, "seats", void 0);
986
+ __decorate([
987
+ Struct.field(UInt32)
988
+ ], ballot_row.prototype, "settled_epoch", void 0);
989
+ __decorate([
990
+ Struct.field(UInt32, { array: true })
991
+ ], ballot_row.prototype, "queue", void 0);
992
+ __decorate([
993
+ Struct.field(ballot_credit, { array: true })
994
+ ], ballot_row.prototype, "parked", void 0);
995
+ ballot_row = __decorate([
996
+ Struct.type('ballot_row')
997
+ ], ballot_row);
998
+ Types.ballot_row = ballot_row;
999
+ let ballot_seq_row = class ballot_seq_row extends Struct {
1000
+ };
1001
+ __decorate([
1002
+ Struct.field(UInt64)
1003
+ ], ballot_seq_row.prototype, "next_id", void 0);
1004
+ __decorate([
1005
+ Struct.field(UInt64)
1006
+ ], ballot_seq_row.prototype, "cursor", void 0);
1007
+ __decorate([
1008
+ Struct.field(UInt32)
1009
+ ], ballot_seq_row.prototype, "page_rows", void 0);
1010
+ ballot_seq_row = __decorate([
1011
+ Struct.type('ballot_seq_row')
1012
+ ], ballot_seq_row);
1013
+ Types.ballot_seq_row = ballot_seq_row;
1014
+ let ballot_tally = class ballot_tally extends Struct {
1015
+ };
1016
+ __decorate([
1017
+ Struct.field(UInt32)
1018
+ ], ballot_tally.prototype, "option", void 0);
1019
+ __decorate([
1020
+ Struct.field(UInt64)
1021
+ ], ballot_tally.prototype, "weight", void 0);
1022
+ ballot_tally = __decorate([
1023
+ Struct.type('ballot_tally')
1024
+ ], ballot_tally);
1025
+ Types.ballot_tally = ballot_tally;
1026
+ let ballotpicks_row = class ballotpicks_row extends Struct {
1027
+ };
1028
+ __decorate([
1029
+ Struct.field(Name)
1030
+ ], ballotpicks_row.prototype, "account", void 0);
1031
+ __decorate([
1032
+ Struct.field(UInt32, { array: true })
1033
+ ], ballotpicks_row.prototype, "picks", void 0);
1034
+ ballotpicks_row = __decorate([
1035
+ Struct.type('ballotpicks_row')
1036
+ ], ballotpicks_row);
1037
+ Types.ballotpicks_row = ballotpicks_row;
1038
+ let ballotsettle_row = class ballotsettle_row extends Struct {
1039
+ };
1040
+ __decorate([
1041
+ Struct.field(UInt64)
1042
+ ], ballotsettle_row.prototype, "ballot_id", void 0);
1043
+ __decorate([
1044
+ Struct.field(UInt32)
1045
+ ], ballotsettle_row.prototype, "round", void 0);
1046
+ __decorate([
1047
+ Struct.field(UInt64)
1048
+ ], ballotsettle_row.prototype, "cursor", void 0);
1049
+ __decorate([
1050
+ Struct.field(UInt32)
1051
+ ], ballotsettle_row.prototype, "target_epoch", void 0);
1052
+ __decorate([
1053
+ Struct.field(ballot_tally, { array: true })
1054
+ ], ballotsettle_row.prototype, "tallies", void 0);
1055
+ __decorate([
1056
+ Struct.field(UInt32, { array: true })
1057
+ ], ballotsettle_row.prototype, "seated", void 0);
1058
+ ballotsettle_row = __decorate([
1059
+ Struct.type('ballotsettle_row')
1060
+ ], ballotsettle_row);
1061
+ Types.ballotsettle_row = ballotsettle_row;
851
1062
  let blend = class blend extends Struct {
852
1063
  };
853
1064
  __decorate([
@@ -878,6 +1089,99 @@ var Types$1;
878
1089
  Struct.type('builder_lane')
879
1090
  ], builder_lane);
880
1091
  Types.builder_lane = builder_lane;
1092
+ let buildings_row = class buildings_row extends Struct {
1093
+ };
1094
+ __decorate([
1095
+ Struct.field(UInt64)
1096
+ ], buildings_row.prototype, "entity_id", void 0);
1097
+ __decorate([
1098
+ Struct.field(UInt8)
1099
+ ], buildings_row.prototype, "building", void 0);
1100
+ buildings_row = __decorate([
1101
+ Struct.type('buildings_row')
1102
+ ], buildings_row);
1103
+ Types.buildings_row = buildings_row;
1104
+ let buildjob = class buildjob extends Struct {
1105
+ };
1106
+ __decorate([
1107
+ Struct.field(UInt64)
1108
+ ], buildjob.prototype, "target_id", void 0);
1109
+ __decorate([
1110
+ Struct.field(UInt64)
1111
+ ], buildjob.prototype, "dock_id", void 0);
1112
+ __decorate([
1113
+ Struct.field(UInt8)
1114
+ ], buildjob.prototype, "slot", void 0);
1115
+ __decorate([
1116
+ Struct.field(UInt16)
1117
+ ], buildjob.prototype, "target_item_id", void 0);
1118
+ __decorate([
1119
+ Struct.field(cargo_item, { array: true })
1120
+ ], buildjob.prototype, "inputs", void 0);
1121
+ buildjob = __decorate([
1122
+ Struct.type('buildjob')
1123
+ ], buildjob);
1124
+ Types.buildjob = buildjob;
1125
+ let coordinates = class coordinates extends Struct {
1126
+ };
1127
+ __decorate([
1128
+ Struct.field(Int64)
1129
+ ], coordinates.prototype, "x", void 0);
1130
+ __decorate([
1131
+ Struct.field(Int64)
1132
+ ], coordinates.prototype, "y", void 0);
1133
+ __decorate([
1134
+ Struct.field(UInt16, { optional: true })
1135
+ ], coordinates.prototype, "z", void 0);
1136
+ coordinates = __decorate([
1137
+ Struct.type('coordinates')
1138
+ ], coordinates);
1139
+ Types.coordinates = coordinates;
1140
+ let buildjob_row = class buildjob_row extends Struct {
1141
+ };
1142
+ __decorate([
1143
+ Struct.field(UInt64)
1144
+ ], buildjob_row.prototype, "id", void 0);
1145
+ __decorate([
1146
+ Struct.field(UInt64)
1147
+ ], buildjob_row.prototype, "building", void 0);
1148
+ __decorate([
1149
+ Struct.field(UInt8)
1150
+ ], buildjob_row.prototype, "socket", void 0);
1151
+ __decorate([
1152
+ Struct.field(UInt64)
1153
+ ], buildjob_row.prototype, "target", void 0);
1154
+ __decorate([
1155
+ Struct.field(Name)
1156
+ ], buildjob_row.prototype, "owner", void 0);
1157
+ __decorate([
1158
+ Struct.field(coordinates)
1159
+ ], buildjob_row.prototype, "coords", void 0);
1160
+ __decorate([
1161
+ Struct.field(TimePoint)
1162
+ ], buildjob_row.prototype, "starts_at", void 0);
1163
+ __decorate([
1164
+ Struct.field(TimePoint)
1165
+ ], buildjob_row.prototype, "completes_at", void 0);
1166
+ __decorate([
1167
+ Struct.field(UInt16)
1168
+ ], buildjob_row.prototype, "target_item_id", void 0);
1169
+ __decorate([
1170
+ Struct.field(cargo_item, { array: true })
1171
+ ], buildjob_row.prototype, "cargo", void 0);
1172
+ buildjob_row = __decorate([
1173
+ Struct.type('buildjob_row')
1174
+ ], buildjob_row);
1175
+ Types.buildjob_row = buildjob_row;
1176
+ let buildjobs_result = class buildjobs_result extends Struct {
1177
+ };
1178
+ __decorate([
1179
+ Struct.field(buildjob_row, { array: true })
1180
+ ], buildjobs_result.prototype, "jobs", void 0);
1181
+ buildjobs_result = __decorate([
1182
+ Struct.type('buildjobs_result')
1183
+ ], buildjobs_result);
1184
+ Types.buildjobs_result = buildjobs_result;
881
1185
  let buildplot = class buildplot extends Struct {
882
1186
  };
883
1187
  __decorate([
@@ -941,27 +1245,42 @@ var Types$1;
941
1245
  Struct.type('cancel_results')
942
1246
  ], cancel_results);
943
1247
  Types.cancel_results = cancel_results;
944
- let canceljob = class canceljob extends Struct {
1248
+ let cancelbuild = class cancelbuild extends Struct {
1249
+ };
1250
+ __decorate([
1251
+ Struct.field(UInt64)
1252
+ ], cancelbuild.prototype, "job_id", void 0);
1253
+ cancelbuild = __decorate([
1254
+ Struct.type('cancelbuild')
1255
+ ], cancelbuild);
1256
+ Types.cancelbuild = cancelbuild;
1257
+ let cancelcivic = class cancelcivic extends Struct {
945
1258
  };
946
1259
  __decorate([
947
1260
  Struct.field(UInt64)
948
- ], canceljob.prototype, "job_id", void 0);
1261
+ ], cancelcivic.prototype, "building", void 0);
1262
+ __decorate([
1263
+ Struct.field(UInt8)
1264
+ ], cancelcivic.prototype, "lane_key", void 0);
949
1265
  __decorate([
950
1266
  Struct.field(UInt64)
951
- ], canceljob.prototype, "ship_id", void 0);
952
- canceljob = __decorate([
953
- Struct.type('canceljob')
954
- ], canceljob);
955
- Types.canceljob = canceljob;
956
- let cancelupgrade = class cancelupgrade extends Struct {
1267
+ ], cancelcivic.prototype, "from_id", void 0);
1268
+ cancelcivic = __decorate([
1269
+ Struct.type('cancelcivic')
1270
+ ], cancelcivic);
1271
+ Types.cancelcivic = cancelcivic;
1272
+ let cancelcraft = class cancelcraft extends Struct {
957
1273
  };
958
1274
  __decorate([
959
1275
  Struct.field(UInt64)
960
- ], cancelupgrade.prototype, "job_id", void 0);
961
- cancelupgrade = __decorate([
962
- Struct.type('cancelupgrade')
963
- ], cancelupgrade);
964
- Types.cancelupgrade = cancelupgrade;
1276
+ ], cancelcraft.prototype, "job_id", void 0);
1277
+ __decorate([
1278
+ Struct.field(UInt64)
1279
+ ], cancelcraft.prototype, "ship_id", void 0);
1280
+ cancelcraft = __decorate([
1281
+ Struct.type('cancelcraft')
1282
+ ], cancelcraft);
1283
+ Types.cancelcraft = cancelcraft;
965
1284
  let cargo_row = class cargo_row extends Struct {
966
1285
  };
967
1286
  __decorate([
@@ -1013,27 +1332,39 @@ var Types$1;
1013
1332
  Struct.type('cargo_view')
1014
1333
  ], cargo_view);
1015
1334
  Types.cargo_view = cargo_view;
1016
- let charter_effect = class charter_effect extends Struct {
1335
+ let castballot = class castballot extends Struct {
1017
1336
  };
1018
1337
  __decorate([
1019
- Struct.field(UInt8)
1020
- ], charter_effect.prototype, "kind", void 0);
1338
+ Struct.field(Name)
1339
+ ], castballot.prototype, "player", void 0);
1021
1340
  __decorate([
1022
- Struct.field(UInt16)
1023
- ], charter_effect.prototype, "item_id", void 0);
1341
+ Struct.field(UInt64)
1342
+ ], castballot.prototype, "ballot_id", void 0);
1024
1343
  __decorate([
1025
- Struct.field(UInt16)
1026
- ], charter_effect.prototype, "target_item_id", void 0);
1344
+ Struct.field(UInt32, { array: true })
1345
+ ], castballot.prototype, "picks", void 0);
1346
+ castballot = __decorate([
1347
+ Struct.type('castballot')
1348
+ ], castballot);
1349
+ Types.castballot = castballot;
1350
+ let civic_grant = class civic_grant extends Struct {
1351
+ };
1027
1352
  __decorate([
1028
- Struct.field(UInt16)
1029
- ], charter_effect.prototype, "slot_mask", void 0);
1353
+ Struct.field(UInt8)
1354
+ ], civic_grant.prototype, "kind", void 0);
1355
+ __decorate([
1356
+ Struct.field(UInt8)
1357
+ ], civic_grant.prototype, "building", void 0);
1358
+ __decorate([
1359
+ Struct.field(UInt8)
1360
+ ], civic_grant.prototype, "stat", void 0);
1030
1361
  __decorate([
1031
1362
  Struct.field(UInt16)
1032
- ], charter_effect.prototype, "stat", void 0);
1033
- charter_effect = __decorate([
1034
- Struct.type('charter_effect')
1035
- ], charter_effect);
1036
- Types.charter_effect = charter_effect;
1363
+ ], civic_grant.prototype, "value", void 0);
1364
+ civic_grant = __decorate([
1365
+ Struct.type('civic_grant')
1366
+ ], civic_grant);
1367
+ Types.civic_grant = civic_grant;
1037
1368
  let charter_node_def = class charter_node_def extends Struct {
1038
1369
  };
1039
1370
  __decorate([
@@ -1046,8 +1377,14 @@ var Types$1;
1046
1377
  Struct.field(UInt32, { array: true })
1047
1378
  ], charter_node_def.prototype, "prereqs", void 0);
1048
1379
  __decorate([
1049
- Struct.field(charter_effect)
1050
- ], charter_node_def.prototype, "effect", void 0);
1380
+ Struct.field(civic_grant, { array: true })
1381
+ ], charter_node_def.prototype, "grants", void 0);
1382
+ __decorate([
1383
+ Struct.field(UInt16)
1384
+ ], charter_node_def.prototype, "exclusion_group", void 0);
1385
+ __decorate([
1386
+ Struct.field(UInt8)
1387
+ ], charter_node_def.prototype, "repeat_cap", void 0);
1051
1388
  charter_node_def = __decorate([
1052
1389
  Struct.type('charter_node_def')
1053
1390
  ], charter_node_def);
@@ -1073,15 +1410,42 @@ var Types$1;
1073
1410
  Struct.field(UInt32)
1074
1411
  ], charter_view.prototype, "node_id", void 0);
1075
1412
  __decorate([
1076
- Struct.field(UInt32)
1077
- ], charter_view.prototype, "completed_epoch", void 0);
1078
- __decorate([
1079
- Struct.field(UInt64)
1080
- ], charter_view.prototype, "entity_id", void 0);
1413
+ Struct.field(UInt16)
1414
+ ], charter_view.prototype, "repeats", void 0);
1081
1415
  charter_view = __decorate([
1082
1416
  Struct.type('charter_view')
1083
1417
  ], charter_view);
1084
1418
  Types.charter_view = charter_view;
1419
+ let seat_view = class seat_view extends Struct {
1420
+ };
1421
+ __decorate([
1422
+ Struct.field(UInt32)
1423
+ ], seat_view.prototype, "node_id", void 0);
1424
+ __decorate([
1425
+ Struct.field(UInt64)
1426
+ ], seat_view.prototype, "cost", void 0);
1427
+ __decorate([
1428
+ Struct.field(UInt64)
1429
+ ], seat_view.prototype, "progress", void 0);
1430
+ __decorate([
1431
+ Struct.field(UInt64)
1432
+ ], seat_view.prototype, "gap", void 0);
1433
+ seat_view = __decorate([
1434
+ Struct.type('seat_view')
1435
+ ], seat_view);
1436
+ Types.seat_view = seat_view;
1437
+ let progress_view = class progress_view extends Struct {
1438
+ };
1439
+ __decorate([
1440
+ Struct.field(UInt32)
1441
+ ], progress_view.prototype, "node_id", void 0);
1442
+ __decorate([
1443
+ Struct.field(UInt64)
1444
+ ], progress_view.prototype, "amount", void 0);
1445
+ progress_view = __decorate([
1446
+ Struct.type('progress_view')
1447
+ ], progress_view);
1448
+ Types.progress_view = progress_view;
1085
1449
  let charter_result = class charter_result extends Struct {
1086
1450
  };
1087
1451
  __decorate([
@@ -1092,10 +1456,10 @@ var Types$1;
1092
1456
  ], charter_result.prototype, "lifetime", void 0);
1093
1457
  __decorate([
1094
1458
  Struct.field(UInt64)
1095
- ], charter_result.prototype, "watermark", void 0);
1459
+ ], charter_result.prototype, "spent", void 0);
1096
1460
  __decorate([
1097
1461
  Struct.field(UInt64)
1098
- ], charter_result.prototype, "surplus", void 0);
1462
+ ], charter_result.prototype, "unassigned", void 0);
1099
1463
  __decorate([
1100
1464
  Struct.field(UInt32)
1101
1465
  ], charter_result.prototype, "mandate", void 0);
@@ -1114,6 +1478,18 @@ var Types$1;
1114
1478
  __decorate([
1115
1479
  Struct.field(charter_view, { array: true })
1116
1480
  ], charter_result.prototype, "built", void 0);
1481
+ __decorate([
1482
+ Struct.field(UInt64)
1483
+ ], charter_result.prototype, "ballot_id", void 0);
1484
+ __decorate([
1485
+ Struct.field('bool')
1486
+ ], charter_result.prototype, "settling", void 0);
1487
+ __decorate([
1488
+ Struct.field(seat_view, { array: true })
1489
+ ], charter_result.prototype, "queue", void 0);
1490
+ __decorate([
1491
+ Struct.field(progress_view, { array: true })
1492
+ ], charter_result.prototype, "progress", void 0);
1117
1493
  charter_result = __decorate([
1118
1494
  Struct.type('charter_result')
1119
1495
  ], charter_result);
@@ -1148,21 +1524,24 @@ var Types$1;
1148
1524
  Struct.type('charterready_result')
1149
1525
  ], charterready_result);
1150
1526
  Types.charterready_result = charterready_result;
1151
- let charters_row = class charters_row extends Struct {
1527
+ let citizenship_row = class citizenship_row extends Struct {
1152
1528
  };
1153
1529
  __decorate([
1154
- Struct.field(UInt32)
1155
- ], charters_row.prototype, "node_id", void 0);
1530
+ Struct.field(UInt64)
1531
+ ], citizenship_row.prototype, "location_id", void 0);
1156
1532
  __decorate([
1157
- Struct.field(UInt32)
1158
- ], charters_row.prototype, "completed_epoch", void 0);
1533
+ Struct.field(UInt64)
1534
+ ], citizenship_row.prototype, "lifetime", void 0);
1159
1535
  __decorate([
1160
1536
  Struct.field(UInt64)
1161
- ], charters_row.prototype, "entity_id", void 0);
1162
- charters_row = __decorate([
1163
- Struct.type('charters_row')
1164
- ], charters_row);
1165
- Types.charters_row = charters_row;
1537
+ ], citizenship_row.prototype, "active", void 0);
1538
+ __decorate([
1539
+ Struct.field(UInt32)
1540
+ ], citizenship_row.prototype, "active_epoch", void 0);
1541
+ citizenship_row = __decorate([
1542
+ Struct.type('citizenship_row')
1543
+ ], citizenship_row);
1544
+ Types.citizenship_row = citizenship_row;
1166
1545
  let civicconfig_row = class civicconfig_row extends Struct {
1167
1546
  };
1168
1547
  __decorate([
@@ -1172,6 +1551,24 @@ var Types$1;
1172
1551
  Struct.type('civicconfig_row')
1173
1552
  ], civicconfig_row);
1174
1553
  Types.civicconfig_row = civicconfig_row;
1554
+ let civicshuttle = class civicshuttle extends Struct {
1555
+ };
1556
+ __decorate([
1557
+ Struct.field(UInt64)
1558
+ ], civicshuttle.prototype, "building", void 0);
1559
+ __decorate([
1560
+ Struct.field(UInt64)
1561
+ ], civicshuttle.prototype, "from_id", void 0);
1562
+ __decorate([
1563
+ Struct.field(UInt64)
1564
+ ], civicshuttle.prototype, "to_id", void 0);
1565
+ __decorate([
1566
+ Struct.field(cargo_item, { array: true })
1567
+ ], civicshuttle.prototype, "items", void 0);
1568
+ civicshuttle = __decorate([
1569
+ Struct.type('civicshuttle')
1570
+ ], civicshuttle);
1571
+ Types.civicshuttle = civicshuttle;
1175
1572
  let claim_row = class claim_row extends Struct {
1176
1573
  };
1177
1574
  __decorate([
@@ -1181,18 +1578,27 @@ var Types$1;
1181
1578
  Struct.type('claim_row')
1182
1579
  ], claim_row);
1183
1580
  Types.claim_row = claim_row;
1184
- let claimjob = class claimjob extends Struct {
1581
+ let claimbuild = class claimbuild extends Struct {
1185
1582
  };
1186
1583
  __decorate([
1187
1584
  Struct.field(UInt64)
1188
- ], claimjob.prototype, "job_id", void 0);
1585
+ ], claimbuild.prototype, "job_id", void 0);
1586
+ claimbuild = __decorate([
1587
+ Struct.type('claimbuild')
1588
+ ], claimbuild);
1589
+ Types.claimbuild = claimbuild;
1590
+ let claimcraft = class claimcraft extends Struct {
1591
+ };
1189
1592
  __decorate([
1190
1593
  Struct.field(UInt64)
1191
- ], claimjob.prototype, "ship_id", void 0);
1192
- claimjob = __decorate([
1193
- Struct.type('claimjob')
1194
- ], claimjob);
1195
- Types.claimjob = claimjob;
1594
+ ], claimcraft.prototype, "job_id", void 0);
1595
+ __decorate([
1596
+ Struct.field(UInt64)
1597
+ ], claimcraft.prototype, "ship_id", void 0);
1598
+ claimcraft = __decorate([
1599
+ Struct.type('claimcraft')
1600
+ ], claimcraft);
1601
+ Types.claimcraft = claimcraft;
1196
1602
  let cluster_slot = class cluster_slot extends Struct {
1197
1603
  };
1198
1604
  __decorate([
@@ -1232,15 +1638,6 @@ var Types$1;
1232
1638
  Struct.type('claimstarter')
1233
1639
  ], claimstarter);
1234
1640
  Types.claimstarter = claimstarter;
1235
- let claimupgrade = class claimupgrade extends Struct {
1236
- };
1237
- __decorate([
1238
- Struct.field(UInt64)
1239
- ], claimupgrade.prototype, "job_id", void 0);
1240
- claimupgrade = __decorate([
1241
- Struct.type('claimupgrade')
1242
- ], claimupgrade);
1243
- Types.claimupgrade = claimupgrade;
1244
1641
  let cleanrsvp = class cleanrsvp extends Struct {
1245
1642
  };
1246
1643
  __decorate([
@@ -1268,6 +1665,15 @@ var Types$1;
1268
1665
  Struct.type('cleartable')
1269
1666
  ], cleartable);
1270
1667
  Types.cleartable = cleartable;
1668
+ let closeepoch = class closeepoch extends Struct {
1669
+ };
1670
+ __decorate([
1671
+ Struct.field(UInt64)
1672
+ ], closeepoch.prototype, "epoch", void 0);
1673
+ closeepoch = __decorate([
1674
+ Struct.type('closeepoch')
1675
+ ], closeepoch);
1676
+ Types.closeepoch = closeepoch;
1271
1677
  let cluster_cell = class cluster_cell extends Struct {
1272
1678
  };
1273
1679
  __decorate([
@@ -1421,21 +1827,6 @@ var Types$1;
1421
1827
  Struct.type('configlog')
1422
1828
  ], configlog);
1423
1829
  Types.configlog = configlog;
1424
- let coordinates = class coordinates extends Struct {
1425
- };
1426
- __decorate([
1427
- Struct.field(Int64)
1428
- ], coordinates.prototype, "x", void 0);
1429
- __decorate([
1430
- Struct.field(Int64)
1431
- ], coordinates.prototype, "y", void 0);
1432
- __decorate([
1433
- Struct.field(UInt16, { optional: true })
1434
- ], coordinates.prototype, "z", void 0);
1435
- coordinates = __decorate([
1436
- Struct.type('coordinates')
1437
- ], coordinates);
1438
- Types.coordinates = coordinates;
1439
1830
  let coupling = class coupling extends Struct {
1440
1831
  };
1441
1832
  __decorate([
@@ -1517,6 +1908,57 @@ var Types$1;
1517
1908
  Struct.type('craftjob')
1518
1909
  ], craftjob);
1519
1910
  Types.craftjob = craftjob;
1911
+ let craftjob_row = class craftjob_row extends Struct {
1912
+ };
1913
+ __decorate([
1914
+ Struct.field(UInt64)
1915
+ ], craftjob_row.prototype, "id", void 0);
1916
+ __decorate([
1917
+ Struct.field(UInt64)
1918
+ ], craftjob_row.prototype, "building", void 0);
1919
+ __decorate([
1920
+ Struct.field(UInt8)
1921
+ ], craftjob_row.prototype, "socket", void 0);
1922
+ __decorate([
1923
+ Struct.field(Name)
1924
+ ], craftjob_row.prototype, "owner", void 0);
1925
+ __decorate([
1926
+ Struct.field(UInt64)
1927
+ ], craftjob_row.prototype, "ship_id", void 0);
1928
+ __decorate([
1929
+ Struct.field(coordinates)
1930
+ ], craftjob_row.prototype, "coords", void 0);
1931
+ __decorate([
1932
+ Struct.field(TimePoint)
1933
+ ], craftjob_row.prototype, "starts_at", void 0);
1934
+ __decorate([
1935
+ Struct.field(TimePoint)
1936
+ ], craftjob_row.prototype, "completes_at", void 0);
1937
+ __decorate([
1938
+ Struct.field(UInt16)
1939
+ ], craftjob_row.prototype, "recipe_id", void 0);
1940
+ __decorate([
1941
+ Struct.field(UInt32)
1942
+ ], craftjob_row.prototype, "quantity", void 0);
1943
+ __decorate([
1944
+ Struct.field(UInt32)
1945
+ ], craftjob_row.prototype, "energy_paid", void 0);
1946
+ __decorate([
1947
+ Struct.field(cargo_item, { array: true })
1948
+ ], craftjob_row.prototype, "cargo", void 0);
1949
+ craftjob_row = __decorate([
1950
+ Struct.type('craftjob_row')
1951
+ ], craftjob_row);
1952
+ Types.craftjob_row = craftjob_row;
1953
+ let craftjobs_result = class craftjobs_result extends Struct {
1954
+ };
1955
+ __decorate([
1956
+ Struct.field(craftjob_row, { array: true })
1957
+ ], craftjobs_result.prototype, "jobs", void 0);
1958
+ craftjobs_result = __decorate([
1959
+ Struct.type('craftjobs_result')
1960
+ ], craftjobs_result);
1961
+ Types.craftjobs_result = craftjobs_result;
1520
1962
  let dbgcredit = class dbgcredit extends Struct {
1521
1963
  };
1522
1964
  __decorate([
@@ -1531,6 +1973,9 @@ var Types$1;
1531
1973
  __decorate([
1532
1974
  Struct.field(UInt64)
1533
1975
  ], dbgcredit.prototype, "amount_atomic", void 0);
1976
+ __decorate([
1977
+ Struct.field(UInt32, { optional: true })
1978
+ ], dbgcredit.prototype, "node", void 0);
1534
1979
  dbgcredit = __decorate([
1535
1980
  Struct.type('dbgcredit')
1536
1981
  ], dbgcredit);
@@ -1539,17 +1984,53 @@ var Types$1;
1539
1984
  };
1540
1985
  __decorate([
1541
1986
  Struct.field(Int64)
1542
- ], dbgmandate.prototype, "x", void 0);
1987
+ ], dbgmandate.prototype, "x", void 0);
1988
+ __decorate([
1989
+ Struct.field(Int64)
1990
+ ], dbgmandate.prototype, "y", void 0);
1991
+ __decorate([
1992
+ Struct.field(UInt32)
1993
+ ], dbgmandate.prototype, "node_id", void 0);
1994
+ dbgmandate = __decorate([
1995
+ Struct.type('dbgmandate')
1996
+ ], dbgmandate);
1997
+ Types.dbgmandate = dbgmandate;
1998
+ let dbgpagerows = class dbgpagerows extends Struct {
1999
+ };
2000
+ __decorate([
2001
+ Struct.field(UInt32)
2002
+ ], dbgpagerows.prototype, "rows", void 0);
2003
+ dbgpagerows = __decorate([
2004
+ Struct.type('dbgpagerows')
2005
+ ], dbgpagerows);
2006
+ Types.dbgpagerows = dbgpagerows;
2007
+ let dbgpurge = class dbgpurge extends Struct {
2008
+ };
2009
+ __decorate([
2010
+ Struct.field(Name)
2011
+ ], dbgpurge.prototype, "table_name", void 0);
2012
+ __decorate([
2013
+ Struct.field(Name, { optional: true })
2014
+ ], dbgpurge.prototype, "scope", void 0);
2015
+ dbgpurge = __decorate([
2016
+ Struct.type('dbgpurge')
2017
+ ], dbgpurge);
2018
+ Types.dbgpurge = dbgpurge;
2019
+ let dbgseats = class dbgseats extends Struct {
2020
+ };
2021
+ __decorate([
2022
+ Struct.field(Int64)
2023
+ ], dbgseats.prototype, "x", void 0);
1543
2024
  __decorate([
1544
2025
  Struct.field(Int64)
1545
- ], dbgmandate.prototype, "y", void 0);
2026
+ ], dbgseats.prototype, "y", void 0);
1546
2027
  __decorate([
1547
2028
  Struct.field(UInt32)
1548
- ], dbgmandate.prototype, "node_id", void 0);
1549
- dbgmandate = __decorate([
1550
- Struct.type('dbgmandate')
1551
- ], dbgmandate);
1552
- Types.dbgmandate = dbgmandate;
2029
+ ], dbgseats.prototype, "seats", void 0);
2030
+ dbgseats = __decorate([
2031
+ Struct.type('dbgseats')
2032
+ ], dbgseats);
2033
+ Types.dbgseats = dbgseats;
1553
2034
  let decomp_bucket = class decomp_bucket extends Struct {
1554
2035
  };
1555
2036
  __decorate([
@@ -1560,7 +2041,7 @@ var Types$1;
1560
2041
  ], decomp_bucket.prototype, "tier", void 0);
1561
2042
  __decorate([
1562
2043
  Struct.field(UInt32)
1563
- ], decomp_bucket.prototype, "raw_kg", void 0);
2044
+ ], decomp_bucket.prototype, "raw_mass", void 0);
1564
2045
  decomp_bucket = __decorate([
1565
2046
  Struct.type('decomp_bucket')
1566
2047
  ], decomp_bucket);
@@ -1572,7 +2053,7 @@ var Types$1;
1572
2053
  ], decomp_result.prototype, "item_id", void 0);
1573
2054
  __decorate([
1574
2055
  Struct.field(UInt64)
1575
- ], decomp_result.prototype, "processed_kg", void 0);
2056
+ ], decomp_result.prototype, "processed_mass", void 0);
1576
2057
  __decorate([
1577
2058
  Struct.field(decomp_bucket, { array: true })
1578
2059
  ], decomp_result.prototype, "buckets", void 0);
@@ -1634,33 +2115,33 @@ var Types$1;
1634
2115
  Struct.type('deploy')
1635
2116
  ], deploy);
1636
2117
  Types.deploy = deploy;
1637
- let depot_row = class depot_row extends Struct {
2118
+ let storage_row = class storage_row extends Struct {
1638
2119
  };
1639
2120
  __decorate([
1640
2121
  Struct.field(UInt64)
1641
- ], depot_row.prototype, "id", void 0);
2122
+ ], storage_row.prototype, "id", void 0);
1642
2123
  __decorate([
1643
2124
  Struct.field(Name)
1644
- ], depot_row.prototype, "owner", void 0);
2125
+ ], storage_row.prototype, "owner", void 0);
1645
2126
  __decorate([
1646
2127
  Struct.field(UInt64)
1647
- ], depot_row.prototype, "item_id", void 0);
2128
+ ], storage_row.prototype, "item_id", void 0);
1648
2129
  __decorate([
1649
2130
  Struct.field(UInt64)
1650
- ], depot_row.prototype, "quantity", void 0);
2131
+ ], storage_row.prototype, "quantity", void 0);
1651
2132
  __decorate([
1652
2133
  Struct.field(UInt64)
1653
- ], depot_row.prototype, "stats", void 0);
2134
+ ], storage_row.prototype, "stats", void 0);
1654
2135
  __decorate([
1655
2136
  Struct.field(module_entry, { array: true })
1656
- ], depot_row.prototype, "modules", void 0);
2137
+ ], storage_row.prototype, "modules", void 0);
1657
2138
  __decorate([
1658
2139
  Struct.field(UInt64, { optional: true })
1659
- ], depot_row.prototype, "sequence_id", void 0);
1660
- depot_row = __decorate([
1661
- Struct.type('depot_row')
1662
- ], depot_row);
1663
- Types.depot_row = depot_row;
2140
+ ], storage_row.prototype, "sequence_id", void 0);
2141
+ storage_row = __decorate([
2142
+ Struct.type('storage_row')
2143
+ ], storage_row);
2144
+ Types.storage_row = storage_row;
1664
2145
  let depot_view = class depot_view extends Struct {
1665
2146
  };
1666
2147
  __decorate([
@@ -1673,27 +2154,12 @@ var Types$1;
1673
2154
  Struct.field(UInt64)
1674
2155
  ], depot_view.prototype, "reserved_mass", void 0);
1675
2156
  __decorate([
1676
- Struct.field(depot_row, { array: true })
2157
+ Struct.field(storage_row, { array: true })
1677
2158
  ], depot_view.prototype, "rows", void 0);
1678
2159
  depot_view = __decorate([
1679
2160
  Struct.type('depot_view')
1680
2161
  ], depot_view);
1681
2162
  Types.depot_view = depot_view;
1682
- let depotacct_row = class depotacct_row extends Struct {
1683
- };
1684
- __decorate([
1685
- Struct.field(Name)
1686
- ], depotacct_row.prototype, "owner", void 0);
1687
- __decorate([
1688
- Struct.field(UInt64)
1689
- ], depotacct_row.prototype, "stored_mass", void 0);
1690
- __decorate([
1691
- Struct.field(UInt64)
1692
- ], depotacct_row.prototype, "reserved_mass", void 0);
1693
- depotacct_row = __decorate([
1694
- Struct.type('depotacct_row')
1695
- ], depotacct_row);
1696
- Types.depotacct_row = depotacct_row;
1697
2163
  let depotstore = class depotstore extends Struct {
1698
2164
  };
1699
2165
  __decorate([
@@ -1927,6 +2393,9 @@ var Types$1;
1927
2393
  __decorate([
1928
2394
  Struct.field(refit_op, { optional: true })
1929
2395
  ], task.prototype, "refit", void 0);
2396
+ __decorate([
2397
+ Struct.field(UInt32, { optional: true })
2398
+ ], task.prototype, "charter_node", void 0);
1930
2399
  task = __decorate([
1931
2400
  Struct.type('task')
1932
2401
  ], task);
@@ -2357,6 +2826,33 @@ var Types$1;
2357
2826
  Struct.type('genesisfleet')
2358
2827
  ], genesisfleet);
2359
2828
  Types.genesisfleet = genesisfleet;
2829
+ let genesisworld = class genesisworld extends Struct {
2830
+ };
2831
+ __decorate([
2832
+ Struct.field(Name)
2833
+ ], genesisworld.prototype, "founder", void 0);
2834
+ __decorate([
2835
+ Struct.field(Int64)
2836
+ ], genesisworld.prototype, "x", void 0);
2837
+ __decorate([
2838
+ Struct.field(Int64)
2839
+ ], genesisworld.prototype, "y", void 0);
2840
+ __decorate([
2841
+ Struct.field(UInt32, { array: true })
2842
+ ], genesisworld.prototype, "node_ids", void 0);
2843
+ genesisworld = __decorate([
2844
+ Struct.type('genesisworld')
2845
+ ], genesisworld);
2846
+ Types.genesisworld = genesisworld;
2847
+ let getbuildjobs = class getbuildjobs extends Struct {
2848
+ };
2849
+ __decorate([
2850
+ Struct.field(UInt64)
2851
+ ], getbuildjobs.prototype, "building_id", void 0);
2852
+ getbuildjobs = __decorate([
2853
+ Struct.type('getbuildjobs')
2854
+ ], getbuildjobs);
2855
+ Types.getbuildjobs = getbuildjobs;
2360
2856
  let getcharter = class getcharter extends Struct {
2361
2857
  };
2362
2858
  __decorate([
@@ -2396,6 +2892,15 @@ var Types$1;
2396
2892
  Struct.type('getconfig')
2397
2893
  ], getconfig);
2398
2894
  Types.getconfig = getconfig;
2895
+ let getcraftjobs = class getcraftjobs extends Struct {
2896
+ };
2897
+ __decorate([
2898
+ Struct.field(UInt64)
2899
+ ], getcraftjobs.prototype, "building_id", void 0);
2900
+ getcraftjobs = __decorate([
2901
+ Struct.type('getcraftjobs')
2902
+ ], getcraftjobs);
2903
+ Types.getcraftjobs = getcraftjobs;
2399
2904
  let getdecomp = class getdecomp extends Struct {
2400
2905
  };
2401
2906
  __decorate([
@@ -2582,15 +3087,6 @@ var Types$1;
2582
3087
  Struct.type('getitemtypes')
2583
3088
  ], getitemtypes);
2584
3089
  Types.getitemtypes = getitemtypes;
2585
- let getjobs = class getjobs extends Struct {
2586
- };
2587
- __decorate([
2588
- Struct.field(UInt64)
2589
- ], getjobs.prototype, "workshop_id", void 0);
2590
- getjobs = __decorate([
2591
- Struct.type('getjobs')
2592
- ], getjobs);
2593
- Types.getjobs = getjobs;
2594
3090
  let getkindmeta = class getkindmeta extends Struct {
2595
3091
  };
2596
3092
  getkindmeta = __decorate([
@@ -2753,15 +3249,6 @@ var Types$1;
2753
3249
  Struct.type('getresources')
2754
3250
  ], getresources);
2755
3251
  Types.getresources = getresources;
2756
- let getservice = class getservice extends Struct {
2757
- };
2758
- __decorate([
2759
- Struct.field(UInt64)
2760
- ], getservice.prototype, "workshop_id", void 0);
2761
- getservice = __decorate([
2762
- Struct.type('getservice')
2763
- ], getservice);
2764
- Types.getservice = getservice;
2765
3252
  let getslots = class getslots extends Struct {
2766
3253
  };
2767
3254
  getslots = __decorate([
@@ -2795,15 +3282,6 @@ var Types$1;
2795
3282
  Struct.type('getsummaries')
2796
3283
  ], getsummaries);
2797
3284
  Types.getsummaries = getsummaries;
2798
- let getupgjobs = class getupgjobs extends Struct {
2799
- };
2800
- __decorate([
2801
- Struct.field(UInt64)
2802
- ], getupgjobs.prototype, "dock_id", void 0);
2803
- getupgjobs = __decorate([
2804
- Struct.type('getupgjobs')
2805
- ], getupgjobs);
2806
- Types.getupgjobs = getupgjobs;
2807
3285
  let getvoteready = class getvoteready extends Struct {
2808
3286
  };
2809
3287
  getvoteready = __decorate([
@@ -2818,6 +3296,9 @@ var Types$1;
2818
3296
  __decorate([
2819
3297
  Struct.field(Int64)
2820
3298
  ], getvotes.prototype, "y", void 0);
3299
+ __decorate([
3300
+ Struct.field(Name)
3301
+ ], getvotes.prototype, "player", void 0);
2821
3302
  getvotes = __decorate([
2822
3303
  Struct.type('getvotes')
2823
3304
  ], getvotes);
@@ -3035,18 +3516,6 @@ var Types$1;
3035
3516
  Struct.type('importstate')
3036
3517
  ], importstate);
3037
3518
  Types.importstate = importstate;
3038
- let infballot_row = class infballot_row extends Struct {
3039
- };
3040
- __decorate([
3041
- Struct.field(UInt64)
3042
- ], infballot_row.prototype, "location_id", void 0);
3043
- __decorate([
3044
- Struct.field(UInt32)
3045
- ], infballot_row.prototype, "epoch", void 0);
3046
- infballot_row = __decorate([
3047
- Struct.type('infballot_row')
3048
- ], infballot_row);
3049
- Types.infballot_row = infballot_row;
3050
3519
  let infburn_row = class infburn_row extends Struct {
3051
3520
  };
3052
3521
  __decorate([
@@ -3071,53 +3540,20 @@ var Types$1;
3071
3540
  Struct.type('infdemand_row')
3072
3541
  ], infdemand_row);
3073
3542
  Types.infdemand_row = infdemand_row;
3074
- let infloc_row = class infloc_row extends Struct {
3075
- };
3076
- __decorate([
3077
- Struct.field(UInt64)
3078
- ], infloc_row.prototype, "location_id", void 0);
3079
- __decorate([
3080
- Struct.field(UInt64)
3081
- ], infloc_row.prototype, "lifetime", void 0);
3082
- __decorate([
3083
- Struct.field(UInt64)
3084
- ], infloc_row.prototype, "active", void 0);
3085
- __decorate([
3086
- Struct.field(UInt32)
3087
- ], infloc_row.prototype, "last_update_epoch", void 0);
3088
- __decorate([
3089
- Struct.field(UInt64)
3090
- ], infloc_row.prototype, "watermark", void 0);
3091
- __decorate([
3092
- Struct.field(UInt32)
3093
- ], infloc_row.prototype, "chosen", void 0);
3094
- __decorate([
3095
- Struct.field(UInt32)
3096
- ], infloc_row.prototype, "chosen_epoch", void 0);
3097
- __decorate([
3098
- Struct.field(Name)
3099
- ], infloc_row.prototype, "founder", void 0);
3100
- __decorate([
3101
- Struct.field(UInt32)
3102
- ], infloc_row.prototype, "founded", void 0);
3103
- infloc_row = __decorate([
3104
- Struct.type('infloc_row')
3105
- ], infloc_row);
3106
- Types.infloc_row = infloc_row;
3107
3543
  let influence_totals = class influence_totals extends Struct {
3108
3544
  };
3109
3545
  __decorate([
3110
3546
  Struct.field(UInt64)
3111
- ], influence_totals.prototype, "player_lifetime", void 0);
3547
+ ], influence_totals.prototype, "standing_lifetime", void 0);
3112
3548
  __decorate([
3113
3549
  Struct.field(UInt64)
3114
- ], influence_totals.prototype, "player_active", void 0);
3550
+ ], influence_totals.prototype, "standing_active", void 0);
3115
3551
  __decorate([
3116
3552
  Struct.field(UInt64)
3117
- ], influence_totals.prototype, "standing_lifetime", void 0);
3553
+ ], influence_totals.prototype, "citizenship_lifetime", void 0);
3118
3554
  __decorate([
3119
3555
  Struct.field(UInt64)
3120
- ], influence_totals.prototype, "standing_active", void 0);
3556
+ ], influence_totals.prototype, "citizenship_active", void 0);
3121
3557
  __decorate([
3122
3558
  Struct.field(UInt64)
3123
3559
  ], influence_totals.prototype, "location_lifetime", void 0);
@@ -3126,7 +3562,7 @@ var Types$1;
3126
3562
  ], influence_totals.prototype, "location_active", void 0);
3127
3563
  __decorate([
3128
3564
  Struct.field(UInt64)
3129
- ], influence_totals.prototype, "watermark", void 0);
3565
+ ], influence_totals.prototype, "spent", void 0);
3130
3566
  __decorate([
3131
3567
  Struct.field(UInt32)
3132
3568
  ], influence_totals.prototype, "mandate", void 0);
@@ -3158,42 +3594,6 @@ var Types$1;
3158
3594
  Struct.type('infmint_row')
3159
3595
  ], infmint_row);
3160
3596
  Types.infmint_row = infmint_row;
3161
- let infplayer_row = class infplayer_row extends Struct {
3162
- };
3163
- __decorate([
3164
- Struct.field(Name)
3165
- ], infplayer_row.prototype, "account", void 0);
3166
- __decorate([
3167
- Struct.field(UInt64)
3168
- ], infplayer_row.prototype, "lifetime", void 0);
3169
- __decorate([
3170
- Struct.field(UInt64)
3171
- ], infplayer_row.prototype, "active", void 0);
3172
- __decorate([
3173
- Struct.field(UInt32)
3174
- ], infplayer_row.prototype, "last_update_epoch", void 0);
3175
- infplayer_row = __decorate([
3176
- Struct.type('infplayer_row')
3177
- ], infplayer_row);
3178
- Types.infplayer_row = infplayer_row;
3179
- let infplayerloc_row = class infplayerloc_row extends Struct {
3180
- };
3181
- __decorate([
3182
- Struct.field(UInt64)
3183
- ], infplayerloc_row.prototype, "location_id", void 0);
3184
- __decorate([
3185
- Struct.field(UInt64)
3186
- ], infplayerloc_row.prototype, "lifetime", void 0);
3187
- __decorate([
3188
- Struct.field(UInt64)
3189
- ], infplayerloc_row.prototype, "active", void 0);
3190
- __decorate([
3191
- Struct.field(UInt32)
3192
- ], infplayerloc_row.prototype, "last_update_epoch", void 0);
3193
- infplayerloc_row = __decorate([
3194
- Struct.type('infplayerloc_row')
3195
- ], infplayerloc_row);
3196
- Types.infplayerloc_row = infplayerloc_row;
3197
3597
  let infpool_row = class infpool_row extends Struct {
3198
3598
  };
3199
3599
  __decorate([
@@ -3227,18 +3627,6 @@ var Types$1;
3227
3627
  Struct.type('infquality_row')
3228
3628
  ], infquality_row);
3229
3629
  Types.infquality_row = infquality_row;
3230
- let inftally_row = class inftally_row extends Struct {
3231
- };
3232
- __decorate([
3233
- Struct.field(UInt64)
3234
- ], inftally_row.prototype, "node_id", void 0);
3235
- __decorate([
3236
- Struct.field(UInt64)
3237
- ], inftally_row.prototype, "total", void 0);
3238
- inftally_row = __decorate([
3239
- Struct.type('inftally_row')
3240
- ], inftally_row);
3241
- Types.inftally_row = inftally_row;
3242
3630
  let infvalue_result = class infvalue_result extends Struct {
3243
3631
  };
3244
3632
  __decorate([
@@ -3251,24 +3639,6 @@ var Types$1;
3251
3639
  Struct.type('infvalue_result')
3252
3640
  ], infvalue_result);
3253
3641
  Types.infvalue_result = infvalue_result;
3254
- let infvote_row = class infvote_row extends Struct {
3255
- };
3256
- __decorate([
3257
- Struct.field(Name)
3258
- ], infvote_row.prototype, "account", void 0);
3259
- __decorate([
3260
- Struct.field(UInt32)
3261
- ], infvote_row.prototype, "epoch", void 0);
3262
- __decorate([
3263
- Struct.field(UInt32)
3264
- ], infvote_row.prototype, "node_id", void 0);
3265
- __decorate([
3266
- Struct.field(UInt64)
3267
- ], infvote_row.prototype, "weight", void 0);
3268
- infvote_row = __decorate([
3269
- Struct.type('infvote_row')
3270
- ], infvote_row);
3271
- Types.infvote_row = infvote_row;
3272
3642
  let infweight_row = class infweight_row extends Struct {
3273
3643
  };
3274
3644
  __decorate([
@@ -3425,57 +3795,6 @@ var Types$1;
3425
3795
  Struct.type('job_receipt')
3426
3796
  ], job_receipt);
3427
3797
  Types.job_receipt = job_receipt;
3428
- let job_row = class job_row extends Struct {
3429
- };
3430
- __decorate([
3431
- Struct.field(UInt64)
3432
- ], job_row.prototype, "id", void 0);
3433
- __decorate([
3434
- Struct.field(UInt64)
3435
- ], job_row.prototype, "workshop", void 0);
3436
- __decorate([
3437
- Struct.field(UInt8)
3438
- ], job_row.prototype, "socket", void 0);
3439
- __decorate([
3440
- Struct.field(Name)
3441
- ], job_row.prototype, "owner", void 0);
3442
- __decorate([
3443
- Struct.field(UInt64)
3444
- ], job_row.prototype, "ship_id", void 0);
3445
- __decorate([
3446
- Struct.field(coordinates)
3447
- ], job_row.prototype, "coords", void 0);
3448
- __decorate([
3449
- Struct.field(TimePoint)
3450
- ], job_row.prototype, "starts_at", void 0);
3451
- __decorate([
3452
- Struct.field(TimePoint)
3453
- ], job_row.prototype, "completes_at", void 0);
3454
- __decorate([
3455
- Struct.field(UInt16)
3456
- ], job_row.prototype, "recipe_id", void 0);
3457
- __decorate([
3458
- Struct.field(UInt32)
3459
- ], job_row.prototype, "quantity", void 0);
3460
- __decorate([
3461
- Struct.field(UInt32)
3462
- ], job_row.prototype, "energy_paid", void 0);
3463
- __decorate([
3464
- Struct.field(cargo_item, { array: true })
3465
- ], job_row.prototype, "cargo", void 0);
3466
- job_row = __decorate([
3467
- Struct.type('job_row')
3468
- ], job_row);
3469
- Types.job_row = job_row;
3470
- let jobs_result = class jobs_result extends Struct {
3471
- };
3472
- __decorate([
3473
- Struct.field(job_row, { array: true })
3474
- ], jobs_result.prototype, "jobs", void 0);
3475
- jobs_result = __decorate([
3476
- Struct.type('jobs_result')
3477
- ], jobs_result);
3478
- Types.jobs_result = jobs_result;
3479
3798
  let join = class join extends Struct {
3480
3799
  };
3481
3800
  __decorate([
@@ -3611,6 +3930,33 @@ var Types$1;
3611
3930
  Struct.type('location_info')
3612
3931
  ], location_info);
3613
3932
  Types.location_info = location_info;
3933
+ let locker_row = class locker_row extends Struct {
3934
+ };
3935
+ __decorate([
3936
+ Struct.field(UInt64)
3937
+ ], locker_row.prototype, "depot_id", void 0);
3938
+ __decorate([
3939
+ Struct.field(UInt64)
3940
+ ], locker_row.prototype, "stored_mass", void 0);
3941
+ __decorate([
3942
+ Struct.field(UInt64)
3943
+ ], locker_row.prototype, "reserved_mass", void 0);
3944
+ locker_row = __decorate([
3945
+ Struct.type('locker_row')
3946
+ ], locker_row);
3947
+ Types.locker_row = locker_row;
3948
+ let mandates_row = class mandates_row extends Struct {
3949
+ };
3950
+ __decorate([
3951
+ Struct.field(UInt32)
3952
+ ], mandates_row.prototype, "node_id", void 0);
3953
+ __decorate([
3954
+ Struct.field(UInt16)
3955
+ ], mandates_row.prototype, "repeats", void 0);
3956
+ mandates_row = __decorate([
3957
+ Struct.type('mandates_row')
3958
+ ], mandates_row);
3959
+ Types.mandates_row = mandates_row;
3614
3960
  let mint_threshold_view = class mint_threshold_view extends Struct {
3615
3961
  };
3616
3962
  __decorate([
@@ -3904,6 +4250,9 @@ var Types$1;
3904
4250
  __decorate([
3905
4251
  Struct.field(UInt8)
3906
4252
  ], oracle_config_row.prototype, "threshold", void 0);
4253
+ __decorate([
4254
+ Struct.field(UInt32)
4255
+ ], oracle_config_row.prototype, "deadline", void 0);
3907
4256
  oracle_config_row = __decorate([
3908
4257
  Struct.type('oracle_config_row')
3909
4258
  ], oracle_config_row);
@@ -4040,6 +4389,18 @@ var Types$1;
4040
4389
  Struct.type('pools_result')
4041
4390
  ], pools_result);
4042
4391
  Types.pools_result = pools_result;
4392
+ let progress_row = class progress_row extends Struct {
4393
+ };
4394
+ __decorate([
4395
+ Struct.field(UInt32)
4396
+ ], progress_row.prototype, "node_id", void 0);
4397
+ __decorate([
4398
+ Struct.field(UInt64)
4399
+ ], progress_row.prototype, "amount", void 0);
4400
+ progress_row = __decorate([
4401
+ Struct.type('progress_row')
4402
+ ], progress_row);
4403
+ Types.progress_row = progress_row;
4043
4404
  let projected_state = class projected_state extends Struct {
4044
4405
  };
4045
4406
  __decorate([
@@ -4316,27 +4677,6 @@ var Types$1;
4316
4677
  Struct.type('route_waypoint')
4317
4678
  ], route_waypoint);
4318
4679
  Types.route_waypoint = route_waypoint;
4319
- let service_socket = class service_socket extends Struct {
4320
- };
4321
- __decorate([
4322
- Struct.field('bool')
4323
- ], service_socket.prototype, "open", void 0);
4324
- service_socket = __decorate([
4325
- Struct.type('service_socket')
4326
- ], service_socket);
4327
- Types.service_socket = service_socket;
4328
- let service_row = class service_row extends Struct {
4329
- };
4330
- __decorate([
4331
- Struct.field(UInt64)
4332
- ], service_row.prototype, "entity", void 0);
4333
- __decorate([
4334
- Struct.field(service_socket, { array: true })
4335
- ], service_row.prototype, "sockets", void 0);
4336
- service_row = __decorate([
4337
- Struct.type('service_row')
4338
- ], service_row);
4339
- Types.service_row = service_row;
4340
4680
  let setcivic = class setcivic extends Struct {
4341
4681
  };
4342
4682
  __decorate([
@@ -4370,6 +4710,15 @@ var Types$1;
4370
4710
  Struct.type('setcoords')
4371
4711
  ], setcoords);
4372
4712
  Types.setcoords = setcoords;
4713
+ let setdeadline = class setdeadline extends Struct {
4714
+ };
4715
+ __decorate([
4716
+ Struct.field(UInt32)
4717
+ ], setdeadline.prototype, "deadline", void 0);
4718
+ setdeadline = __decorate([
4719
+ Struct.type('setdeadline')
4720
+ ], setdeadline);
4721
+ Types.setdeadline = setdeadline;
4373
4722
  let setinfburn = class setinfburn extends Struct {
4374
4723
  };
4375
4724
  __decorate([
@@ -4457,21 +4806,6 @@ var Types$1;
4457
4806
  Struct.type('setnftcfg')
4458
4807
  ], setnftcfg);
4459
4808
  Types.setnftcfg = setnftcfg;
4460
- let setsocket = class setsocket extends Struct {
4461
- };
4462
- __decorate([
4463
- Struct.field(UInt64)
4464
- ], setsocket.prototype, "workshop_id", void 0);
4465
- __decorate([
4466
- Struct.field(UInt8)
4467
- ], setsocket.prototype, "slot", void 0);
4468
- __decorate([
4469
- Struct.field('bool')
4470
- ], setsocket.prototype, "open", void 0);
4471
- setsocket = __decorate([
4472
- Struct.type('setsocket')
4473
- ], setsocket);
4474
- Types.setsocket = setsocket;
4475
4809
  let setthreshold = class setthreshold extends Struct {
4476
4810
  };
4477
4811
  __decorate([
@@ -4481,6 +4815,27 @@ var Types$1;
4481
4815
  Struct.type('setthreshold')
4482
4816
  ], setthreshold);
4483
4817
  Types.setthreshold = setthreshold;
4818
+ let settleballot = class settleballot extends Struct {
4819
+ };
4820
+ __decorate([
4821
+ Struct.field(UInt64)
4822
+ ], settleballot.prototype, "ballot_id", void 0);
4823
+ __decorate([
4824
+ Struct.field(UInt32)
4825
+ ], settleballot.prototype, "max_pages", void 0);
4826
+ settleballot = __decorate([
4827
+ Struct.type('settleballot')
4828
+ ], settleballot);
4829
+ Types.settleballot = settleballot;
4830
+ let setunwrapmin = class setunwrapmin extends Struct {
4831
+ };
4832
+ __decorate([
4833
+ Struct.field(UInt64)
4834
+ ], setunwrapmin.prototype, "asset_id", void 0);
4835
+ setunwrapmin = __decorate([
4836
+ Struct.type('setunwrapmin')
4837
+ ], setunwrapmin);
4838
+ Types.setunwrapmin = setunwrapmin;
4484
4839
  let setwrapcost = class setwrapcost extends Struct {
4485
4840
  };
4486
4841
  __decorate([
@@ -4526,6 +4881,24 @@ var Types$1;
4526
4881
  Struct.type('shuttle')
4527
4882
  ], shuttle);
4528
4883
  Types.shuttle = shuttle;
4884
+ let standing_row = class standing_row extends Struct {
4885
+ };
4886
+ __decorate([
4887
+ Struct.field(Name)
4888
+ ], standing_row.prototype, "account", void 0);
4889
+ __decorate([
4890
+ Struct.field(UInt64)
4891
+ ], standing_row.prototype, "lifetime", void 0);
4892
+ __decorate([
4893
+ Struct.field(UInt64)
4894
+ ], standing_row.prototype, "active", void 0);
4895
+ __decorate([
4896
+ Struct.field(UInt32)
4897
+ ], standing_row.prototype, "active_epoch", void 0);
4898
+ standing_row = __decorate([
4899
+ Struct.type('standing_row')
4900
+ ], standing_row);
4901
+ Types.standing_row = standing_row;
4529
4902
  let stowcargo = class stowcargo extends Struct {
4530
4903
  };
4531
4904
  __decorate([
@@ -4717,12 +5090,15 @@ var Types$1;
4717
5090
  __decorate([
4718
5091
  Struct.field(UInt64)
4719
5092
  ], vote_option.prototype, "cost", void 0);
5093
+ __decorate([
5094
+ Struct.field(UInt32)
5095
+ ], vote_option.prototype, "seat", void 0);
4720
5096
  __decorate([
4721
5097
  Struct.field(UInt64)
4722
- ], vote_option.prototype, "total", void 0);
5098
+ ], vote_option.prototype, "weight", void 0);
4723
5099
  __decorate([
4724
- Struct.field('bool')
4725
- ], vote_option.prototype, "eligible", void 0);
5100
+ Struct.field(UInt32)
5101
+ ], vote_option.prototype, "rank", void 0);
4726
5102
  vote_option = __decorate([
4727
5103
  Struct.type('vote_option')
4728
5104
  ], vote_option);
@@ -4732,24 +5108,30 @@ var Types$1;
4732
5108
  __decorate([
4733
5109
  Struct.field(UInt64)
4734
5110
  ], vote_result.prototype, "location_id", void 0);
5111
+ __decorate([
5112
+ Struct.field(UInt64)
5113
+ ], vote_result.prototype, "ballot_id", void 0);
4735
5114
  __decorate([
4736
5115
  Struct.field(UInt32)
4737
5116
  ], vote_result.prototype, "epoch", void 0);
4738
5117
  __decorate([
4739
5118
  Struct.field(UInt32)
4740
- ], vote_result.prototype, "ballot_epoch", void 0);
5119
+ ], vote_result.prototype, "settled_epoch", void 0);
4741
5120
  __decorate([
4742
5121
  Struct.field(UInt32)
4743
- ], vote_result.prototype, "chosen", void 0);
5122
+ ], vote_result.prototype, "seats", void 0);
4744
5123
  __decorate([
4745
- Struct.field(UInt32)
4746
- ], vote_result.prototype, "chosen_epoch", void 0);
5124
+ Struct.field('bool')
5125
+ ], vote_result.prototype, "settling", void 0);
4747
5126
  __decorate([
4748
- Struct.field(UInt32)
4749
- ], vote_result.prototype, "effective", void 0);
5127
+ Struct.field(UInt32, { array: true })
5128
+ ], vote_result.prototype, "queue", void 0);
4750
5129
  __decorate([
4751
5130
  Struct.field(vote_option, { array: true })
4752
5131
  ], vote_result.prototype, "options", void 0);
5132
+ __decorate([
5133
+ Struct.field(UInt32, { array: true })
5134
+ ], vote_result.prototype, "picks", void 0);
4753
5135
  vote_result = __decorate([
4754
5136
  Struct.type('vote_result')
4755
5137
  ], vote_result);
@@ -4835,48 +5217,6 @@ var Types$1;
4835
5217
  Struct.type('unload')
4836
5218
  ], unload);
4837
5219
  Types.unload = unload;
4838
- let upgjob_row = class upgjob_row extends Struct {
4839
- };
4840
- __decorate([
4841
- Struct.field(UInt64)
4842
- ], upgjob_row.prototype, "id", void 0);
4843
- __decorate([
4844
- Struct.field(UInt64)
4845
- ], upgjob_row.prototype, "dock", void 0);
4846
- __decorate([
4847
- Struct.field(UInt64)
4848
- ], upgjob_row.prototype, "target", void 0);
4849
- __decorate([
4850
- Struct.field(Name)
4851
- ], upgjob_row.prototype, "owner", void 0);
4852
- __decorate([
4853
- Struct.field(coordinates)
4854
- ], upgjob_row.prototype, "coords", void 0);
4855
- __decorate([
4856
- Struct.field(TimePoint)
4857
- ], upgjob_row.prototype, "starts_at", void 0);
4858
- __decorate([
4859
- Struct.field(TimePoint)
4860
- ], upgjob_row.prototype, "completes_at", void 0);
4861
- __decorate([
4862
- Struct.field(UInt16)
4863
- ], upgjob_row.prototype, "target_item_id", void 0);
4864
- __decorate([
4865
- Struct.field(cargo_item, { array: true })
4866
- ], upgjob_row.prototype, "cargo", void 0);
4867
- upgjob_row = __decorate([
4868
- Struct.type('upgjob_row')
4869
- ], upgjob_row);
4870
- Types.upgjob_row = upgjob_row;
4871
- let upgjobs_result = class upgjobs_result extends Struct {
4872
- };
4873
- __decorate([
4874
- Struct.field(upgjob_row, { array: true })
4875
- ], upgjobs_result.prototype, "jobs", void 0);
4876
- upgjobs_result = __decorate([
4877
- Struct.type('upgjobs_result')
4878
- ], upgjobs_result);
4879
- Types.upgjobs_result = upgjobs_result;
4880
5220
  let upgrade = class upgrade extends Struct {
4881
5221
  };
4882
5222
  __decorate([
@@ -4898,47 +5238,11 @@ var Types$1;
4898
5238
  Struct.type('upgrade')
4899
5239
  ], upgrade);
4900
5240
  Types.upgrade = upgrade;
4901
- let upgradejob = class upgradejob extends Struct {
4902
- };
4903
- __decorate([
4904
- Struct.field(UInt64)
4905
- ], upgradejob.prototype, "target_id", void 0);
4906
- __decorate([
4907
- Struct.field(UInt64)
4908
- ], upgradejob.prototype, "dock_id", void 0);
4909
- __decorate([
4910
- Struct.field(UInt16)
4911
- ], upgradejob.prototype, "target_item_id", void 0);
4912
- __decorate([
4913
- Struct.field(cargo_item, { array: true })
4914
- ], upgradejob.prototype, "inputs", void 0);
4915
- upgradejob = __decorate([
4916
- Struct.type('upgradejob')
4917
- ], upgradejob);
4918
- Types.upgradejob = upgradejob;
4919
- let votecharter = class votecharter extends Struct {
4920
- };
4921
- __decorate([
4922
- Struct.field(Name)
4923
- ], votecharter.prototype, "player", void 0);
4924
- __decorate([
4925
- Struct.field(Int64)
4926
- ], votecharter.prototype, "x", void 0);
4927
- __decorate([
4928
- Struct.field(Int64)
4929
- ], votecharter.prototype, "y", void 0);
4930
- __decorate([
4931
- Struct.field(UInt32)
4932
- ], votecharter.prototype, "node_id", void 0);
4933
- votecharter = __decorate([
4934
- Struct.type('votecharter')
4935
- ], votecharter);
4936
- Types.votecharter = votecharter;
4937
5241
  let voteready = class voteready extends Struct {
4938
5242
  };
4939
5243
  __decorate([
4940
5244
  Struct.field(UInt32)
4941
- ], voteready.prototype, "max_ballots", void 0);
5245
+ ], voteready.prototype, "max_pages", void 0);
4942
5246
  voteready = __decorate([
4943
5247
  Struct.type('voteready')
4944
5248
  ], voteready);
@@ -4964,6 +5268,39 @@ var Types$1;
4964
5268
  Struct.type('wipe')
4965
5269
  ], wipe);
4966
5270
  Types.wipe = wipe;
5271
+ let worlds_row = class worlds_row extends Struct {
5272
+ };
5273
+ __decorate([
5274
+ Struct.field(UInt64)
5275
+ ], worlds_row.prototype, "location_id", void 0);
5276
+ __decorate([
5277
+ Struct.field(UInt64)
5278
+ ], worlds_row.prototype, "lifetime", void 0);
5279
+ __decorate([
5280
+ Struct.field(UInt64)
5281
+ ], worlds_row.prototype, "active", void 0);
5282
+ __decorate([
5283
+ Struct.field(UInt32)
5284
+ ], worlds_row.prototype, "active_epoch", void 0);
5285
+ __decorate([
5286
+ Struct.field(UInt64)
5287
+ ], worlds_row.prototype, "spent", void 0);
5288
+ __decorate([
5289
+ Struct.field(UInt64)
5290
+ ], worlds_row.prototype, "unassigned", void 0);
5291
+ __decorate([
5292
+ Struct.field(UInt64)
5293
+ ], worlds_row.prototype, "ballot_id", void 0);
5294
+ __decorate([
5295
+ Struct.field(Name)
5296
+ ], worlds_row.prototype, "founder", void 0);
5297
+ __decorate([
5298
+ Struct.field(UInt32)
5299
+ ], worlds_row.prototype, "founded", void 0);
5300
+ worlds_row = __decorate([
5301
+ Struct.type('worlds_row')
5302
+ ], worlds_row);
5303
+ Types.worlds_row = worlds_row;
4967
5304
  let wormhole_info = class wormhole_info extends Struct {
4968
5305
  };
4969
5306
  __decorate([
@@ -4987,6 +5324,9 @@ var Types$1;
4987
5324
  __decorate([
4988
5325
  Struct.field(Name)
4989
5326
  ], wrapconfig_row.prototype, "fee_account", void 0);
5327
+ __decorate([
5328
+ Struct.field(UInt64)
5329
+ ], wrapconfig_row.prototype, "min_asset_id", void 0);
4990
5330
  wrapconfig_row = __decorate([
4991
5331
  Struct.type('wrapconfig_row')
4992
5332
  ], wrapconfig_row);
@@ -5008,42 +5348,44 @@ var Types$1;
5008
5348
  Types.wrapcost_row = wrapcost_row;
5009
5349
  })(Types$1 || (Types$1 = {}));
5010
5350
  ({
5351
+ ballot: Types$1.ballot_row,
5352
+ ballotpicks: Types$1.ballotpicks_row,
5353
+ ballotseq: Types$1.ballot_seq_row,
5354
+ ballotsettle: Types$1.ballotsettle_row,
5355
+ buildings: Types$1.buildings_row,
5356
+ buildjobs: Types$1.buildjob_row,
5011
5357
  cargo: Types$1.cargo_row,
5012
- charters: Types$1.charters_row,
5358
+ citizenship: Types$1.citizenship_row,
5013
5359
  civicconfig: Types$1.civicconfig_row,
5014
5360
  claims: Types$1.claim_row,
5015
5361
  cluster: Types$1.cluster_row,
5016
5362
  commit: Types$1.commit_row,
5017
- depot: Types$1.depot_row,
5018
- depotacct: Types$1.depotacct_row,
5363
+ craftjobs: Types$1.craftjob_row,
5019
5364
  entity: Types$1.entity_row,
5020
5365
  entitygroup: Types$1.entitygroup_row,
5021
5366
  entityseq: Types$1.entity_seq_row,
5022
5367
  epoch: Types$1.epoch_row,
5023
- infballot: Types$1.infballot_row,
5024
5368
  infburn: Types$1.infburn_row,
5025
5369
  infdemand: Types$1.infdemand_row,
5026
- infloc: Types$1.infloc_row,
5027
5370
  infmint: Types$1.infmint_row,
5028
- infplayer: Types$1.infplayer_row,
5029
- infplayerloc: Types$1.infplayerloc_row,
5030
5371
  infpool: Types$1.infpool_row,
5031
5372
  infquality: Types$1.infquality_row,
5032
- inftally: Types$1.inftally_row,
5033
- infvote: Types$1.infvote_row,
5034
5373
  infweight: Types$1.infweight_row,
5035
- jobs: Types$1.job_row,
5374
+ lockers: Types$1.locker_row,
5375
+ mandates: Types$1.mandates_row,
5036
5376
  mintq: Types$1.mintq_row,
5037
5377
  nftconfig: Types$1.nftconfig_row,
5038
5378
  oraclecfg: Types$1.oracle_config_row,
5039
5379
  oracles: Types$1.oracle_row,
5040
5380
  player: Types$1.player_row,
5381
+ progress: Types$1.progress_row,
5041
5382
  reserve: Types$1.reserve_row,
5042
5383
  reveal: Types$1.reveal_row,
5043
- service: Types$1.service_row,
5384
+ standing: Types$1.standing_row,
5044
5385
  state: Types$1.state_row,
5386
+ storage: Types$1.storage_row,
5045
5387
  types: Types$1.types_row,
5046
- upgjobs: Types$1.upgjob_row,
5388
+ worlds: Types$1.worlds_row,
5047
5389
  wrapconfig: Types$1.wrapconfig_row,
5048
5390
  wrapcost: Types$1.wrapcost_row,
5049
5391
  });
@@ -5196,756 +5538,756 @@ var Types;
5196
5538
  var items = [
5197
5539
  {
5198
5540
  id: 101,
5199
- mass: 1000,
5541
+ mass: 10,
5200
5542
  type: "resource",
5201
5543
  tier: 1,
5202
5544
  category: "ore"
5203
5545
  },
5204
5546
  {
5205
5547
  id: 102,
5206
- mass: 1000,
5548
+ mass: 10,
5207
5549
  type: "resource",
5208
5550
  tier: 2,
5209
5551
  category: "ore"
5210
5552
  },
5211
5553
  {
5212
5554
  id: 103,
5213
- mass: 1000,
5555
+ mass: 10,
5214
5556
  type: "resource",
5215
5557
  tier: 3,
5216
5558
  category: "ore"
5217
5559
  },
5218
5560
  {
5219
5561
  id: 104,
5220
- mass: 1000,
5562
+ mass: 10,
5221
5563
  type: "resource",
5222
5564
  tier: 4,
5223
5565
  category: "ore"
5224
5566
  },
5225
5567
  {
5226
5568
  id: 105,
5227
- mass: 1000,
5569
+ mass: 10,
5228
5570
  type: "resource",
5229
5571
  tier: 5,
5230
5572
  category: "ore"
5231
5573
  },
5232
5574
  {
5233
5575
  id: 106,
5234
- mass: 1000,
5576
+ mass: 10,
5235
5577
  type: "resource",
5236
5578
  tier: 6,
5237
5579
  category: "ore"
5238
5580
  },
5239
5581
  {
5240
5582
  id: 107,
5241
- mass: 1000,
5583
+ mass: 10,
5242
5584
  type: "resource",
5243
5585
  tier: 7,
5244
5586
  category: "ore"
5245
5587
  },
5246
5588
  {
5247
5589
  id: 108,
5248
- mass: 1000,
5590
+ mass: 10,
5249
5591
  type: "resource",
5250
5592
  tier: 8,
5251
5593
  category: "ore"
5252
5594
  },
5253
5595
  {
5254
5596
  id: 109,
5255
- mass: 1000,
5597
+ mass: 10,
5256
5598
  type: "resource",
5257
5599
  tier: 9,
5258
5600
  category: "ore"
5259
5601
  },
5260
5602
  {
5261
5603
  id: 110,
5262
- mass: 1000,
5604
+ mass: 10,
5263
5605
  type: "resource",
5264
5606
  tier: 10,
5265
5607
  category: "ore"
5266
5608
  },
5267
5609
  {
5268
5610
  id: 201,
5269
- mass: 1000,
5611
+ mass: 10,
5270
5612
  type: "resource",
5271
5613
  tier: 1,
5272
5614
  category: "crystal"
5273
5615
  },
5274
5616
  {
5275
5617
  id: 202,
5276
- mass: 1000,
5618
+ mass: 10,
5277
5619
  type: "resource",
5278
5620
  tier: 2,
5279
5621
  category: "crystal"
5280
5622
  },
5281
5623
  {
5282
5624
  id: 203,
5283
- mass: 1000,
5625
+ mass: 10,
5284
5626
  type: "resource",
5285
5627
  tier: 3,
5286
5628
  category: "crystal"
5287
5629
  },
5288
5630
  {
5289
5631
  id: 204,
5290
- mass: 1000,
5632
+ mass: 10,
5291
5633
  type: "resource",
5292
5634
  tier: 4,
5293
5635
  category: "crystal"
5294
5636
  },
5295
5637
  {
5296
5638
  id: 205,
5297
- mass: 1000,
5639
+ mass: 10,
5298
5640
  type: "resource",
5299
5641
  tier: 5,
5300
5642
  category: "crystal"
5301
5643
  },
5302
5644
  {
5303
5645
  id: 206,
5304
- mass: 1000,
5646
+ mass: 10,
5305
5647
  type: "resource",
5306
5648
  tier: 6,
5307
5649
  category: "crystal"
5308
5650
  },
5309
5651
  {
5310
5652
  id: 207,
5311
- mass: 1000,
5653
+ mass: 10,
5312
5654
  type: "resource",
5313
5655
  tier: 7,
5314
5656
  category: "crystal"
5315
5657
  },
5316
5658
  {
5317
5659
  id: 208,
5318
- mass: 1000,
5660
+ mass: 10,
5319
5661
  type: "resource",
5320
5662
  tier: 8,
5321
5663
  category: "crystal"
5322
5664
  },
5323
5665
  {
5324
5666
  id: 209,
5325
- mass: 1000,
5667
+ mass: 10,
5326
5668
  type: "resource",
5327
5669
  tier: 9,
5328
5670
  category: "crystal"
5329
5671
  },
5330
5672
  {
5331
5673
  id: 210,
5332
- mass: 1000,
5674
+ mass: 10,
5333
5675
  type: "resource",
5334
5676
  tier: 10,
5335
5677
  category: "crystal"
5336
5678
  },
5337
5679
  {
5338
5680
  id: 301,
5339
- mass: 1000,
5681
+ mass: 10,
5340
5682
  type: "resource",
5341
5683
  tier: 1,
5342
5684
  category: "gas"
5343
5685
  },
5344
5686
  {
5345
5687
  id: 302,
5346
- mass: 1000,
5688
+ mass: 10,
5347
5689
  type: "resource",
5348
5690
  tier: 2,
5349
5691
  category: "gas"
5350
5692
  },
5351
5693
  {
5352
5694
  id: 303,
5353
- mass: 1000,
5695
+ mass: 10,
5354
5696
  type: "resource",
5355
5697
  tier: 3,
5356
5698
  category: "gas"
5357
5699
  },
5358
5700
  {
5359
5701
  id: 304,
5360
- mass: 1000,
5702
+ mass: 10,
5361
5703
  type: "resource",
5362
5704
  tier: 4,
5363
5705
  category: "gas"
5364
5706
  },
5365
5707
  {
5366
5708
  id: 305,
5367
- mass: 1000,
5709
+ mass: 10,
5368
5710
  type: "resource",
5369
5711
  tier: 5,
5370
5712
  category: "gas"
5371
5713
  },
5372
5714
  {
5373
5715
  id: 306,
5374
- mass: 1000,
5716
+ mass: 10,
5375
5717
  type: "resource",
5376
5718
  tier: 6,
5377
5719
  category: "gas"
5378
5720
  },
5379
5721
  {
5380
5722
  id: 307,
5381
- mass: 1000,
5723
+ mass: 10,
5382
5724
  type: "resource",
5383
5725
  tier: 7,
5384
5726
  category: "gas"
5385
5727
  },
5386
5728
  {
5387
5729
  id: 308,
5388
- mass: 1000,
5730
+ mass: 10,
5389
5731
  type: "resource",
5390
5732
  tier: 8,
5391
5733
  category: "gas"
5392
5734
  },
5393
5735
  {
5394
5736
  id: 309,
5395
- mass: 1000,
5737
+ mass: 10,
5396
5738
  type: "resource",
5397
5739
  tier: 9,
5398
5740
  category: "gas"
5399
5741
  },
5400
5742
  {
5401
5743
  id: 310,
5402
- mass: 1000,
5744
+ mass: 10,
5403
5745
  type: "resource",
5404
5746
  tier: 10,
5405
5747
  category: "gas"
5406
5748
  },
5407
5749
  {
5408
5750
  id: 401,
5409
- mass: 1000,
5751
+ mass: 10,
5410
5752
  type: "resource",
5411
5753
  tier: 1,
5412
5754
  category: "regolith"
5413
5755
  },
5414
5756
  {
5415
5757
  id: 402,
5416
- mass: 1000,
5758
+ mass: 10,
5417
5759
  type: "resource",
5418
5760
  tier: 2,
5419
5761
  category: "regolith"
5420
5762
  },
5421
5763
  {
5422
5764
  id: 403,
5423
- mass: 1000,
5765
+ mass: 10,
5424
5766
  type: "resource",
5425
5767
  tier: 3,
5426
5768
  category: "regolith"
5427
5769
  },
5428
5770
  {
5429
5771
  id: 404,
5430
- mass: 1000,
5772
+ mass: 10,
5431
5773
  type: "resource",
5432
5774
  tier: 4,
5433
5775
  category: "regolith"
5434
5776
  },
5435
5777
  {
5436
5778
  id: 405,
5437
- mass: 1000,
5779
+ mass: 10,
5438
5780
  type: "resource",
5439
5781
  tier: 5,
5440
5782
  category: "regolith"
5441
5783
  },
5442
5784
  {
5443
5785
  id: 406,
5444
- mass: 1000,
5786
+ mass: 10,
5445
5787
  type: "resource",
5446
5788
  tier: 6,
5447
5789
  category: "regolith"
5448
5790
  },
5449
5791
  {
5450
5792
  id: 407,
5451
- mass: 1000,
5793
+ mass: 10,
5452
5794
  type: "resource",
5453
5795
  tier: 7,
5454
5796
  category: "regolith"
5455
5797
  },
5456
5798
  {
5457
5799
  id: 408,
5458
- mass: 1000,
5800
+ mass: 10,
5459
5801
  type: "resource",
5460
5802
  tier: 8,
5461
5803
  category: "regolith"
5462
5804
  },
5463
5805
  {
5464
5806
  id: 409,
5465
- mass: 1000,
5807
+ mass: 10,
5466
5808
  type: "resource",
5467
5809
  tier: 9,
5468
5810
  category: "regolith"
5469
5811
  },
5470
5812
  {
5471
5813
  id: 410,
5472
- mass: 1000,
5814
+ mass: 10,
5473
5815
  type: "resource",
5474
5816
  tier: 10,
5475
5817
  category: "regolith"
5476
5818
  },
5477
5819
  {
5478
5820
  id: 501,
5479
- mass: 1000,
5821
+ mass: 10,
5480
5822
  type: "resource",
5481
5823
  tier: 1,
5482
5824
  category: "biomass"
5483
5825
  },
5484
5826
  {
5485
5827
  id: 502,
5486
- mass: 1000,
5828
+ mass: 10,
5487
5829
  type: "resource",
5488
5830
  tier: 2,
5489
5831
  category: "biomass"
5490
5832
  },
5491
5833
  {
5492
5834
  id: 503,
5493
- mass: 1000,
5835
+ mass: 10,
5494
5836
  type: "resource",
5495
5837
  tier: 3,
5496
5838
  category: "biomass"
5497
5839
  },
5498
5840
  {
5499
5841
  id: 504,
5500
- mass: 1000,
5842
+ mass: 10,
5501
5843
  type: "resource",
5502
5844
  tier: 4,
5503
5845
  category: "biomass"
5504
5846
  },
5505
5847
  {
5506
5848
  id: 505,
5507
- mass: 1000,
5849
+ mass: 10,
5508
5850
  type: "resource",
5509
5851
  tier: 5,
5510
5852
  category: "biomass"
5511
5853
  },
5512
5854
  {
5513
5855
  id: 506,
5514
- mass: 1000,
5856
+ mass: 10,
5515
5857
  type: "resource",
5516
5858
  tier: 6,
5517
5859
  category: "biomass"
5518
5860
  },
5519
5861
  {
5520
5862
  id: 507,
5521
- mass: 1000,
5863
+ mass: 10,
5522
5864
  type: "resource",
5523
5865
  tier: 7,
5524
5866
  category: "biomass"
5525
5867
  },
5526
5868
  {
5527
5869
  id: 508,
5528
- mass: 1000,
5870
+ mass: 10,
5529
5871
  type: "resource",
5530
5872
  tier: 8,
5531
5873
  category: "biomass"
5532
5874
  },
5533
5875
  {
5534
5876
  id: 509,
5535
- mass: 1000,
5877
+ mass: 10,
5536
5878
  type: "resource",
5537
5879
  tier: 9,
5538
5880
  category: "biomass"
5539
5881
  },
5540
5882
  {
5541
5883
  id: 510,
5542
- mass: 1000,
5884
+ mass: 10,
5543
5885
  type: "resource",
5544
5886
  tier: 10,
5545
5887
  category: "biomass"
5546
5888
  },
5547
5889
  {
5548
5890
  id: 10001,
5549
- mass: 4000,
5891
+ mass: 40,
5550
5892
  type: "component",
5551
5893
  tier: 1
5552
5894
  },
5553
5895
  {
5554
5896
  id: 10002,
5555
- mass: 4000,
5897
+ mass: 40,
5556
5898
  type: "component",
5557
5899
  tier: 1
5558
5900
  },
5559
5901
  {
5560
5902
  id: 10003,
5561
- mass: 4000,
5903
+ mass: 40,
5562
5904
  type: "component",
5563
5905
  tier: 1
5564
5906
  },
5565
5907
  {
5566
5908
  id: 10004,
5567
- mass: 4000,
5909
+ mass: 40,
5568
5910
  type: "component",
5569
5911
  tier: 1
5570
5912
  },
5571
5913
  {
5572
5914
  id: 10005,
5573
- mass: 4000,
5915
+ mass: 40,
5574
5916
  type: "component",
5575
5917
  tier: 1
5576
5918
  },
5577
5919
  {
5578
5920
  id: 10006,
5579
- mass: 4000,
5921
+ mass: 40,
5580
5922
  type: "component",
5581
5923
  tier: 1
5582
5924
  },
5583
5925
  {
5584
5926
  id: 10007,
5585
- mass: 4000,
5927
+ mass: 40,
5586
5928
  type: "component",
5587
5929
  tier: 1
5588
5930
  },
5589
5931
  {
5590
5932
  id: 10008,
5591
- mass: 4000,
5933
+ mass: 40,
5592
5934
  type: "component",
5593
5935
  tier: 1
5594
5936
  },
5595
5937
  {
5596
5938
  id: 10009,
5597
- mass: 4000,
5939
+ mass: 40,
5598
5940
  type: "component",
5599
5941
  tier: 1
5600
5942
  },
5601
5943
  {
5602
5944
  id: 10010,
5603
- mass: 4000,
5945
+ mass: 40,
5604
5946
  type: "component",
5605
5947
  tier: 1
5606
5948
  },
5607
5949
  {
5608
5950
  id: 10100,
5609
- mass: 960000,
5951
+ mass: 9600,
5610
5952
  type: "module",
5611
5953
  tier: 1,
5612
5954
  subtype: "engine"
5613
5955
  },
5614
5956
  {
5615
5957
  id: 10101,
5616
- mass: 960000,
5958
+ mass: 9600,
5617
5959
  type: "module",
5618
5960
  tier: 1,
5619
5961
  subtype: "generator"
5620
5962
  },
5621
5963
  {
5622
5964
  id: 10102,
5623
- mass: 960000,
5965
+ mass: 9600,
5624
5966
  type: "module",
5625
5967
  tier: 1,
5626
5968
  subtype: "gatherer"
5627
5969
  },
5628
5970
  {
5629
5971
  id: 10103,
5630
- mass: 960000,
5972
+ mass: 9600,
5631
5973
  type: "module",
5632
5974
  tier: 1,
5633
5975
  subtype: "loader"
5634
5976
  },
5635
5977
  {
5636
5978
  id: 10104,
5637
- mass: 960000,
5979
+ mass: 9600,
5638
5980
  type: "module",
5639
5981
  tier: 1,
5640
5982
  subtype: "crafter"
5641
5983
  },
5642
5984
  {
5643
5985
  id: 10105,
5644
- mass: 960000,
5986
+ mass: 9600,
5645
5987
  type: "module",
5646
5988
  tier: 1,
5647
5989
  subtype: "storage"
5648
5990
  },
5649
5991
  {
5650
5992
  id: 10106,
5651
- mass: 960000,
5993
+ mass: 9600,
5652
5994
  type: "module",
5653
5995
  tier: 1,
5654
5996
  subtype: "hauler"
5655
5997
  },
5656
5998
  {
5657
5999
  id: 10107,
5658
- mass: 960000,
6000
+ mass: 9600,
5659
6001
  type: "module",
5660
6002
  tier: 1,
5661
6003
  subtype: "warp"
5662
6004
  },
5663
6005
  {
5664
6006
  id: 10108,
5665
- mass: 960000,
6007
+ mass: 9600,
5666
6008
  type: "module",
5667
6009
  tier: 1,
5668
6010
  subtype: "battery"
5669
6011
  },
5670
6012
  {
5671
6013
  id: 10109,
5672
- mass: 1000000,
6014
+ mass: 10000,
5673
6015
  type: "module",
5674
6016
  tier: 1,
5675
6017
  subtype: "launcher"
5676
6018
  },
5677
6019
  {
5678
6020
  id: 10110,
5679
- mass: 960000,
6021
+ mass: 9600,
5680
6022
  type: "module",
5681
6023
  tier: 1,
5682
6024
  subtype: "builder"
5683
6025
  },
5684
6026
  {
5685
6027
  id: 10200,
5686
- mass: 1900000,
6028
+ mass: 19000,
5687
6029
  type: "entity",
5688
6030
  tier: 1
5689
6031
  },
5690
6032
  {
5691
6033
  id: 10201,
5692
- mass: 2400000,
6034
+ mass: 24000,
5693
6035
  type: "entity",
5694
6036
  tier: 1
5695
6037
  },
5696
6038
  {
5697
6039
  id: 10202,
5698
- mass: 3200000,
6040
+ mass: 32000,
5699
6041
  type: "entity",
5700
6042
  tier: 1
5701
6043
  },
5702
6044
  {
5703
6045
  id: 10203,
5704
- mass: 1900000,
6046
+ mass: 19000,
5705
6047
  type: "entity",
5706
6048
  tier: 1
5707
6049
  },
5708
6050
  {
5709
6051
  id: 10204,
5710
- mass: 1900000,
6052
+ mass: 19000,
5711
6053
  type: "entity",
5712
6054
  tier: 1
5713
6055
  },
5714
6056
  {
5715
6057
  id: 10205,
5716
- mass: 8000000,
6058
+ mass: 80000,
5717
6059
  type: "entity",
5718
6060
  tier: 1
5719
6061
  },
5720
6062
  {
5721
6063
  id: 10206,
5722
- mass: 8000000,
6064
+ mass: 80000,
5723
6065
  type: "entity",
5724
6066
  tier: 1
5725
6067
  },
5726
6068
  {
5727
6069
  id: 10207,
5728
- mass: 2400000,
6070
+ mass: 24000,
5729
6071
  type: "entity",
5730
6072
  tier: 1
5731
6073
  },
5732
6074
  {
5733
6075
  id: 10208,
5734
- mass: 4800000,
6076
+ mass: 48000,
5735
6077
  type: "entity",
5736
6078
  tier: 1
5737
6079
  },
5738
6080
  {
5739
6081
  id: 10209,
5740
- mass: 1900000,
6082
+ mass: 19000,
5741
6083
  type: "entity",
5742
6084
  tier: 1
5743
6085
  },
5744
6086
  {
5745
6087
  id: 10210,
5746
- mass: 1600000,
6088
+ mass: 16000,
5747
6089
  type: "entity",
5748
6090
  tier: 1
5749
6091
  },
5750
6092
  {
5751
6093
  id: 10211,
5752
- mass: 2400000,
6094
+ mass: 24000,
5753
6095
  type: "entity",
5754
6096
  tier: 1
5755
6097
  },
5756
6098
  {
5757
6099
  id: 10212,
5758
- mass: 2400000,
6100
+ mass: 24000,
5759
6101
  type: "entity",
5760
6102
  tier: 1
5761
6103
  },
5762
6104
  {
5763
6105
  id: 10213,
5764
- mass: 2400000,
6106
+ mass: 24000,
5765
6107
  type: "entity",
5766
6108
  tier: 1
5767
6109
  },
5768
6110
  {
5769
6111
  id: 10214,
5770
- mass: 2400000,
6112
+ mass: 24000,
5771
6113
  type: "entity",
5772
6114
  tier: 1
5773
6115
  },
5774
6116
  {
5775
6117
  id: 10215,
5776
- mass: 2400000,
6118
+ mass: 24000,
5777
6119
  type: "entity",
5778
6120
  tier: 1
5779
6121
  },
5780
6122
  {
5781
6123
  id: 10216,
5782
- mass: 4800000,
6124
+ mass: 48000,
5783
6125
  type: "entity",
5784
6126
  tier: 1
5785
6127
  },
5786
6128
  {
5787
6129
  id: 10218,
5788
- mass: 2400000,
6130
+ mass: 24000,
5789
6131
  type: "entity",
5790
6132
  tier: 1
5791
6133
  },
5792
6134
  {
5793
6135
  id: 10219,
5794
- mass: 4800000,
6136
+ mass: 48000,
5795
6137
  type: "entity",
5796
6138
  tier: 1
5797
6139
  },
5798
6140
  {
5799
6141
  id: 11001,
5800
- mass: 4800,
6142
+ mass: 48,
5801
6143
  type: "component",
5802
6144
  tier: 2
5803
6145
  },
5804
6146
  {
5805
6147
  id: 11002,
5806
- mass: 4800,
6148
+ mass: 48,
5807
6149
  type: "component",
5808
6150
  tier: 2
5809
6151
  },
5810
6152
  {
5811
6153
  id: 11003,
5812
- mass: 4800,
6154
+ mass: 48,
5813
6155
  type: "component",
5814
6156
  tier: 2
5815
6157
  },
5816
6158
  {
5817
6159
  id: 11004,
5818
- mass: 4800,
6160
+ mass: 48,
5819
6161
  type: "component",
5820
6162
  tier: 2
5821
6163
  },
5822
6164
  {
5823
6165
  id: 11005,
5824
- mass: 4800,
6166
+ mass: 48,
5825
6167
  type: "component",
5826
6168
  tier: 2
5827
6169
  },
5828
6170
  {
5829
6171
  id: 11006,
5830
- mass: 4800,
6172
+ mass: 48,
5831
6173
  type: "component",
5832
6174
  tier: 2
5833
6175
  },
5834
6176
  {
5835
6177
  id: 11007,
5836
- mass: 4800,
6178
+ mass: 48,
5837
6179
  type: "component",
5838
6180
  tier: 2
5839
6181
  },
5840
6182
  {
5841
6183
  id: 11008,
5842
- mass: 4800,
6184
+ mass: 48,
5843
6185
  type: "component",
5844
6186
  tier: 2
5845
6187
  },
5846
6188
  {
5847
6189
  id: 11009,
5848
- mass: 4800,
6190
+ mass: 48,
5849
6191
  type: "component",
5850
6192
  tier: 2
5851
6193
  },
5852
6194
  {
5853
6195
  id: 11010,
5854
- mass: 4800,
6196
+ mass: 48,
5855
6197
  type: "component",
5856
6198
  tier: 2
5857
6199
  },
5858
6200
  {
5859
6201
  id: 11100,
5860
- mass: 1536000,
6202
+ mass: 15360,
5861
6203
  type: "module",
5862
6204
  tier: 2,
5863
6205
  subtype: "engine"
5864
6206
  },
5865
6207
  {
5866
6208
  id: 11101,
5867
- mass: 1536000,
6209
+ mass: 15360,
5868
6210
  type: "module",
5869
6211
  tier: 2,
5870
6212
  subtype: "generator"
5871
6213
  },
5872
6214
  {
5873
6215
  id: 11102,
5874
- mass: 1536000,
6216
+ mass: 15360,
5875
6217
  type: "module",
5876
6218
  tier: 2,
5877
6219
  subtype: "gatherer"
5878
6220
  },
5879
6221
  {
5880
6222
  id: 11103,
5881
- mass: 1536000,
6223
+ mass: 15360,
5882
6224
  type: "module",
5883
6225
  tier: 2,
5884
6226
  subtype: "loader"
5885
6227
  },
5886
6228
  {
5887
6229
  id: 11104,
5888
- mass: 1536000,
6230
+ mass: 15360,
5889
6231
  type: "module",
5890
6232
  tier: 2,
5891
6233
  subtype: "crafter"
5892
6234
  },
5893
6235
  {
5894
6236
  id: 11105,
5895
- mass: 1536000,
6237
+ mass: 15360,
5896
6238
  type: "module",
5897
6239
  tier: 2,
5898
6240
  subtype: "storage"
5899
6241
  },
5900
6242
  {
5901
6243
  id: 11106,
5902
- mass: 1536000,
6244
+ mass: 15360,
5903
6245
  type: "module",
5904
6246
  tier: 2,
5905
6247
  subtype: "hauler"
5906
6248
  },
5907
6249
  {
5908
6250
  id: 11107,
5909
- mass: 1536000,
6251
+ mass: 15360,
5910
6252
  type: "module",
5911
6253
  tier: 2,
5912
6254
  subtype: "warp"
5913
6255
  },
5914
6256
  {
5915
6257
  id: 11108,
5916
- mass: 1536000,
6258
+ mass: 15360,
5917
6259
  type: "module",
5918
6260
  tier: 2,
5919
6261
  subtype: "battery"
5920
6262
  },
5921
6263
  {
5922
6264
  id: 11110,
5923
- mass: 1536000,
6265
+ mass: 15360,
5924
6266
  type: "module",
5925
6267
  tier: 2,
5926
6268
  subtype: "builder"
5927
6269
  },
5928
6270
  {
5929
6271
  id: 11200,
5930
- mass: 3100000,
6272
+ mass: 31000,
5931
6273
  type: "entity",
5932
6274
  tier: 2
5933
6275
  },
5934
6276
  {
5935
6277
  id: 11212,
5936
- mass: 4320000,
6278
+ mass: 43200,
5937
6279
  type: "entity",
5938
6280
  tier: 2
5939
6281
  },
5940
6282
  {
5941
6283
  id: 11213,
5942
- mass: 5760000,
6284
+ mass: 57600,
5943
6285
  type: "entity",
5944
6286
  tier: 2
5945
6287
  },
5946
6288
  {
5947
6289
  id: 11214,
5948
- mass: 5760000,
6290
+ mass: 57600,
5949
6291
  type: "entity",
5950
6292
  tier: 2
5951
6293
  }
@@ -6235,7 +6577,7 @@ const itemMetadata = {
6235
6577
  },
6236
6578
  10219: {
6237
6579
  name: 'Depot',
6238
- description: 'Planetary storage facility with a loader module slot and four cargo slots.',
6580
+ description: 'Planetary storage facility with two shuttle bays and four cargo slots.',
6239
6581
  color: '#EAB308',
6240
6582
  },
6241
6583
  11001: {
@@ -6389,6 +6731,8 @@ var TaskType;
6389
6731
  TaskType[TaskType["SHUTTLE"] = 18] = "SHUTTLE";
6390
6732
  TaskType[TaskType["REFIT"] = 19] = "REFIT";
6391
6733
  TaskType[TaskType["CONTRIBUTE"] = 20] = "CONTRIBUTE";
6734
+ TaskType[TaskType["DEPOT_STORE"] = 21] = "DEPOT_STORE";
6735
+ TaskType[TaskType["DEPOT_TAKE"] = 22] = "DEPOT_TAKE";
6392
6736
  })(TaskType || (TaskType = {}));
6393
6737
  var RefitOp;
6394
6738
  (function (RefitOp) {