@shipload/sdk 1.0.0-next.64 → 1.0.0-next.66

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 (79) hide show
  1. package/lib/shipload.d.ts +754 -316
  2. package/lib/shipload.js +2650 -1336
  3. package/lib/shipload.js.map +1 -1
  4. package/lib/shipload.m.js +2564 -1308
  5. package/lib/shipload.m.js.map +1 -1
  6. package/lib/testing.d.ts +219 -145
  7. package/lib/testing.js +910 -557
  8. package/lib/testing.js.map +1 -1
  9. package/lib/testing.m.js +910 -557
  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 +110 -5
  18. package/src/contracts/platform.ts +10 -1
  19. package/src/contracts/server.ts +498 -331
  20. package/src/data/charters.json +325 -127
  21. package/src/data/entities.json +24 -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/recipes.json +56 -95
  26. package/src/derivation/build-methods.test.ts +59 -1
  27. package/src/derivation/build-methods.ts +2 -0
  28. package/src/derivation/capabilities.ts +7 -7
  29. package/src/derivation/strata.ts +5 -3
  30. package/src/derivation/tiers.ts +5 -5
  31. package/src/entity/hydrate.test.ts +156 -0
  32. package/src/entity/hydrate.ts +86 -0
  33. package/src/errors.ts +9 -0
  34. package/src/format.ts +15 -13
  35. package/src/index-module.ts +33 -5
  36. package/src/influence/ballot.test.ts +103 -0
  37. package/src/influence/ballot.ts +98 -0
  38. package/src/influence/charter-metadata.test.ts +136 -0
  39. package/src/influence/charter-metadata.ts +236 -0
  40. package/src/influence/charters.test.ts +51 -65
  41. package/src/influence/charters.ts +70 -40
  42. package/src/influence/civic.test.ts +278 -0
  43. package/src/influence/civic.ts +269 -0
  44. package/src/influence/constants.ts +30 -9
  45. package/src/influence/decomp.ts +15 -15
  46. package/src/influence/duration.ts +42 -6
  47. package/src/influence/index.ts +49 -6
  48. package/src/influence/influence.test.ts +76 -9
  49. package/src/influence/valuation.ts +17 -17
  50. package/src/managers/actions.ts +65 -37
  51. package/src/managers/base.ts +4 -0
  52. package/src/managers/context.ts +3 -1
  53. package/src/managers/index.ts +5 -2
  54. package/src/managers/influence.test.ts +18 -20
  55. package/src/managers/influence.ts +162 -84
  56. package/src/managers/jobs.test.ts +2 -2
  57. package/src/managers/jobs.ts +4 -4
  58. package/src/nft/description.ts +10 -11
  59. package/src/planner/index.ts +54 -0
  60. package/src/planner/planner.test.ts +127 -2
  61. package/src/resolution/display-name.ts +1 -1
  62. package/src/scheduling/availability.test.ts +113 -0
  63. package/src/scheduling/availability.ts +48 -8
  64. package/src/scheduling/jobs.ts +1 -1
  65. package/src/scheduling/projection.ts +2 -16
  66. package/src/scheduling/task-cargo.test.ts +62 -1
  67. package/src/scheduling/task-cargo.ts +25 -10
  68. package/src/scheduling/task-effects.test.ts +35 -0
  69. package/src/scheduling/task-effects.ts +34 -0
  70. package/src/scheduling/unwrap.test.ts +3 -3
  71. package/src/scheduling/unwrap.ts +3 -3
  72. package/src/shipload.ts +23 -4
  73. package/src/travel/reach.test.ts +86 -0
  74. package/src/travel/reach.ts +23 -10
  75. package/src/travel/route-build.test.ts +63 -0
  76. package/src/travel/route-build.ts +60 -0
  77. package/src/travel/travel.ts +2 -1
  78. package/src/types.ts +6 -2
  79. package/src/utils/hash.ts +18 -2
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('DmVvc2lvOjphYmkvMS4yAA4LYWNjcnVlZF9yb3cAAgdhY2NvdW50BG5hbWUHYmFsYW5jZQVhc3NldAliZW5lZl9yb3cAAgdhY2NvdW50BG5hbWUDYnBzBnVpbnQxNgtiZW5lZmljaWFyeQACB2FjY291bnQEbmFtZQNicHMGdWludDE2BWNsYWltAAETYmVuZWZpY2lhcnlfYWNjb3VudARuYW1lCmN1cnNvcl9yb3cAAQ1uZXh0X2Fzc2V0X2lkBnVpbnQ2NAhsb3RzX3JvdwADCGFzc2V0X2lkBnVpbnQ2NAVncmFkZQRuYW1lCmF1Y3Rpb25faWQGdWludDY0CXJlc2N1ZW5mdAADCWFzc2V0X2lkcwh1aW50NjRbXQJ0bwRuYW1lBG1lbW8Gc3RyaW5nCHNldGJlbmVmAAEIcmVnaXN0cnkNYmVuZWZpY2lhcnlbXQlzZXRtYXJrZXQAAgZtYXJrZXQEbmFtZRFtYWtlcl9tYXJrZXRwbGFjZQRuYW1lCHNldHRlcm1zAAMFZ3JhZGUEbmFtZQxzdGFydGluZ19iaWQFYXNzZXQIZHVyYXRpb24GdWludDMyDHNldHRpbmdzX3JvdwAEBm1hcmtldARuYW1lDnRva2VuX2NvbnRyYWN0BG5hbWUMdG9rZW5fc3ltYm9sBnN5bWJvbBFtYWtlcl9tYXJrZXRwbGFjZQRuYW1lCHNldHRva2VuAAIOdG9rZW5fY29udHJhY3QEbmFtZQx0b2tlbl9zeW1ib2wGc3ltYm9sBHRlbmQAAQhtYXhfbG90cwZ1aW50MzIJdGVybXNfcm93AAMFZ3JhZGUEbmFtZQxzdGFydGluZ19iaWQFYXNzZXQIZHVyYXRpb24GdWludDMyBwAAAAAA6UxEBWNsYWltAAAAyGsqjbC6CXJlc2N1ZW5mdAAAAABLTXWywghzZXRiZW5lZgAAAMgKXiOzwglzZXRtYXJrZXQAAAAAWF6Vs8IIc2V0dGVybXMAAAAAU0Gas8IIc2V0dG9rZW4AAAAAAACQpsoEdGVuZAAGAAAAICl9ETIDaTY0AAALYWNjcnVlZF9yb3cAAAAA4KWmOgNpNjQAAAliZW5lZl9yb3cAAAAAXIqvRgNpNjQAAApjdXJzb3Jfcm93AAAAAACAM40DaTY0AAAIbG90c19yb3cAAACYTZezwgNpNjQAAAxzZXR0aW5nc19yb3cAAAAAACyvygNpNjQAAAl0ZXJtc19yb3cAAAAAAA==');
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,72 @@ 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;
126
+ let gettendable = class gettendable extends Struct {
127
+ };
128
+ __decorate([
129
+ Struct.field(UInt32)
130
+ ], gettendable.prototype, "max_lots", void 0);
131
+ gettendable = __decorate([
132
+ Struct.type('gettendable')
133
+ ], gettendable);
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;
81
171
  let lots_row = class lots_row extends Struct {
82
172
  };
83
173
  __decorate([
@@ -174,11 +264,20 @@ var Types$3;
174
264
  Struct.type('settoken')
175
265
  ], settoken);
176
266
  Types.settoken = settoken;
177
- let tend = class tend extends Struct {
267
+ let sweep = class sweep extends Struct {
178
268
  };
179
269
  __decorate([
180
270
  Struct.field(UInt32)
181
- ], tend.prototype, "max_lots", void 0);
271
+ ], sweep.prototype, "max_lots", void 0);
272
+ sweep = __decorate([
273
+ Struct.type('sweep')
274
+ ], sweep);
275
+ Types.sweep = sweep;
276
+ let tend = class tend extends Struct {
277
+ };
278
+ __decorate([
279
+ Struct.field(UInt64, { array: true })
280
+ ], tend.prototype, "asset_ids", void 0);
182
281
  tend = __decorate([
183
282
  Struct.type('tend')
184
283
  ], tend);
@@ -198,6 +297,24 @@ var Types$3;
198
297
  Struct.type('terms_row')
199
298
  ], terms_row);
200
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;
201
318
  })(Types$3 || (Types$3 = {}));
202
319
  ({
203
320
  accrued: Types$3.accrued_row,
@@ -206,9 +323,10 @@ var Types$3;
206
323
  lots: Types$3.lots_row,
207
324
  settings: Types$3.settings_row,
208
325
  terms: Types$3.terms_row,
326
+ tokens: Types$3.token_row,
209
327
  });
210
328
 
211
- const abiBlob$2 = Blob.from('DmVvc2lvOjphYmkvMS4yACELYmFsYW5jZV9yb3cAAg50b2tlbl9jb250cmFjdARuYW1lB2JhbGFuY2UFYXNzZXQKY2FyZ29faXRlbQAFB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCHF1YW50aXR5BnVpbnQzMgllbnRpdHlfaWQHdWludDY0PwpjbGVhcnRhYmxlAAMKdGFibGVfbmFtZQRuYW1lBXNjb3BlBW5hbWU/CG1heF9yb3dzB3VpbnQ2ND8FY2xvc2UAAwVvd25lcgRuYW1lDnRva2VuX2NvbnRyYWN0BG5hbWUMdG9rZW5fc3ltYm9sBnN5bWJvbAtjb21wYW55X3JvdwACB2FjY291bnQEbmFtZQRuYW1lBnN0cmluZwpjb250cmlidXRlAAYEZ2FtZQRuYW1lBnBsYXllcgRuYW1lCWVudGl0eV9pZAZ1aW50NjQBeAVpbnQ2NAF5BWludDY0BmJ1bmRsZQxjYXJnb19pdGVtW10MZGViaXRkZXBvc2l0AAUFb3duZXIEbmFtZQV0b2tlbgRuYW1lBmxvY2tlZAVhc3NldAtmZWVfYWNjb3VudARuYW1lA2ZlZQVhc3NldA5kZXBvc2l0Y2ZnX3JvdwACDnRva2VuX2NvbnRyYWN0BG5hbWUMdG9rZW5fc3ltYm9sBnN5bWJvbAZlbmFibGUAAQdlbmFibGVkBGJvb2wKZW5hYmxlZ2FtZQACCGNvbnRyYWN0BG5hbWUHZW5hYmxlZARib29sDGZvdW5kY29tcGFueQACB2FjY291bnQEbmFtZQRuYW1lBnN0cmluZwtnYW1lX2NvbmZpZwAEBHNlZWQLY2hlY2tzdW0yNTYJZXBvY2h0aW1lBnVpbnQzMgVzdGFydA50aW1lX3BvaW50X3NlYwNlbmQOdGltZV9wb2ludF9zZWMJZ2FtZV9tZXRhAAQEbmFtZQZzdHJpbmcLZGVzY3JpcHRpb24Gc3RyaW5nA3VybAZzdHJpbmcHdmVyc2lvbgZzdHJpbmcIZ2FtZV9yb3cABAhjb250cmFjdARuYW1lBmNvbmZpZwtnYW1lX2NvbmZpZwRtZXRhCWdhbWVfbWV0YQVzdGF0ZQpnYW1lX3N0YXRlCmdhbWVfc3RhdGUAAQdlbmFibGVkBGJvb2wMbW9kdWxlX2VudHJ5AAIEdHlwZQV1aW50OAlpbnN0YWxsZWQOcGFja2VkX21vZHVsZT8Eb3BlbgADBW93bmVyBG5hbWUOdG9rZW5fY29udHJhY3QEbmFtZQx0b2tlbl9zeW1ib2wGc3ltYm9sDXBhY2tlZF9tb2R1bGUAAgdpdGVtX2lkBnVpbnQxNgVzdGF0cwZ1aW50NjQMcmVsZ2F0ZWFzc2V0AAEIYXNzZXRfaWQGdWludDY0DHJlbGdhdGVvd25lcgABBW93bmVyBG5hbWUMc2V0ZXBvY2h0aW1lAAIIY29udHJhY3QEbmFtZQllcG9jaHRpbWUGdWludDMyCHNldHRva2VuAAIOdG9rZW5fY29udHJhY3QEbmFtZQx0b2tlbl9zeW1ib2wGc3ltYm9sCXN0YXJ0Z2FtZQAECGNvbnRyYWN0BG5hbWUGY29uZmlnC2dhbWVfY29uZmlnBG1ldGEJZ2FtZV9tZXRhBXN0YXRlCmdhbWVfc3RhdGUJc3RhdGVfcm93AAEHZW5hYmxlZARib29sC3Vud3JhcGNhcmdvAAMEZ2FtZQRuYW1lBW93bmVyBG5hbWUIYXNzZXRfaWQGdWludDY0DnVud3JhcGN1c3Rfcm93AAIIYXNzZXRfaWQGdWludDY0BW93bmVyBG5hbWUMdW53cmFwZW50aXR5AAMEZ2FtZQRuYW1lBW93bmVyBG5hbWUIYXNzZXRfaWQGdWludDY0CnVwZGF0ZWdhbWUAAghjb250cmFjdARuYW1lBG1ldGEJZ2FtZV9tZXRhBHdpcGUAAAh3aXRoZHJhdwADBW93bmVyBG5hbWUIcXVhbnRpdHkOZXh0ZW5kZWRfYXNzZXQEbWVtbwZzdHJpbmcJd3JhcGNhcmdvAAYEZ2FtZQRuYW1lBW93bmVyBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAhuZXh1c19pZAZ1aW50NjQIY2FyZ29faWQGdWludDY0CHF1YW50aXR5BnVpbnQ2NAp3cmFwZW50aXR5AAQEZ2FtZQRuYW1lBW93bmVyBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAhuZXh1c19pZAZ1aW50NjQMd3JhcGdhdGVfcm93AAMFb3duZXIEbmFtZQRnYW1lBG5hbWUNbGFzdF9hc3NldF9pZAZ1aW50NjQUAICKx+RrVEQKY2xlYXJ0YWJsZb4BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNsZWFydGFibGUKc3VtbWFyeTogJ0RFQlVHOiBjbGVhcnRhYmxlIGFjdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAAAAAhWlEBWNsb3Nl4gItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY2xvc2UKc3VtbWFyeTogJ0Nsb3NlIGEgZGVwb3NpdCBiYWxhbmNlIHJvdycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KCkNsb3NlIHRoZSBvd25lcidzIGRlcG9zaXQgYmFsYW5jZSByb3cgZm9yIHRoZSBnaXZlbiB0b2tlbiBhbmQgZnJlZSBpdHMgUkFNLiBUaGUgYmFsYW5jZSBtdXN0IGJlIHplcm8gYmVmb3JlIGNsb3NpbmcuIFJlcXVpcmVzIHRoZSBvd25lcidzIGF1dGhvcml0eS4AgMr6uJsnRQpjb250cmlidXRlAJAdplWl7I5KDGRlYml0ZGVwb3NpdJ0ELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGRlYml0ZGVwb3NpdApzdW1tYXJ5OiAnRGViaXQgYSBkZXBvc2l0IGJhbGFuY2UgZm9yIGEgd3JhcCBvcGVyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gY2FsbGVkIGlubGluZSBieSBhIHJlZ2lzdGVyZWQsIGVuYWJsZWQgZ2FtZSBjb250cmFjdCBvbmx5LiBEZWJpdHMgdGhlIG93bmVyJ3MgZGVwb3NpdCBiYWxhbmNlIGJ5IHRoZSBsb2NrZWQgYW1vdW50IHBsdXMgdGhlIGZlZSwgYW5kIGNyZWRpdHMgdGhlIGZlZSB0byB0aGUgY29uZmlndXJlZCBmZWUgYWNjb3VudC4gVXNlZCBieSBhIGdhbWUncyB3cmFwIGZsb3cgdG8gY29sbGVjdCB0aGUgd3JhcCBjb3N0LiBDYW5ub3QgYmUgY2FsbGVkIGRpcmVjdGx5IGJ5IHBsYXllcnMgb3IgdW5yZWdpc3RlcmVkIGFjY291bnRzLgAAAACoeMxUBmVuYWJsZfMBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGVuYWJsZQpzdW1tYXJ5OiAnRW5hYmxlL2Rpc2FibGUgcGxhdGZvcm0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGUgcGxhdGZvcm0gY29udHJhY3QuAICShql4zFQKZW5hYmxlZ2FtZfwBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGVuYWJsZWdhbWUKc3VtbWFyeTogJ0VuYWJsZS9kaXNiYWJsZSBhIGdhbWUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGUgc3BlY2lmaWVkIGdhbWUgY29udHJhY3Qu4KepkqI0NV0MZm91bmRjb21wYW55gwItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZm91bmRjb21wYW55CnN1bW1hcnk6ICdGb3VuZCBhIG5ldyBjb21wYW55JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKRm91bmQgYSBuZXcgY29tcGFueSBpbiB0aGUgU2hpcGxvYWQgcGxhdGZvcm0gY29udHJhY3QuAAAAAAAwVaUEb3BlbpsDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IG9wZW4Kc3VtbWFyeTogJ09wZW4gYSBkZXBvc2l0IGJhbGFuY2Ugcm93JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKT3BlbiBhIHplcm8tYmFsYW5jZSBkZXBvc2l0IHJvdyBmb3IgdGhlIGdpdmVuIG93bmVyIGFuZCB0b2tlbiwgd2l0aCBSQU0gcGFpZCBieSB0aGUgb3duZXIuIEhhcyBubyBlZmZlY3QgaWYgdGhlIHJvdyBhbHJlYWR5IGV4aXN0cy4gTXVzdCBiZSBjYWxsZWQgYmVmb3JlIHRoZSBvd25lciBjYW4gcmVjZWl2ZSB0b2tlbiBkZXBvc2l0cyBvciB3cmFwIHJlZnVuZHMukBXGRmXDoroMcmVsZ2F0ZWFzc2V0AHDV5FRlw6K6DHJlbGdhdGVvd25lcgCgpMsN0aqywgxzZXRlcG9jaHRpbWXEAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzZXRlcG9jaHRpbWUKc3VtbWFyeTogJ0RFQlVHOiBvdmVycmlkZSBhIGdhbWUnJ3MgZXBvY2ggdGltZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKT3ZlcnJpZGUgdGhlIGVwb2NoIGR1cmF0aW9uIGluIHRoZSBjb25maWd1cmF0aW9uIG9mIHRoZSBzcGVjaWZpZWQgZ2FtZSBjb250cmFjdC4gUmVxdWlyZXMgcGxhdGZvcm0gY29udHJhY3QgYXV0aG9yaXR5LgAAAFNBmrPCCHNldHRva2VunQMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogc2V0dG9rZW4Kc3VtbWFyeTogJ1NldCB0aGUgYWNjZXB0ZWQgZGVwb3NpdCB0b2tlbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KCkFkbWluIGFjdGlvbiB0aGF0IHNldHMgdGhlIGFjY2VwdGVkIGRlcG9zaXQgdG9rZW4gKGNvbnRyYWN0IGFjY291bnQgYW5kIHN5bWJvbCkgZm9yIHRoZSBwbGF0Zm9ybS4gQWxsIHBsYXllciBkZXBvc2l0cyBhbmQgd3JhcCBjb3N0cyBhcmUgZGVub21pbmF0ZWQgaW4gdGhpcyB0b2tlbi4gUmVxdWlyZXMgcGxhdGZvcm0gY29udHJhY3QgYXV0aG9yaXR5LgAAUNKwfE3GCXN0YXJ0Z2FtZf8BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHN0YXJ0Z2FtZQpzdW1tYXJ5OiAnU3RhcnQgYSBuZXcgZ2FtZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KClN0YXJ0IGEgbmV3IGdhbWUgb2YgU2hpcGxvYWQgZGVwbG95ZWQgdG8gYSBuZXcgY29udHJhY3QuACi7BlVz+dQLdW53cmFwY2FyZ2/PBC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1bndyYXBjYXJnbwpzdW1tYXJ5OiAnRGVwb3NpdCBhbiBORlQgaW50byBhIGhvc3QgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpEZXBvc2l0IGFuIEF0b21pY0Fzc2V0cyBORlQgaW50byBhIGhvc3QgZW50aXR5J3MgY2FyZ28uIFBhaXJzIHdpdGggYW4gYXRvbWljYXNzZXRzOjp0cmFuc2ZlciBjYXJyeWluZyB0aGUgJ3Vud3JhcCcgbWVtbyBpbiB0aGUgc2FtZSB0cmFuc2FjdGlvbi4gVGhlIGNhbGxlciBtdXN0IG93biB0aGUgaG9zdCwgdGhlIGhvc3QgbXVzdCBoYXZlIGxvYWRlcnMsIGFuZCB0aGUgaG9zdCBtdXN0IGhhdmUgY2FwYWNpdHkgaGVhZHJvb20gZm9yIHRoZSB1bndyYXBwZWQgbWFzcy4gU2NoZWR1bGVzIGEgVEFTS19VTldSQVAgb24gdGhlIGhvc3QgdGhhdCwgb24gcmVzb2x1dGlvbiwgcGxhY2VzIHRoZSBkZWNvZGVkIGl0ZW0gaW50byB0aGUgaG9zdCdzIGNhcmdvIGFuZCBidXJucyB0aGUgTkZULuCzy1NVc/nUDHVud3JhcGVudGl0eeIELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHVud3JhcGVudGl0eQpzdW1tYXJ5OiAnRGVwbG95IGFuIGVudGl0eSBORlQgZGlyZWN0bHkgdG8gYSBuZXh1cycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRGVwbG95IGEgcGFja2VkLWVudGl0eSBBdG9taWNBc3NldHMgTkZUIChvcmJpdGFsIHZlc3NlbDogc2hpcCBvciBjb250YWluZXIpIGRpcmVjdGx5IGFzIGEgbGl2ZSBlbnRpdHkuIFBhaXJzIHdpdGggYW4gYXRvbWljYXNzZXRzOjp0cmFuc2ZlciBjYXJyeWluZyB0aGUgJ2RlcGxveScgbWVtbyBpbiB0aGUgc2FtZSB0cmFuc2FjdGlvbi4gVGhlIE5GVCBpcyBidXJuZWQsIGEgbmV3IGVudGl0eSByb3cgaXMgZW1wbGFjZWQgYXQgdGhlIE5GVCdzIHdyYXAgb3JpZ2luIHBhaWQgYnkgdGhlIG93bmVyLCBhbmQgVEFTS19UUkFWRUwgcGx1cyBUQVNLX1JFQ0hBUkdFIGFyZSBxdWV1ZWQgdG8gZGVsaXZlciB0aGUgZW50aXR5IHRvIHRoZSB0YXJnZXQgbmV4dXMgYW5kIGJyaW5nIGl0IHRvIGZ1bGwgZW5lcmd5LgCAkoapbFLVCnVwZGF0ZWdhbWWNAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1cGRhdGVnYW1lCnN1bW1hcnk6ICdVcGRhdGUgZ2FtZSBpbmZvcm1hdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KClVwZGF0ZSB0aGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNwZWNpZmllZCBnYW1lIGNvbnRyYWN0LgoKLS0tAAAAAACgquMEd2lwZbIBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHdpcGUKc3VtbWFyeTogJ0RFQlVHOiB3aXBlIGFjdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAANzc1LLjCHdpdGhkcmF3lwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd2l0aGRyYXcKc3VtbWFyeTogJ1dpdGhkcmF3IHRva2VucyBmcm9tIGEgZGVwb3NpdCBiYWxhbmNlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKV2l0aGRyYXcgdG9rZW5zIGZyb20gdGhlIG93bmVyJ3MgZGVwb3NpdCBiYWxhbmNlLiBEZWJpdHMgdGhlIGxlZGdlciBieSB0aGUgcmVxdWVzdGVkIGFtb3VudCBhbmQgdHJhbnNmZXJzIHRoZSB0b2tlbnMgdG8gdGhlIG93bmVyLiBSZXF1aXJlcyBhIHN1ZmZpY2llbnQgYmFsYW5jZSBhbmQgdGhlIG93bmVyJ3MgYXV0aG9yaXR5LgAAoOwaVM3lCXdyYXBjYXJnbwAAgM8uT1XN5Qp3cmFwZW50aXR5tQQtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd3JhcGVudGl0eQpzdW1tYXJ5OiAnV3JhcCBhIGRlcGxveWVkIGVudGl0eSBpbnRvIGFuIE5GVCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKV3JhcCBhbiBlbnRpdHkgaW50byBhbiBBdG9taWNBc3NldHMgTkZUIG1pbnRlZCB0byBpdHMgb3duZXIuIFRoZSBlbnRpdHkgbXVzdCBiZSBhdCBhIG5leHVzLCBpZGxlIHdpdGggZW1wdHkgY2FyZ28sIGFuZCBoYXZlIGFuIG5mdGNvbmZpZyBtYXBwaW5nIGZvciBpdHMgaXRlbSBpZC4gRXJhc2VzIHRoZSBlbnRpdHkgYW5kIG1pbnRzIHRoZSBORlQgaW5saW5lLCBwcmVzZXJ2aW5nIGl0cyBzdGF0cyBhbmQgaW5zdGFsbGVkIG1vZHVsZXM7IHRoZSBwbGF5ZXIgcGF5cyBSQU0gZm9yIHRoZSBuZXcgYXNzZXQgcm93LiBSZXF1aXJlcyB0aGUgb3duZXIncyBhY3RpdmUgcGVybWlzc2lvbiAobm8gc2Vzc2lvbi1rZXkgY29tcGF0aWJpbGl0eSkuBwAAAEChaaI5A2k2NAAAC2JhbGFuY2Vfcm93AAAAwE9TJUUDaTY0AAALY29tcGFueV9yb3cAAFsoO0yrSgNpNjQAAA5kZXBvc2l0Y2ZnX3JvdwAAAAAArKRhA2k2NAAACGdhbWVfcm93AAAAAACVTcYDaTY0AAAJc3RhdGVfcm93AEDGGlVz+dQDaTY0AAAOdW53cmFwY3VzdF9yb3cAAAAqG1bN5QNpNjQAAAx3cmFwZ2F0ZV9yb3cBE1NoaXBsb2FkIChQbGF0Zm9ybSkTU2hpcGxvYWQgKFBsYXRmb3JtKQAAAAA=');
329
+ const abiBlob$2 = Blob.from('DmVvc2lvOjphYmkvMS4yACILYmFsYW5jZV9yb3cAAg50b2tlbl9jb250cmFjdARuYW1lB2JhbGFuY2UFYXNzZXQKY2FyZ29faXRlbQAFB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCHF1YW50aXR5BnVpbnQzMgllbnRpdHlfaWQHdWludDY0PwpjbGVhcnRhYmxlAAMKdGFibGVfbmFtZQRuYW1lBXNjb3BlBW5hbWU/CG1heF9yb3dzB3VpbnQ2ND8FY2xvc2UAAwVvd25lcgRuYW1lDnRva2VuX2NvbnRyYWN0BG5hbWUMdG9rZW5fc3ltYm9sBnN5bWJvbAtjb21wYW55X3JvdwACB2FjY291bnQEbmFtZQRuYW1lBnN0cmluZwpjb250cmlidXRlAAYEZ2FtZQRuYW1lBnBsYXllcgRuYW1lCWVudGl0eV9pZAZ1aW50NjQBeAVpbnQ2NAF5BWludDY0BmJ1bmRsZQxjYXJnb19pdGVtW10JZGJncmVmdW5kAAEGb3duZXJzBm5hbWVbXQxkZWJpdGRlcG9zaXQABQVvd25lcgRuYW1lBXRva2VuBG5hbWUGbG9ja2VkBWFzc2V0C2ZlZV9hY2NvdW50BG5hbWUDZmVlBWFzc2V0DmRlcG9zaXRjZmdfcm93AAIOdG9rZW5fY29udHJhY3QEbmFtZQx0b2tlbl9zeW1ib2wGc3ltYm9sBmVuYWJsZQABB2VuYWJsZWQEYm9vbAplbmFibGVnYW1lAAIIY29udHJhY3QEbmFtZQdlbmFibGVkBGJvb2wMZm91bmRjb21wYW55AAIHYWNjb3VudARuYW1lBG5hbWUGc3RyaW5nC2dhbWVfY29uZmlnAAQEc2VlZAtjaGVja3N1bTI1NgllcG9jaHRpbWUGdWludDMyBXN0YXJ0DnRpbWVfcG9pbnRfc2VjA2VuZA50aW1lX3BvaW50X3NlYwlnYW1lX21ldGEABARuYW1lBnN0cmluZwtkZXNjcmlwdGlvbgZzdHJpbmcDdXJsBnN0cmluZwd2ZXJzaW9uBnN0cmluZwhnYW1lX3JvdwAECGNvbnRyYWN0BG5hbWUGY29uZmlnC2dhbWVfY29uZmlnBG1ldGEJZ2FtZV9tZXRhBXN0YXRlCmdhbWVfc3RhdGUKZ2FtZV9zdGF0ZQABB2VuYWJsZWQEYm9vbAxtb2R1bGVfZW50cnkAAgR0eXBlBXVpbnQ4CWluc3RhbGxlZA5wYWNrZWRfbW9kdWxlPwRvcGVuAAMFb3duZXIEbmFtZQ50b2tlbl9jb250cmFjdARuYW1lDHRva2VuX3N5bWJvbAZzeW1ib2wNcGFja2VkX21vZHVsZQACB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAxyZWxnYXRlYXNzZXQAAQhhc3NldF9pZAZ1aW50NjQMcmVsZ2F0ZW93bmVyAAEFb3duZXIEbmFtZQxzZXRlcG9jaHRpbWUAAghjb250cmFjdARuYW1lCWVwb2NodGltZQZ1aW50MzIIc2V0dG9rZW4AAg50b2tlbl9jb250cmFjdARuYW1lDHRva2VuX3N5bWJvbAZzeW1ib2wJc3RhcnRnYW1lAAQIY29udHJhY3QEbmFtZQZjb25maWcLZ2FtZV9jb25maWcEbWV0YQlnYW1lX21ldGEFc3RhdGUKZ2FtZV9zdGF0ZQlzdGF0ZV9yb3cAAQdlbmFibGVkBGJvb2wLdW53cmFwY2FyZ28AAwRnYW1lBG5hbWUFb3duZXIEbmFtZQhhc3NldF9pZAZ1aW50NjQOdW53cmFwY3VzdF9yb3cAAghhc3NldF9pZAZ1aW50NjQFb3duZXIEbmFtZQx1bndyYXBlbnRpdHkAAwRnYW1lBG5hbWUFb3duZXIEbmFtZQhhc3NldF9pZAZ1aW50NjQKdXBkYXRlZ2FtZQACCGNvbnRyYWN0BG5hbWUEbWV0YQlnYW1lX21ldGEEd2lwZQAACHdpdGhkcmF3AAMFb3duZXIEbmFtZQhxdWFudGl0eQ5leHRlbmRlZF9hc3NldARtZW1vBnN0cmluZwl3cmFwY2FyZ28ABgRnYW1lBG5hbWUFb3duZXIEbmFtZQllbnRpdHlfaWQGdWludDY0CG5leHVzX2lkBnVpbnQ2NAhjYXJnb19pZAZ1aW50NjQIcXVhbnRpdHkGdWludDY0CndyYXBlbnRpdHkABARnYW1lBG5hbWUFb3duZXIEbmFtZQllbnRpdHlfaWQGdWludDY0CG5leHVzX2lkBnVpbnQ2NAx3cmFwZ2F0ZV9yb3cAAwVvd25lcgRuYW1lBGdhbWUEbmFtZQ1sYXN0X2Fzc2V0X2lkBnVpbnQ2NBUAgIrH5GtURApjbGVhcnRhYmxlvgEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY2xlYXJ0YWJsZQpzdW1tYXJ5OiAnREVCVUc6IGNsZWFydGFibGUgYWN0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAAACFaUQFY2xvc2XiAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjbG9zZQpzdW1tYXJ5OiAnQ2xvc2UgYSBkZXBvc2l0IGJhbGFuY2Ugcm93JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKQ2xvc2UgdGhlIG93bmVyJ3MgZGVwb3NpdCBiYWxhbmNlIHJvdyBmb3IgdGhlIGdpdmVuIHRva2VuIGFuZCBmcmVlIGl0cyBSQU0uIFRoZSBiYWxhbmNlIG11c3QgYmUgemVybyBiZWZvcmUgY2xvc2luZy4gUmVxdWlyZXMgdGhlIG93bmVyJ3MgYXV0aG9yaXR5LgCAyvq4mydFCmNvbnRyaWJ1dGUAAABIUy912UkJZGJncmVmdW5kAJAdplWl7I5KDGRlYml0ZGVwb3NpdJ0ELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGRlYml0ZGVwb3NpdApzdW1tYXJ5OiAnRGViaXQgYSBkZXBvc2l0IGJhbGFuY2UgZm9yIGEgd3JhcCBvcGVyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gY2FsbGVkIGlubGluZSBieSBhIHJlZ2lzdGVyZWQsIGVuYWJsZWQgZ2FtZSBjb250cmFjdCBvbmx5LiBEZWJpdHMgdGhlIG93bmVyJ3MgZGVwb3NpdCBiYWxhbmNlIGJ5IHRoZSBsb2NrZWQgYW1vdW50IHBsdXMgdGhlIGZlZSwgYW5kIGNyZWRpdHMgdGhlIGZlZSB0byB0aGUgY29uZmlndXJlZCBmZWUgYWNjb3VudC4gVXNlZCBieSBhIGdhbWUncyB3cmFwIGZsb3cgdG8gY29sbGVjdCB0aGUgd3JhcCBjb3N0LiBDYW5ub3QgYmUgY2FsbGVkIGRpcmVjdGx5IGJ5IHBsYXllcnMgb3IgdW5yZWdpc3RlcmVkIGFjY291bnRzLgAAAACoeMxUBmVuYWJsZfMBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGVuYWJsZQpzdW1tYXJ5OiAnRW5hYmxlL2Rpc2FibGUgcGxhdGZvcm0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGUgcGxhdGZvcm0gY29udHJhY3QuAICShql4zFQKZW5hYmxlZ2FtZfwBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGVuYWJsZWdhbWUKc3VtbWFyeTogJ0VuYWJsZS9kaXNiYWJsZSBhIGdhbWUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGUgc3BlY2lmaWVkIGdhbWUgY29udHJhY3Qu4KepkqI0NV0MZm91bmRjb21wYW55gwItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZm91bmRjb21wYW55CnN1bW1hcnk6ICdGb3VuZCBhIG5ldyBjb21wYW55JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKRm91bmQgYSBuZXcgY29tcGFueSBpbiB0aGUgU2hpcGxvYWQgcGxhdGZvcm0gY29udHJhY3QuAAAAAAAwVaUEb3BlbpsDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IG9wZW4Kc3VtbWFyeTogJ09wZW4gYSBkZXBvc2l0IGJhbGFuY2Ugcm93JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKT3BlbiBhIHplcm8tYmFsYW5jZSBkZXBvc2l0IHJvdyBmb3IgdGhlIGdpdmVuIG93bmVyIGFuZCB0b2tlbiwgd2l0aCBSQU0gcGFpZCBieSB0aGUgb3duZXIuIEhhcyBubyBlZmZlY3QgaWYgdGhlIHJvdyBhbHJlYWR5IGV4aXN0cy4gTXVzdCBiZSBjYWxsZWQgYmVmb3JlIHRoZSBvd25lciBjYW4gcmVjZWl2ZSB0b2tlbiBkZXBvc2l0cyBvciB3cmFwIHJlZnVuZHMukBXGRmXDoroMcmVsZ2F0ZWFzc2V0AHDV5FRlw6K6DHJlbGdhdGVvd25lcgCgpMsN0aqywgxzZXRlcG9jaHRpbWXEAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzZXRlcG9jaHRpbWUKc3VtbWFyeTogJ0RFQlVHOiBvdmVycmlkZSBhIGdhbWUnJ3MgZXBvY2ggdGltZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKT3ZlcnJpZGUgdGhlIGVwb2NoIGR1cmF0aW9uIGluIHRoZSBjb25maWd1cmF0aW9uIG9mIHRoZSBzcGVjaWZpZWQgZ2FtZSBjb250cmFjdC4gUmVxdWlyZXMgcGxhdGZvcm0gY29udHJhY3QgYXV0aG9yaXR5LgAAAFNBmrPCCHNldHRva2VunQMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogc2V0dG9rZW4Kc3VtbWFyeTogJ1NldCB0aGUgYWNjZXB0ZWQgZGVwb3NpdCB0b2tlbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KCkFkbWluIGFjdGlvbiB0aGF0IHNldHMgdGhlIGFjY2VwdGVkIGRlcG9zaXQgdG9rZW4gKGNvbnRyYWN0IGFjY291bnQgYW5kIHN5bWJvbCkgZm9yIHRoZSBwbGF0Zm9ybS4gQWxsIHBsYXllciBkZXBvc2l0cyBhbmQgd3JhcCBjb3N0cyBhcmUgZGVub21pbmF0ZWQgaW4gdGhpcyB0b2tlbi4gUmVxdWlyZXMgcGxhdGZvcm0gY29udHJhY3QgYXV0aG9yaXR5LgAAUNKwfE3GCXN0YXJ0Z2FtZf8BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHN0YXJ0Z2FtZQpzdW1tYXJ5OiAnU3RhcnQgYSBuZXcgZ2FtZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KClN0YXJ0IGEgbmV3IGdhbWUgb2YgU2hpcGxvYWQgZGVwbG95ZWQgdG8gYSBuZXcgY29udHJhY3QuACi7BlVz+dQLdW53cmFwY2FyZ2/PBC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1bndyYXBjYXJnbwpzdW1tYXJ5OiAnRGVwb3NpdCBhbiBORlQgaW50byBhIGhvc3QgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpEZXBvc2l0IGFuIEF0b21pY0Fzc2V0cyBORlQgaW50byBhIGhvc3QgZW50aXR5J3MgY2FyZ28uIFBhaXJzIHdpdGggYW4gYXRvbWljYXNzZXRzOjp0cmFuc2ZlciBjYXJyeWluZyB0aGUgJ3Vud3JhcCcgbWVtbyBpbiB0aGUgc2FtZSB0cmFuc2FjdGlvbi4gVGhlIGNhbGxlciBtdXN0IG93biB0aGUgaG9zdCwgdGhlIGhvc3QgbXVzdCBoYXZlIGxvYWRlcnMsIGFuZCB0aGUgaG9zdCBtdXN0IGhhdmUgY2FwYWNpdHkgaGVhZHJvb20gZm9yIHRoZSB1bndyYXBwZWQgbWFzcy4gU2NoZWR1bGVzIGEgVEFTS19VTldSQVAgb24gdGhlIGhvc3QgdGhhdCwgb24gcmVzb2x1dGlvbiwgcGxhY2VzIHRoZSBkZWNvZGVkIGl0ZW0gaW50byB0aGUgaG9zdCdzIGNhcmdvIGFuZCBidXJucyB0aGUgTkZULuCzy1NVc/nUDHVud3JhcGVudGl0eeIELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHVud3JhcGVudGl0eQpzdW1tYXJ5OiAnRGVwbG95IGFuIGVudGl0eSBORlQgZGlyZWN0bHkgdG8gYSBuZXh1cycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRGVwbG95IGEgcGFja2VkLWVudGl0eSBBdG9taWNBc3NldHMgTkZUIChvcmJpdGFsIHZlc3NlbDogc2hpcCBvciBjb250YWluZXIpIGRpcmVjdGx5IGFzIGEgbGl2ZSBlbnRpdHkuIFBhaXJzIHdpdGggYW4gYXRvbWljYXNzZXRzOjp0cmFuc2ZlciBjYXJyeWluZyB0aGUgJ2RlcGxveScgbWVtbyBpbiB0aGUgc2FtZSB0cmFuc2FjdGlvbi4gVGhlIE5GVCBpcyBidXJuZWQsIGEgbmV3IGVudGl0eSByb3cgaXMgZW1wbGFjZWQgYXQgdGhlIE5GVCdzIHdyYXAgb3JpZ2luIHBhaWQgYnkgdGhlIG93bmVyLCBhbmQgVEFTS19UUkFWRUwgcGx1cyBUQVNLX1JFQ0hBUkdFIGFyZSBxdWV1ZWQgdG8gZGVsaXZlciB0aGUgZW50aXR5IHRvIHRoZSB0YXJnZXQgbmV4dXMgYW5kIGJyaW5nIGl0IHRvIGZ1bGwgZW5lcmd5LgCAkoapbFLVCnVwZGF0ZWdhbWWNAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1cGRhdGVnYW1lCnN1bW1hcnk6ICdVcGRhdGUgZ2FtZSBpbmZvcm1hdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KClVwZGF0ZSB0aGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNwZWNpZmllZCBnYW1lIGNvbnRyYWN0LgoKLS0tAAAAAACgquMEd2lwZbIBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHdpcGUKc3VtbWFyeTogJ0RFQlVHOiB3aXBlIGFjdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAANzc1LLjCHdpdGhkcmF3lwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd2l0aGRyYXcKc3VtbWFyeTogJ1dpdGhkcmF3IHRva2VucyBmcm9tIGEgZGVwb3NpdCBiYWxhbmNlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKV2l0aGRyYXcgdG9rZW5zIGZyb20gdGhlIG93bmVyJ3MgZGVwb3NpdCBiYWxhbmNlLiBEZWJpdHMgdGhlIGxlZGdlciBieSB0aGUgcmVxdWVzdGVkIGFtb3VudCBhbmQgdHJhbnNmZXJzIHRoZSB0b2tlbnMgdG8gdGhlIG93bmVyLiBSZXF1aXJlcyBhIHN1ZmZpY2llbnQgYmFsYW5jZSBhbmQgdGhlIG93bmVyJ3MgYXV0aG9yaXR5LgAAoOwaVM3lCXdyYXBjYXJnbwAAgM8uT1XN5Qp3cmFwZW50aXR5tQQtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd3JhcGVudGl0eQpzdW1tYXJ5OiAnV3JhcCBhIGRlcGxveWVkIGVudGl0eSBpbnRvIGFuIE5GVCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKV3JhcCBhbiBlbnRpdHkgaW50byBhbiBBdG9taWNBc3NldHMgTkZUIG1pbnRlZCB0byBpdHMgb3duZXIuIFRoZSBlbnRpdHkgbXVzdCBiZSBhdCBhIG5leHVzLCBpZGxlIHdpdGggZW1wdHkgY2FyZ28sIGFuZCBoYXZlIGFuIG5mdGNvbmZpZyBtYXBwaW5nIGZvciBpdHMgaXRlbSBpZC4gRXJhc2VzIHRoZSBlbnRpdHkgYW5kIG1pbnRzIHRoZSBORlQgaW5saW5lLCBwcmVzZXJ2aW5nIGl0cyBzdGF0cyBhbmQgaW5zdGFsbGVkIG1vZHVsZXM7IHRoZSBwbGF5ZXIgcGF5cyBSQU0gZm9yIHRoZSBuZXcgYXNzZXQgcm93LiBSZXF1aXJlcyB0aGUgb3duZXIncyBhY3RpdmUgcGVybWlzc2lvbiAobm8gc2Vzc2lvbi1rZXkgY29tcGF0aWJpbGl0eSkuBwAAAEChaaI5A2k2NAAAC2JhbGFuY2Vfcm93AAAAwE9TJUUDaTY0AAALY29tcGFueV9yb3cAAFsoO0yrSgNpNjQAAA5kZXBvc2l0Y2ZnX3JvdwAAAAAArKRhA2k2NAAACGdhbWVfcm93AAAAAACVTcYDaTY0AAAJc3RhdGVfcm93AEDGGlVz+dQDaTY0AAAOdW53cmFwY3VzdF9yb3cAAAAqG1bN5QNpNjQAAAx3cmFwZ2F0ZV9yb3cBE1NoaXBsb2FkIChQbGF0Zm9ybSkTU2hpcGxvYWQgKFBsYXRmb3JtKQAAAAA=');
212
330
  ABI.from(abiBlob$2);
213
331
  var Types$2;
214
332
  (function (Types) {
@@ -335,6 +453,15 @@ var Types$2;
335
453
  Struct.type('contribute')
336
454
  ], contribute);
337
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;
338
465
  let debitdeposit = class debitdeposit extends Struct {
339
466
  };
340
467
  __decorate([
@@ -691,7 +818,7 @@ var Types$2;
691
818
  wrapgate: Types$2.wrapgate_row,
692
819
  });
693
820
 
694
- const abiBlob$1 = Blob.from('DmVvc2lvOjphYmkvMS4yAhVCX3ZlY3Rvcl9lbnRpdHlfcmVmX0UMZW50aXR5X3JlZltdDWxvY2F0aW9uX3R5cGUFdWludDiiAgthYmFuZG9ucGxvdAABB3Bsb3RfaWQGdWludDY0CmFkZGNvbnRyaWIABQZwbGF5ZXIEbmFtZQllbnRpdHlfaWQGdWludDY0AXgFaW50NjQBeQVpbnQ2NAZidW5kbGUMY2FyZ29faXRlbVtdCWFkZG1vZHVsZQAECWVudGl0eV9pZAZ1aW50NjQMbW9kdWxlX2luZGV4BXVpbnQ4Cm1vZHVsZV9yZWYJY2FyZ29fcmVmCnRhcmdldF9yZWYKY2FyZ29fcmVmPwhhZGRuZXh1cwADCm5leHVzX25hbWUGc3RyaW5nAXgFaW50NjQBeQVpbnQ2NAlhZGRvcmFjbGUAAQlvcmFjbGVfaWQEbmFtZQVibGVuZAACAmlkBnVpbnQ2NAZpbnB1dHMMY2FyZ29faXRlbVtdDGJ1aWxkZXJfbGFuZQAECnNsb3RfaW5kZXgFdWludDgFc3BlZWQGdWludDE2BWRyYWluBnVpbnQzMgpvdXRwdXRfcGN0BnVpbnQxNglidWlsZHBsb3QAAgpidWlsZGVyX2lkBnVpbnQ2NAdwbG90X2lkBnVpbnQ2NAZjYW5jZWwAAwJpZAZ1aW50NjQIbGFuZV9rZXkFdWludDgFY291bnQGdWludDY0DmNhbmNlbF9yZXN1bHRzAAYJZW50aXR5X2lkBnVpbnQ2NAtlbnRpdHlfdHlwZQRuYW1lD2NhbmNlbGxlZF9jb3VudAV1aW50OBBzY2hlZHVsZV9zdGFydGVkC3RpbWVfcG9pbnQ/C2VudGl0eWdyb3VwB3VpbnQ2ND8NZ3JvdXBfbWVtYmVycxZCX3ZlY3Rvcl9lbnRpdHlfcmVmX0U/CWNhbmNlbGpvYgACBmpvYl9pZAZ1aW50NjQHc2hpcF9pZAZ1aW50NjQNY2FuY2VsdXBncmFkZQABBmpvYl9pZAZ1aW50NjQKY2FyZ29faXRlbQAFB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCHF1YW50aXR5BnVpbnQzMgllbnRpdHlfaWQHdWludDY0PwljYXJnb19yZWYABAdpdGVtX2lkBnVpbnQxNgVzdGF0cwZ1aW50NjQHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQllbnRpdHlfaWQHdWludDY0PwljYXJnb19yb3cABwJpZAZ1aW50NjQJZW50aXR5X2lkBnVpbnQ2NAdpdGVtX2lkBnVpbnQ2NAhxdWFudGl0eQZ1aW50NjQFc3RhdHMGdWludDY0B21vZHVsZXMObW9kdWxlX2VudHJ5W10Lc2VxdWVuY2VfaWQHdWludDY0PwpjYXJnb192aWV3AAYHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0B21vZHVsZXMObW9kdWxlX2VudHJ5W10IcXVhbnRpdHkGdWludDMyAmlkBnVpbnQ2NAllbnRpdHlfaWQHdWludDY0Pw5jaGFydGVyX2VmZmVjdAAFBGtpbmQFdWludDgHaXRlbV9pZAZ1aW50MTYOdGFyZ2V0X2l0ZW1faWQGdWludDE2CXNsb3RfbWFzawZ1aW50MTYEc3RhdAZ1aW50MTYQY2hhcnRlcl9ub2RlX2RlZgAEB25vZGVfaWQGdWludDMyBGNvc3QGdWludDY0B3ByZXJlcXMIdWludDMyW10GZWZmZWN0DmNoYXJ0ZXJfZWZmZWN0DmNoYXJ0ZXJfcmVzdWx0AAoLbG9jYXRpb25faWQGdWludDY0CGxpZmV0aW1lBnVpbnQ2NAl3YXRlcm1hcmsGdWludDY0B3N1cnBsdXMGdWludDY0B21hbmRhdGUGdWludDMyCW5leHRfY29zdAZ1aW50NjQLcHJlcmVxc19tZXQEYm9vbAlidWlsZGFibGUEYm9vbAVlcG9jaAZ1aW50MzIFYnVpbHQOY2hhcnRlcl92aWV3W10TY2hhcnRlcl90cmVlX3Jlc3VsdAABBW5vZGVzEmNoYXJ0ZXJfbm9kZV9kZWZbXQxjaGFydGVyX3ZpZXcAAwdub2RlX2lkBnVpbnQzMg9jb21wbGV0ZWRfZXBvY2gGdWludDMyCWVudGl0eV9pZAZ1aW50NjQMY2hhcnRlcnJlYWR5AAIBeAVpbnQ2NAF5BWludDY0DGNoYXJ0ZXJzX3JvdwADB25vZGVfaWQGdWludDMyD2NvbXBsZXRlZF9lcG9jaAZ1aW50MzIJZW50aXR5X2lkBnVpbnQ2NA9jaXZpY2NvbmZpZ19yb3cAAQtjaXZpY19vd25lcgRuYW1lCWNsYWltX3JvdwABBW93bmVyBG5hbWUIY2xhaW1qb2IAAgZqb2JfaWQGdWludDY0B3NoaXBfaWQGdWludDY0CWNsYWltcGxvdAADCmJ1aWxkZXJfaWQGdWludDY0DnRhcmdldF9pdGVtX2lkBnVpbnQxNgRzbG90DGNsdXN0ZXJfc2xvdAxjbGFpbXN0YXJ0ZXIAAQVvd25lcgRuYW1lDGNsYWltdXBncmFkZQABBmpvYl9pZAZ1aW50NjQJY2xlYW5yc3ZwAAIFZXBvY2gGdWludDY0CG1heF9yb3dzBnVpbnQ2NApjbGVhcnRhYmxlAAMKdGFibGVfbmFtZQRuYW1lBXNjb3BlBW5hbWU/CG1heF9yb3dzB3VpbnQ2ND8MY2x1c3Rlcl9jZWxsAAMCZ3gEaW50OAJneQRpbnQ4BmVudGl0eQZ1aW50NjQLY2x1c3Rlcl9yb3cAAgRyb290BnVpbnQ2NAVjZWxscw5jbHVzdGVyX2NlbGxbXQxjbHVzdGVyX3Nsb3QAAwNodWIGdWludDY0Amd4BGludDgCZ3kEaW50OA5jbHVzdGVyX3NvdXJjZQACCXNvdXJjZV9pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdDGNsdXN0ZXJjcmFmdAAGAmlkBnVpbnQ2NAlyZWNpcGVfaWQGdWludDE2CHF1YW50aXR5BnVpbnQzMgdzb3VyY2VzEGNsdXN0ZXJfc291cmNlW10GdGFyZ2V0B3VpbnQ2ND8Ec2xvdAZ1aW50OD8GY29tbWl0AAMJb3JhY2xlX2lkBG5hbWUFZXBvY2gGdWludDY0BmNvbW1pdAtjaGVja3N1bTI1Ngpjb21taXRfcm93AAQCaWQGdWludDY0BWVwb2NoBnVpbnQ2NAlvcmFjbGVfaWQEbmFtZQZjb21taXQLY2hlY2tzdW0yNTYJY29uZmlnbG9nAAEGY29uZmlnC2dhbWVfY29uZmlnC2Nvb3JkaW5hdGVzAAMBeAVpbnQ2NAF5BWludDY0AXoHdWludDE2Pwhjb3VwbGluZwADC2NvdW50ZXJwYXJ0CmVudGl0eV9yZWYEaG9sZAZ1aW50NjQEa2luZAV1aW50OAVjcmFmdAAGAmlkBnVpbnQ2NAlyZWNpcGVfaWQGdWludDE2CHF1YW50aXR5BnVpbnQzMgZpbnB1dHMMY2FyZ29faXRlbVtdBnRhcmdldAd1aW50NjQ/BHNsb3QGdWludDg/DGNyYWZ0ZXJfbGFuZQAECnNsb3RfaW5kZXgFdWludDgFc3BlZWQGdWludDE2BWRyYWluBnVpbnQzMgpvdXRwdXRfcGN0BnVpbnQxNghjcmFmdGpvYgAGB3NoaXBfaWQGdWludDY0C3dvcmtzaG9wX2lkBnVpbnQ2NARzbG90BXVpbnQ4CXJlY2lwZV9pZAZ1aW50MTYIcXVhbnRpdHkGdWludDMyBmlucHV0cwxjYXJnb19pdGVtW10JZGJnY3JlZGl0AAQFb3duZXIEbmFtZQF4BWludDY0AXkFaW50NjQNYW1vdW50X2F0b21pYwZ1aW50NjQKZGJnbWFuZGF0ZQADAXgFaW50NjQBeQVpbnQ2NAdub2RlX2lkBnVpbnQzMg1kZWNvbXBfYnVja2V0AAMIY2F0ZWdvcnkFdWludDgEdGllcgV1aW50OAZyYXdfa2cGdWludDMyDWRlY29tcF9yZXN1bHQAAwdpdGVtX2lkBnVpbnQxNgxwcm9jZXNzZWRfa2cGdWludDY0B2J1Y2tldHMPZGVjb21wX2J1Y2tldFtdCWRlbGVudGl0eQABCWVudGl0eV9pZAZ1aW50NjQNZGVtYW5kX3Jlc3VsdAAFDWFidW5kYW50X21hc2sFdWludDgMbGFja2luZ19tYXNrBXVpbnQ4BWFjdXRlBXVpbnQ4B25lZWRfZnAIdWludDY0W10FZXBvY2gGdWludDMyCGRlbW9saXNoAAEJZW50aXR5X2lkBnVpbnQ2NAZkZXBsb3kAAwJpZAZ1aW50NjQDcmVmCWNhcmdvX3JlZgRzbG90DWNsdXN0ZXJfc2xvdD8JZGVwb3Rfcm93AAcCaWQGdWludDY0BW93bmVyBG5hbWUHaXRlbV9pZAZ1aW50NjQIcXVhbnRpdHkGdWludDY0BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdC3NlcXVlbmNlX2lkB3VpbnQ2ND8KZGVwb3RfdmlldwAECnBsYXllcl9jYXAGdWludDY0C3N0b3JlZF9tYXNzBnVpbnQ2NA1yZXNlcnZlZF9tYXNzBnVpbnQ2NARyb3dzC2RlcG90X3Jvd1tdDWRlcG90YWNjdF9yb3cAAwVvd25lcgRuYW1lC3N0b3JlZF9tYXNzBnVpbnQ2NA1yZXNlcnZlZF9tYXNzBnVpbnQ2NApkZXBvdHN0b3JlAAMHc2hpcF9pZAZ1aW50NjQIZGVwb3RfaWQGdWludDY0BWl0ZW1zDGNhcmdvX2l0ZW1bXQlkZXBvdHRha2UAAwdzaGlwX2lkBnVpbnQ2NAhkZXBvdF9pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdCmRlc2NlbnRpdHkABAdpdGVtX2lkBnVpbnQxNgpodWxsX3N0YXRzBnVpbnQ2NAxtb2R1bGVfaXRlbXMIdWludDE2W10MbW9kdWxlX3N0YXRzCHVpbnQ2NFtdBmVuYWJsZQABB2VuYWJsZWQEYm9vbAxlbmVyZ3lfc3RhdHMAAghjYXBhY2l0eQZ1aW50MzIIcmVjaGFyZ2UGdWludDMyFGVudGl0eV9jdXJyZW50X3N0YXRlAAILY29vcmRpbmF0ZXMLY29vcmRpbmF0ZXMGZW5lcmd5BnVpbnQzMg9lbnRpdHlfZGVmYXVsdHMAAgt3YXJlaG91c2VfegZ1aW50MTYLY29udGFpbmVyX3oGdWludDE2C2VudGl0eV9pbmZvABcEdHlwZQRuYW1lAmlkBnVpbnQ2NAVvd25lcgRuYW1lC2VudGl0eV9uYW1lBnN0cmluZwtjb29yZGluYXRlcwtjb29yZGluYXRlcwdpdGVtX2lkBnVpbnQxNgljYXJnb21hc3MGdWludDMyBWNhcmdvDGNhcmdvX3ZpZXdbXQdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdBmVuZXJneQd1aW50MzI/CGh1bGxtYXNzB3VpbnQzMj8IY2FwYWNpdHkHdWludDMyPwdlbmdpbmVzD21vdmVtZW50X3N0YXRzPwR3YXJwC3dhcnBfc3RhdHM/CWdlbmVyYXRvcg1lbmVyZ3lfc3RhdHM/BmhhdWxlcg1oYXVsZXJfc3RhdHM/DmdhdGhlcmVyX2xhbmVzD2dhdGhlcmVyX2xhbmVbXQ1jcmFmdGVyX2xhbmVzDmNyYWZ0ZXJfbGFuZVtdDWJ1aWxkZXJfbGFuZXMOYnVpbGRlcl9sYW5lW10MbG9hZGVyX2xhbmVzDWxvYWRlcl9sYW5lW10IbGF1bmNoZXIPbGF1bmNoZXJfc3RhdHM/BWxhbmVzBmxhbmVbXQVob2xkcwZob2xkW10NZW50aXR5X2xheW91dAADDmVudGl0eV9pdGVtX2lkBnVpbnQxNgVzbG90cwpzbG90X2RlZltdDWJhc2VfaHVsbG1hc3MGdWludDMyFWVudGl0eV9sYXlvdXRzX3Jlc3VsdAABCGVudGl0aWVzD2VudGl0eV9sYXlvdXRbXQplbnRpdHlfcmVmAAILZW50aXR5X3R5cGUEbmFtZQllbnRpdHlfaWQGdWludDY0CmVudGl0eV9yb3cADAJpZAZ1aW50NjQFb3duZXIEbmFtZQRraW5kBG5hbWUHaXRlbV9pZAZ1aW50MTYEbmFtZQZzdHJpbmcFc3RhdHMGdWludDY0C2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzBmVuZXJneQd1aW50MzI/CWNhcmdvbWFzcwZ1aW50MzIHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQVsYW5lcwZsYW5lW10FaG9sZHMGaG9sZFtdDmVudGl0eV9zZXFfcm93AAEHbmV4dF9pZAZ1aW50NjQOZW50aXR5X3N1bW1hcnkACAR0eXBlBG5hbWUCaWQGdWludDY0BW93bmVyBG5hbWULZW50aXR5X25hbWUGc3RyaW5nC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzB2lzX2lkbGUEYm9vbA5yZXNvbHZlZF9jb3VudAZ1aW50MzINcGVuZGluZ19jb3VudAZ1aW50MzIQZW50aXR5X3Rhc2tfaW5mbwAECWVudGl0eV9pZAZ1aW50NjQLZW50aXR5X3R5cGUEbmFtZQp0YXNrX2NvdW50BnVpbnQzMhBzY2hlZHVsZV9zdGFydGVkCnRpbWVfcG9pbnQPZW50aXR5Z3JvdXBfcm93AAICaWQGdWludDY0DHBhcnRpY2lwYW50cwxlbnRpdHlfcmVmW10LZW51bV9tZW1iZXIAAgV2YWx1ZQV1aW50OARuYW1lBnN0cmluZwtlbnVtX3Jlc3VsdAABB21lbWJlcnMNZW51bV9tZW1iZXJbXQllcG9jaF9yb3cABAVlcG9jaAZ1aW50NjQKb3JhY2xlX2lkcwZuYW1lW10JdGhyZXNob2xkBXVpbnQ4BHNlZWQLY2hlY2tzdW0yNTYMZml4Y2FyZ29tYXNzAAEJZW50aXR5X2lkBnVpbnQ2NApmaXhpdGVtaWRzAAAQZm9vdHByaW50X3Jlc3VsdAABBWNlbGxzC2dyaWRfY2VsbFtdC2ZvcmNlcmV2ZWFsAAEFZXBvY2gGdWludDY0BWZvdW5kAAQGcGxheWVyBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAF4BWludDY0AXkFaW50NjQLZ2FtZV9jb25maWcAAwd2ZXJzaW9uBnVpbnQzMghkZWZhdWx0cw9lbnRpdHlfZGVmYXVsdHMFaXRlbXMKaXRlbV9kZWZbXQZnYXRoZXIABQlzb3VyY2VfaWQGdWludDY0DmRlc3RpbmF0aW9uX2lkBnVpbnQ2NAdzdHJhdHVtBnVpbnQxNghxdWFudGl0eQZ1aW50MzIEc2xvdAZ1aW50OD8NZ2F0aGVyZXJfbGFuZQAFCnNsb3RfaW5kZXgFdWludDgFeWllbGQGdWludDE2BWRyYWluBnVpbnQzMgVkZXB0aAZ1aW50MTYKb3V0cHV0X3BjdAZ1aW50MTYKZ2F0aGVycGxhbgAGCXNvdXJjZV9pZAZ1aW50NjQOZGVzdGluYXRpb25faWQGdWludDY0B3N0cmF0dW0GdWludDE2CHF1YW50aXR5BnVpbnQzMghyZWNoYXJnZQRib29sBXNsb3RzBWJ5dGVzDGdlbmVzaXNmbGVldAABCGVudGl0aWVzDGVudGl0eV9yb3dbXQpnZXRjaGFydGVyAAIBeAVpbnQ2NAF5BWludDY0DGdldGNoYXJ0dHJlZQAACmdldGNsdXN0ZXIAAQZodWJfaWQGdWludDY0CWdldGNvbmZpZwAACWdldGRlY29tcAABB2l0ZW1faWQGdWludDE2CWdldGRlbWFuZAACAXgFaW50NjQBeQVpbnQ2NApnZXRkZXBvc2l0AAIFb3duZXIEbmFtZQhhc3NldF9pZAZ1aW50NjQIZ2V0ZGVwb3QAAghkZXBvdF9pZAZ1aW50NjQFb3duZXIEbmFtZQtnZXRkaXN0YW5jZQAEAmF4BWludDY0AmF5BWludDY0AmJ4BWludDY0AmJ5BWludDY0C2dldGVsaWdpYmxlAAIGY29vcmRzC2Nvb3JkaW5hdGVzB3N0cmF0dW0GdWludDE2CWdldGVudGNscwAAC2dldGVudGl0aWVzAAIFb3duZXIEbmFtZQtlbnRpdHlfdHlwZQVuYW1lPwlnZXRlbnRpdHkAAQllbnRpdHlfaWQGdWludDY0DGdldGZvb3RwcmludAABB2l0ZW1faWQGdWludDE2C2dldGluZmRlY2F5AAIGYWN0aXZlBnVpbnQ2NAZlcG9jaHMGdWludDMyDGdldGluZmx1ZW5jZQADBW93bmVyBG5hbWUBeAVpbnQ2NAF5BWludDY0C2dldGluZnZhbHVlAAMFaXRlbXMMY2FyZ29faXRlbVtdAXgFaW50NjQBeQVpbnQ2NAtnZXRpdGVtZGF0YQAACmdldGl0ZW1pZHMAAAhnZXRpdGVtcwAAC2dldGl0ZW10eXBlAAEHaXRlbV9pZAZ1aW50MTYMZ2V0aXRlbXR5cGVzAAAHZ2V0am9icwABC3dvcmtzaG9wX2lkBnVpbnQ2NAtnZXRraW5kbWV0YQAAC2dldGxvY2F0aW9uAAIBeAVpbnQ2NAF5BWludDY0CmdldGxvY2RhdGEAAgF4BWludDY0AXkFaW50NjQKZ2V0bWludGNmZwAAC2dldG1vZHR5cGVzAAAKZ2V0bW9kdWxlcwAACWdldG5lYXJieQACCWVudGl0eV9pZAZ1aW50NjQIcmVjaGFyZ2UEYm9vbApnZXRuZnRiYXNlAAAKZ2V0bmZ0aW5mbwAACWdldHBsYXllcgABB2FjY291bnQEbmFtZQdnZXRwb29sAAIIY2F0ZWdvcnkFdWludDgEdGllcgV1aW50OAhnZXRwb29scwAADGdldHByb2pzdGF0ZQACCWVudGl0eV9pZAZ1aW50NjQKdGFza19jb3VudAZ1aW50OD8JZ2V0cmVjaXBlAAEOb3V0cHV0X2l0ZW1faWQGdWludDE2CmdldHJlY2lwZXMAAgtsb3dlcl9ib3VuZAZ1aW50MTYFbGltaXQFdWludDgKZ2V0cmVzY2F0cwAAC2dldHJlc2VydmVzAAIBeAVpbnQ2NAF5BWludDY0DGdldHJlc291cmNlcwAACmdldHNlcnZpY2UAAQt3b3Jrc2hvcF9pZAZ1aW50NjQIZ2V0c2xvdHMAAApnZXRzdHJhdHVtAAMBeAVpbnQ2NAF5BWludDY0B3N0cmF0dW0GdWludDE2DGdldHN1bW1hcmllcwACBW93bmVyBG5hbWULZW50aXR5X3R5cGUFbmFtZT8KZ2V0dXBnam9icwABB2RvY2tfaWQGdWludDY0CGdldHZvdGVzAAIBeAVpbnQ2NAF5BWludDY0C2dldHdvcm1ob2xlAAIBeAVpbnQ2NAF5BWludDY0CWdyaWRfY2VsbAACAmd4BGludDgCZ3kEaW50OAxncm91cHRyYW5zaXQABQhlbnRpdGllcwxlbnRpdHlfcmVmW10CYXgFaW50NjQCYXkFaW50NjQCYngFaW50NjQCYnkFaW50NjQLZ3JvdXB0cmF2ZWwABAhlbnRpdGllcwxlbnRpdHlfcmVmW10BeAVpbnQ2NAF5BWludDY0CHJlY2hhcmdlBGJvb2wEaGFzaAABBXZhbHVlBnN0cmluZwdoYXNoNTEyAAEFdmFsdWUGc3RyaW5nDGhhdWxlcl9zdGF0cwAECGNhcGFjaXR5BXVpbnQ4CmVmZmljaWVuY3kGdWludDE2BWRyYWluBnVpbnQzMhBjYXBhY2l0eV9ieV90aWVyEWhhdWxlcl90aWVyX2NhcFtdD2hhdWxlcl90aWVyX2NhcAACBHRpZXIFdWludDgIY2FwYWNpdHkFdWludDgEaG9sZAAFAmlkBnVpbnQ2NARraW5kBXVpbnQ4C2NvdW50ZXJwYXJ0CmVudGl0eV9yZWYFdW50aWwKdGltZV9wb2ludA1pbmNvbWluZ19tYXNzBnVpbnQzMgtpbXBvcnRjYXJnbwABA3JvdwljYXJnb19yb3cKaW1wb3J0Y2VsbAAEBHJvb3QGdWludDY0Amd4BGludDgCZ3kEaW50OAllbnRpdHlfaWQGdWludDY0DGltcG9ydGVudGl0eQABA3JvdwplbnRpdHlfcm93C2ltcG9ydGVwb2NoAAEDcm93CWVwb2NoX3JvdwtpbXBvcnRncm91cAABA3Jvdw9lbnRpdHlncm91cF9yb3cMaW1wb3J0bmZ0Y2ZnAAEDcm93DW5mdGNvbmZpZ19yb3cMaW1wb3J0cGxheWVyAAEFb3duZXIEbmFtZQ1pbXBvcnRyZXNlcnZlAAILZXBvY2hfc2NvcGUGdWludDMyA3JvdwtyZXNlcnZlX3JvdwtpbXBvcnRzdGF0ZQABA3JvdwlzdGF0ZV9yb3cNaW5mYmFsbG90X3JvdwACC2xvY2F0aW9uX2lkBnVpbnQ2NAVlcG9jaAZ1aW50MzILaW5mYnVybl9yb3cAAQNicHMGdWludDE2DWluZmRlbWFuZF9yb3cAAwRwZWFrBnVpbnQ2NARiYXNlBnVpbnQ2NAVmbG9vcgZ1aW50NjQKaW5mbG9jX3JvdwAJC2xvY2F0aW9uX2lkBnVpbnQ2NAhsaWZldGltZQZ1aW50NjQGYWN0aXZlBnVpbnQ2NBFsYXN0X3VwZGF0ZV9lcG9jaAZ1aW50MzIJd2F0ZXJtYXJrBnVpbnQ2NAZjaG9zZW4GdWludDMyDGNob3Nlbl9lcG9jaAZ1aW50MzIHZm91bmRlcgRuYW1lB2ZvdW5kZWQGdWludDMyEGluZmx1ZW5jZV90b3RhbHMACw9wbGF5ZXJfbGlmZXRpbWUGdWludDY0DXBsYXllcl9hY3RpdmUGdWludDY0EXN0YW5kaW5nX2xpZmV0aW1lBnVpbnQ2NA9zdGFuZGluZ19hY3RpdmUGdWludDY0EWxvY2F0aW9uX2xpZmV0aW1lBnVpbnQ2NA9sb2NhdGlvbl9hY3RpdmUGdWludDY0CXdhdGVybWFyawZ1aW50NjQHbWFuZGF0ZQZ1aW50MzIHZm91bmRlcgRuYW1lB2ZvdW5kZWQGdWludDMyBWVwb2NoBnVpbnQzMgtpbmZtaW50X3JvdwADCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgJdGhyZXNob2xkBnVpbnQ2NA1pbmZwbGF5ZXJfcm93AAQHYWNjb3VudARuYW1lCGxpZmV0aW1lBnVpbnQ2NAZhY3RpdmUGdWludDY0EWxhc3RfdXBkYXRlX2Vwb2NoBnVpbnQzMhBpbmZwbGF5ZXJsb2Nfcm93AAQLbG9jYXRpb25faWQGdWludDY0CGxpZmV0aW1lBnVpbnQ2NAZhY3RpdmUGdWludDY0EWxhc3RfdXBkYXRlX2Vwb2NoBnVpbnQzMgtpbmZwb29sX3JvdwAGCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgFZ3JhZGUFdWludDgIcXVhbnRpdHkGdWludDY0BXN0YXRzBnVpbnQ2NANiYXIGdWludDY0DmluZnF1YWxpdHlfcm93AAECZDEGdWludDMyDGluZnRhbGx5X3JvdwACB25vZGVfaWQGdWludDY0BXRvdGFsBnVpbnQ2NA9pbmZ2YWx1ZV9yZXN1bHQAAgx0b3RhbF9hdG9taWMGdWludDY0D3Blcl9pdGVtX2F0b21pYwh1aW50NjRbXQtpbmZ2b3RlX3JvdwAEB2FjY291bnQEbmFtZQVlcG9jaAZ1aW50MzIHbm9kZV9pZAZ1aW50MzIGd2VpZ2h0BnVpbnQ2NA1pbmZ3ZWlnaHRfcm93AAMIY2F0ZWdvcnkFdWludDgEdGllcgV1aW50OAl3ZWlnaHRfZnAGdWludDY0CGl0ZW1fZGVmAAUCaWQGdWludDE2BG1hc3MGdWludDMyBHR5cGUFdWludDgHc3VidHlwZQV1aW50OAR0aWVyBXVpbnQ4DGl0ZW1faWRfcGFpcgACAmlkBnVpbnQxNgRuYW1lBnN0cmluZw9pdGVtX2lkc19yZXN1bHQAAQVpdGVtcw5pdGVtX2lkX3BhaXJbXQ9pdGVtZGF0YV9yZXN1bHQAAgVpdGVtcwppdGVtX2RlZltdB3JlY2lwZXMOcmVjaXBlc19yZXN1bHQKaXRlbXNfaW5mbwABBWl0ZW1zCml0ZW1fZGVmW10Lam9iX3JlY2VpcHQAAwZqb2JfaWQGdWludDY0CXN0YXJ0c19hdAp0aW1lX3BvaW50DGNvbXBsZXRlc19hdAp0aW1lX3BvaW50B2pvYl9yb3cADAJpZAZ1aW50NjQId29ya3Nob3AGdWludDY0BnNvY2tldAV1aW50OAVvd25lcgRuYW1lB3NoaXBfaWQGdWludDY0BmNvb3Jkcwtjb29yZGluYXRlcwlzdGFydHNfYXQKdGltZV9wb2ludAxjb21wbGV0ZXNfYXQKdGltZV9wb2ludAlyZWNpcGVfaWQGdWludDE2CHF1YW50aXR5BnVpbnQzMgtlbmVyZ3lfcGFpZAZ1aW50MzIFY2FyZ28MY2FyZ29faXRlbVtdC2pvYnNfcmVzdWx0AAEEam9icwlqb2Jfcm93W10Eam9pbgABB2FjY291bnQEbmFtZRBraW5kX21ldGFfcmVzdWx0AAIFa2luZHMPa2luZF9tZXRhX3Jvd1tdCXRlbXBsYXRlcxN0ZW1wbGF0ZV9tZXRhX3Jvd1tdDWtpbmRfbWV0YV9yb3cABQRraW5kBG5hbWUOY2xhc3NpZmljYXRpb24FdWludDgQY2FwYWJpbGl0eV9mbGFncwV1aW50OAd6X2Nvb3JkBnVpbnQzMg1kZWZhdWx0X2xhYmVsBnN0cmluZwRsYW5lAAIIbGFuZV9rZXkFdWludDgIc2NoZWR1bGUIc2NoZWR1bGUGbGF1bmNoAAMLbGF1bmNoZXJfaWQGdWludDY0CmNhdGNoZXJfaWQGdWludDY0BWl0ZW1zDGNhcmdvX2l0ZW1bXQ5sYXVuY2hlcl9zdGF0cwADC2NoYXJnZV9yYXRlBnVpbnQxNgh2ZWxvY2l0eQZ1aW50MTYFZHJhaW4GdWludDE2BGxvYWQAAwJpZAZ1aW50NjQHZnJvbV9pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdC2xvYWRlcl9sYW5lAAQKc2xvdF9pbmRleAV1aW50OARtYXNzBnVpbnQzMgZ0aHJ1c3QGdWludDE2Cm91dHB1dF9wY3QGdWludDE2EGxvY2F0aW9uX2Rlcml2ZWQAAgxzdGF0aWNfcHJvcHMPbG9jYXRpb25fc3RhdGljBHNpemUGdWludDE2DWxvY2F0aW9uX2luZm8AAwZjb29yZHMLY29vcmRpbmF0ZXMJaXNfc3lzdGVtBGJvb2wLaXNfd29ybWhvbGUEYm9vbA9sb2NhdGlvbl9zdGF0aWMABQZjb29yZHMLY29vcmRpbmF0ZXMEdHlwZQ1sb2NhdGlvbl90eXBlB3N1YnR5cGUFdWludDgFc2VlZDAFdWludDgFc2VlZDEFdWludDgTbWludF90aHJlc2hvbGRfdmlldwADCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgJdGhyZXNob2xkBnVpbnQ2NA5taW50Y2ZnX3Jlc3VsdAACCnRocmVzaG9sZHMVbWludF90aHJlc2hvbGRfdmlld1tdCGJ1cm5fYnBzBnVpbnQxNgltaW50cV9yb3cAAgJpZAZ1aW50NjQFZ3JhZGUFdWludDgJbWludHJlYWR5AAEJbWF4X21pbnRzB3VpbnQzMj8MbW9kdWxlX2VudHJ5AAIEdHlwZQV1aW50OAlpbnN0YWxsZWQOcGFja2VkX21vZHVsZT8LbW9kdWxlX2luZm8ABAJpZAZ1aW50MTYEbWFzcwZ1aW50MzILbW9kdWxlX3R5cGUFdWludDgEdGllcgV1aW50OA5tb2R1bGVzX3Jlc3VsdAABB21vZHVsZXMNbW9kdWxlX2luZm9bXQ5tb3ZlbWVudF9zdGF0cwACBnRocnVzdAZ1aW50MzIFZHJhaW4GdWludDMyCG1vdmV0aWxlAAUGaHViX2lkBnVpbnQ2NAdmcm9tX2d4BGludDgHZnJvbV9neQRpbnQ4BXRvX2d4BGludDgFdG9fZ3kEaW50OApuYXR1cmFsaXplAAMGcGxheWVyBG5hbWUBeAVpbnQ2NAF5BWludDY0C25lYXJieV9pbmZvAAUKY2FuX3RyYXZlbARib29sB2N1cnJlbnQUZW50aXR5X2N1cnJlbnRfc3RhdGUJcHJvamVjdGVkFGVudGl0eV9jdXJyZW50X3N0YXRlCm1heF9lbmVyZ3kGdWludDMyB3N5c3RlbXMPbmVhcmJ5X3N5c3RlbVtdDW5lYXJieV9zeXN0ZW0ABAhkaXN0YW5jZQZ1aW50NjQLZW5lcmd5X2Nvc3QGdWludDY0C2ZsaWdodF90aW1lBnVpbnQzMghsb2NhdGlvbg1sb2NhdGlvbl9pbmZvDm5mdF9jYXJnb19pdGVtAAQHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0B21vZHVsZXMObW9kdWxlX2VudHJ5W10IcXVhbnRpdHkGdWludDMyEG5mdF9pdGVtX3BheWxvYWQAAgRpdGVtDm5mdF9jYXJnb19pdGVtCGxvY2F0aW9uDGNvb3JkaW5hdGVzPw5uZnRfc2NoZW1hX2RlZgACC3NjaGVtYV9uYW1lBG5hbWUGZmllbGRzDnNjaGVtYV9maWVsZFtdEG5mdF90ZW1wbGF0ZV9kZWYAAwdpdGVtX2lkBnVpbnQxNgtzY2hlbWFfbmFtZQRuYW1lC3RlbXBsYXRlX2lkBWludDMyDW5mdGNvbmZpZ19yb3cAAwdpdGVtX2lkBnVpbnQxNgt0ZW1wbGF0ZV9pZAVpbnQzMgtzY2hlbWFfbmFtZQRuYW1lCW5mdGltZ3VybAACBGl0ZW0KY2FyZ29faXRlbQhsb2NhdGlvbgxjb29yZGluYXRlcz8ObmZ0aW5mb19yZXN1bHQAAgdzY2hlbWFzEG5mdF9zY2hlbWFfZGVmW10JdGVtcGxhdGVzEm5mdF90ZW1wbGF0ZV9kZWZbXQZub3RpZnkAAQVldmVudAp0YXNrX2V2ZW50EW9yYWNsZV9jb25maWdfcm93AAEJdGhyZXNob2xkBXVpbnQ4Cm9yYWNsZV9yb3cAAQJpZARuYW1lDXBhY2tlZF9tb2R1bGUAAgdpdGVtX2lkBnVpbnQxNgVzdGF0cwZ1aW50NjQKcGxhY2VjYXJnbwADBW93bmVyBG5hbWUHaG9zdF9pZAZ1aW50NjQIYXNzZXRfaWQGdWludDY0C3BsYWNlZW50aXR5AAMFb3duZXIEbmFtZQhhc3NldF9pZAZ1aW50NjQPdGFyZ2V0X25leHVzX2lkBnVpbnQ2NAtwbGF5ZXJfaW5mbwADBW93bmVyBG5hbWUJaXNfcGxheWVyBGJvb2wMY29tcGFueV9uYW1lBnN0cmluZwpwbGF5ZXJfcm93AAEFb3duZXIEbmFtZRBwb29sX3BhaXJfcmVzdWx0AAkIY2F0ZWdvcnkFdWludDgEdGllcgV1aW50OAdpdGVtX2lkBnVpbnQxNhFzdGFuZGFyZF9xdWFudGl0eQZ1aW50NjQOc3RhbmRhcmRfc3RhdHMGdWludDY0EHByZW1pdW1fcXVhbnRpdHkGdWludDY0DXByZW1pdW1fc3RhdHMGdWludDY0A2JhcgZ1aW50NjQJdGhyZXNob2xkBnVpbnQ2NAlwb29sX3ZpZXcABwhjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4BWdyYWRlBXVpbnQ4B2l0ZW1faWQGdWludDE2CHF1YW50aXR5BnVpbnQ2NAVzdGF0cwZ1aW50NjQDYmFyBnVpbnQ2NAxwb29sc19yZXN1bHQAAQVwb29scwtwb29sX3ZpZXdbXQ9wcm9qZWN0ZWRfc3RhdGUAEQVvd25lcgRuYW1lC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzBmVuZXJneQd1aW50MzI/CWNhcmdvbWFzcwZ1aW50MzIFY2FyZ28MY2FyZ29fdmlld1tdCGh1bGxtYXNzB3VpbnQzMj8IY2FwYWNpdHkHdWludDMyPwdlbmdpbmVzD21vdmVtZW50X3N0YXRzPwR3YXJwC3dhcnBfc3RhdHM/CWdlbmVyYXRvcg1lbmVyZ3lfc3RhdHM/BmhhdWxlcg1oYXVsZXJfc3RhdHM/DmdhdGhlcmVyX2xhbmVzD2dhdGhlcmVyX2xhbmVbXQ1jcmFmdGVyX2xhbmVzDmNyYWZ0ZXJfbGFuZVtdDWJ1aWxkZXJfbGFuZXMOYnVpbGRlcl9sYW5lW10MbG9hZGVyX2xhbmVzDWxvYWRlcl9sYW5lW10IbGF1bmNoZXIPbGF1bmNoZXJfc3RhdHM/BHRpZXIFdWludDgIcmVjaGFyZ2UAAQJpZAZ1aW50NjQMcmVjaXBlX2lucHV0AAIHaXRlbV9pZAZ1aW50MTYIcXVhbnRpdHkGdWludDMyEHJlY2lwZV9pdGVtX2luZm8AAgJpZAZ1aW50MTYEbWFzcwZ1aW50MzIPcmVjaXBlX3Jlc3BvbnNlAAgOb3V0cHV0X2l0ZW1faWQGdWludDE2C291dHB1dF9tYXNzBnVpbnQzMgZpbnB1dHMOcmVjaXBlX2lucHV0W10Kc3RhdF9zbG90cxRzdGF0X3Nsb3RfcmVzcG9uc2VbXQ1ibGVuZF93ZWlnaHRzBWJ5dGVzC291dHB1dF9pdGVtEHJlY2lwZV9pdGVtX2luZm8LaW5wdXRfaXRlbXMScmVjaXBlX2l0ZW1faW5mb1tdD3NvdXJjZV9zdWJjbGFzcwd1aW50MTY/DnJlY2lwZXNfcmVzdWx0AAEHcmVjaXBlcxFyZWNpcGVfcmVzcG9uc2VbXQhyZWZpdF9vcAACAm9wBXVpbnQ4BHNsb3QFdWludDgMcmVmcnNoZW50aXR5AAEJZW50aXR5X2lkBnVpbnQ2NAxyZW1vdmVvcmFjbGUAAQlvcmFjbGVfaWQEbmFtZQZyZW5hbWUAAgJpZAZ1aW50NjQEbmFtZQZzdHJpbmcLcmVzZXJ2ZV9yb3cABQJpZAZ1aW50NjQIY29vcmRfaWQGdWludDY0B3N0cmF0dW0GdWludDE2CXJlbWFpbmluZwZ1aW50MzIKbGFzdF9ibG9jaxRibG9ja190aW1lc3RhbXBfdHlwZQdyZXNvbHZlAAICaWQGdWludDY0BWNvdW50B3VpbnQ2ND8PcmVzb2x2ZV9yZXN1bHRzAAYJZW50aXR5X2lkBnVpbnQ2NAtlbnRpdHlfdHlwZQRuYW1lDnJlc29sdmVkX2NvdW50BnVpbnQzMhRuZXdfc2NoZWR1bGVfc3RhcnRlZAt0aW1lX3BvaW50PwtlbnRpdHlncm91cAd1aW50NjQ/DWdyb3VwX21lbWJlcnMWQl92ZWN0b3JfZW50aXR5X3JlZl9FPwpyZXNvbHZlYWxsAAEFb3duZXIEbmFtZRJyZXNvbHZlYWxsX3Jlc3VsdHMAAgdzY2FubmVkBnVpbnQzMghyZXNvbHZlZAZ1aW50MzIMcmVzb2x2ZWVhcmx5AAICaWQGdWludDY0BWNvdW50B3VpbnQ2ND8NcmVzb3VyY2VfaW5mbwAEAmlkBnVpbnQxNgRtYXNzBnVpbnQzMghjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4DnJlc291cmNlX3N0YXRzAAMFc3RhdDEGdWludDE2BXN0YXQyBnVpbnQxNgVzdGF0MwZ1aW50MTYQcmVzb3VyY2VzX3Jlc3VsdAABCXJlc291cmNlcw9yZXNvdXJjZV9pbmZvW10GcmV2ZWFsAAMJb3JhY2xlX2lkBG5hbWUFZXBvY2gGdWludDY0BnJldmVhbAtjaGVja3N1bTI1NgpyZXZlYWxfcm93AAQCaWQGdWludDY0BWVwb2NoBnVpbnQ2NAlvcmFjbGVfaWQEbmFtZQZyZXZlYWwLY2hlY2tzdW0yNTYIcm1tb2R1bGUAAwllbnRpdHlfaWQGdWludDY0DG1vZHVsZV9pbmRleAV1aW50OAp0YXJnZXRfcmVmCmNhcmdvX3JlZj8Icm1uZnRjZmcAAQdpdGVtX2lkBnVpbnQxNg5yb3V0ZV93YXlwb2ludAACAXgFaW50NjQBeQVpbnQ2NAhzY2hlZHVsZQACB3N0YXJ0ZWQKdGltZV9wb2ludAV0YXNrcwZ0YXNrW10Mc2NoZW1hX2ZpZWxkAAIEbmFtZQZzdHJpbmcKZmllbGRfdHlwZQZzdHJpbmcLc2VydmljZV9yb3cAAgZlbnRpdHkGdWludDY0B3NvY2tldHMQc2VydmljZV9zb2NrZXRbXQ5zZXJ2aWNlX3NvY2tldAABBG9wZW4EYm9vbAhzZXRjaXZpYwABB2FjY291bnQEbmFtZQpzZXRjbHVzdGVyAAEDcm93C2NsdXN0ZXJfcm93CXNldGNvb3JkcwADCWVudGl0eV9pZAZ1aW50NjQBeAVpbnQ2NAF5BWludDY0CnNldGluZmJ1cm4AAQNicHMGdWludDE2CHNldGluZmQxAAECZDEGdWludDMyDHNldGluZmRlbWFuZAADBHBlYWsGdWludDY0BGJhc2UGdWludDY0BWZsb29yBnVpbnQ2NApzZXRpbmZtaW50AAMIY2F0ZWdvcnkFdWludDgEdGllcgV1aW50OAl0aHJlc2hvbGQGdWludDY0DHNldGluZndlaWdodAADCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgJd2VpZ2h0X2ZwBnVpbnQ2NAlzZXRuZXh0aWQAAQduZXh0X2lkBnVpbnQ2NAlzZXRuZnRjZmcAAwdpdGVtX2lkBnVpbnQxNgt0ZW1wbGF0ZV9pZAVpbnQzMgtzY2hlbWFfbmFtZQRuYW1lCXNldHNvY2tldAADC3dvcmtzaG9wX2lkBnVpbnQ2NARzbG90BXVpbnQ4BG9wZW4EYm9vbAxzZXR0aHJlc2hvbGQAAQl0aHJlc2hvbGQFdWludDgLc2V0d3JhcGNvc3QAAwlpdGVtX3R5cGUFdWludDgEdGllcgV1aW50OAZhbW91bnQGdWludDY0CnNldHdyYXBmZWUAAgdmZWVfcGN0BnVpbnQxNgtmZWVfYWNjb3VudARuYW1lB3NodXR0bGUABAdjYXJyaWVyBnVpbnQ2NAdmcm9tX2lkBnVpbnQ2NAV0b19pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdCHNsb3RfZGVmAAMEdHlwZQV1aW50OApvdXRwdXRfcGN0BnVpbnQxNghtYXhfdGllcgV1aW50OBJzdGF0X3Nsb3RfcmVzcG9uc2UAAQdzb3VyY2VzDXN0YXRfc291cmNlW10Lc3RhdF9zb3VyY2UAAgtpbnB1dF9pbmRleAV1aW50OBBpbnB1dF9zdGF0X2luZGV4BXVpbnQ4CXN0YXRlX3JvdwADB2VuYWJsZWQEYm9vbAVlcG9jaAZ1aW50MzIEc2VlZAtjaGVja3N1bTI1NglzdG93Y2FyZ28ABQVvd25lcgRuYW1lCWVudGl0eV9pZAZ1aW50NjQIbmV4dXNfaWQGdWludDY0CGNhcmdvX2lkBnVpbnQ2NAhxdWFudGl0eQZ1aW50NjQKc3Rvd2VudGl0eQADBW93bmVyBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAhuZXh1c19pZAZ1aW50NjQMc3RyYXR1bV9kYXRhAAIHc3RyYXR1bQxzdHJhdHVtX2luZm8Fc3RhdHMOcmVzb3VyY2Vfc3RhdHMMc3RyYXR1bV9pbmZvAAUHaXRlbV9pZAZ1aW50MTYEc2VlZAZ1aW50NjQIcmljaG5lc3MGdWludDE2B3Jlc2VydmUGdWludDMyC3Jlc2VydmVfbWF4BnVpbnQzMhFzdHJhdHVtX3JlbWFpbmluZwADB3N0cmF0dW0GdWludDE2CXJlbWFpbmluZwZ1aW50MzIKbGFzdF9ibG9jaxRibG9ja190aW1lc3RhbXBfdHlwZQpzd2FwbW9kdWxlAAMJZW50aXR5X2lkBnVpbnQ2NAxtb2R1bGVfaW5kZXgFdWludDgKbW9kdWxlX3JlZgljYXJnb19yZWYIc3dhcHRpbGUABQZodWJfaWQGdWludDY0BGFfZ3gEaW50OARhX2d5BGludDgEYl9neARpbnQ4BGJfZ3kEaW50OAR0YXNrAAsEdHlwZQV1aW50OAhkdXJhdGlvbgZ1aW50MzIKY2FuY2VsYWJsZQV1aW50OAtjb29yZGluYXRlcwxjb29yZGluYXRlcz8FY2FyZ28MY2FyZ29faXRlbVtdCWNvdXBsaW5ncwpjb3VwbGluZ1tdB3N1YmplY3QLZW50aXR5X3JlZj8LZW50aXR5Z3JvdXAHdWludDY0PwtlbmVyZ3lfY29zdAd1aW50MzI/DnRhcmdldF9pdGVtX2lkB3VpbnQxNj8FcmVmaXQJcmVmaXRfb3A/CnRhc2tfZXZlbnQACgpldmVudF90eXBlBXVpbnQ4BW93bmVyBG5hbWULZW50aXR5X3R5cGUEbmFtZQllbnRpdHlfaWQGdWludDY0CnRhc2tfaW5kZXgGdWludDMyBHRhc2sEdGFzawlzdGFydHNfYXQKdGltZV9wb2ludAxjb21wbGV0ZXNfYXQKdGltZV9wb2ludApuZXdfZW5lcmd5B3VpbnQzMj8IbGFuZV9rZXkFdWludDgMdGFza19yZXN1bHRzAAEIZW50aXRpZXMSZW50aXR5X3Rhc2tfaW5mb1tdEXRlbXBsYXRlX21ldGFfcm93AAMHaXRlbV9pZAZ1aW50MTYEa2luZARuYW1lDWRpc3BsYXlfbGFiZWwGc3RyaW5nB3RyYW5zaXQABQJpZAZ1aW50NjQCYXgFaW50NjQCYXkFaW50NjQCYngFaW50NjQCYnkFaW50NjQGdHJhdmVsAAQCaWQGdWludDY0AXgFaW50NjQBeQVpbnQ2NAhyZWNoYXJnZQRib29sCnRyYXZlbHBsYW4AAwhlbnRpdGllcwxlbnRpdHlfcmVmW10Jd2F5cG9pbnRzEHJvdXRlX3dheXBvaW50W10IcmVjaGFyZ2UEYm9vbAl0eXBlc19yb3cADwJpZAZ1aW50NjQTZW50aXR5X3N1bW1hcnlfdHlwZQ5lbnRpdHlfc3VtbWFyeRBnYW1lX2NvbmZpZ190eXBlC2dhbWVfY29uZmlnFnN0cmF0dW1fcmVtYWluaW5nX3R5cGURc3RyYXR1bV9yZW1haW5pbmcVbmZ0X2l0ZW1fcGF5bG9hZF90eXBlEG5mdF9pdGVtX3BheWxvYWQSZGVjb21wX3Jlc3VsdF90eXBlDWRlY29tcF9yZXN1bHQSZGVtYW5kX3Jlc3VsdF90eXBlDWRlbWFuZF9yZXN1bHQUaW5mdmFsdWVfcmVzdWx0X3R5cGUPaW5mdmFsdWVfcmVzdWx0FWluZmx1ZW5jZV90b3RhbHNfdHlwZRBpbmZsdWVuY2VfdG90YWxzEXBvb2xzX3Jlc3VsdF90eXBlDHBvb2xzX3Jlc3VsdBVwb29sX3BhaXJfcmVzdWx0X3R5cGUQcG9vbF9wYWlyX3Jlc3VsdBNtaW50Y2ZnX3Jlc3VsdF90eXBlDm1pbnRjZmdfcmVzdWx0E2NoYXJ0ZXJfcmVzdWx0X3R5cGUOY2hhcnRlcl9yZXN1bHQQdm90ZV9yZXN1bHRfdHlwZQt2b3RlX3Jlc3VsdA9kZXBvdF92aWV3X3R5cGUKZGVwb3Rfdmlldwh1bmRlcGxveQACB2hvc3RfaWQGdWludDY0CXRhcmdldF9pZAZ1aW50NjQGdW5sb2FkAAMCaWQGdWludDY0BXRvX2lkBnVpbnQ2NAVpdGVtcwxjYXJnb19pdGVtW10KdXBnam9iX3JvdwAJAmlkBnVpbnQ2NARkb2NrBnVpbnQ2NAZ0YXJnZXQGdWludDY0BW93bmVyBG5hbWUGY29vcmRzC2Nvb3JkaW5hdGVzCXN0YXJ0c19hdAp0aW1lX3BvaW50DGNvbXBsZXRlc19hdAp0aW1lX3BvaW50DnRhcmdldF9pdGVtX2lkBnVpbnQxNgVjYXJnbwxjYXJnb19pdGVtW10OdXBnam9ic19yZXN1bHQAAQRqb2JzDHVwZ2pvYl9yb3dbXQd1cGdyYWRlAAUKYnVpbGRlcl9pZAZ1aW50NjQJdGFyZ2V0X2lkBnVpbnQ2NA50YXJnZXRfaXRlbV9pZAZ1aW50MTYGaW5wdXRzDGNhcmdvX2l0ZW1bXQRzbG90BnVpbnQ4Pwp1cGdyYWRlam9iAAQJdGFyZ2V0X2lkBnVpbnQ2NAdkb2NrX2lkBnVpbnQ2NA50YXJnZXRfaXRlbV9pZAZ1aW50MTYGaW5wdXRzDGNhcmdvX2l0ZW1bXQt2b3RlX29wdGlvbgAEB25vZGVfaWQGdWludDMyBGNvc3QGdWludDY0BXRvdGFsBnVpbnQ2NAhlbGlnaWJsZQRib29sC3ZvdGVfcmVzdWx0AAcLbG9jYXRpb25faWQGdWludDY0BWVwb2NoBnVpbnQzMgxiYWxsb3RfZXBvY2gGdWludDMyBmNob3NlbgZ1aW50MzIMY2hvc2VuX2Vwb2NoBnVpbnQzMgllZmZlY3RpdmUGdWludDMyB29wdGlvbnMNdm90ZV9vcHRpb25bXQt2b3RlY2hhcnRlcgAEBnBsYXllcgRuYW1lAXgFaW50NjQBeQVpbnQ2NAdub2RlX2lkBnVpbnQzMgl2b3RlcmVhZHkAAQttYXhfYmFsbG90cwZ1aW50MzIEd2FycAADAmlkBnVpbnQ2NAF4BWludDY0AXkFaW50NjQKd2FycF9zdGF0cwABBXJhbmdlBnVpbnQzMgR3aXBlAAANd29ybWhvbGVfaW5mbwADBmNvb3Jkcwtjb29yZGluYXRlcwtpc193b3JtaG9sZQRib29sC2Rlc3RpbmF0aW9uC2Nvb3JkaW5hdGVzDndyYXBjb25maWdfcm93AAIHZmVlX3BjdAZ1aW50MTYLZmVlX2FjY291bnQEbmFtZQx3cmFwY29zdF9yb3cAAwlpdGVtX3R5cGUFdWludDgEdGllcgV1aW50OAZhbW91bnQGdWludDY0lQEAMo110jTNMQthYmFuZG9ucGxvdAAAwHE3T4pSMgphZGRjb250cmliAAAAUFEnKlMyCWFkZG1vZHVsZccDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGFkZG1vZHVsZQpzdW1tYXJ5OiAnSW5zdGFsbCBhIG1vZHVsZSBpbnRvIGEgc2xvdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW5zdGFsbCBhIG1vZHVsZSBmcm9tIGNhcmdvIGludG8gYSBtb2R1bGUgc2xvdCBvbiBhIGxpdmUgZW50aXR5IG9yIGEgcGFja2VkIGVudGl0eSBpbiBjYXJnby4gVGhlIGVudGl0eSBtdXN0IGJlIGlkbGUgd2l0aCBubyBzY2hlZHVsZWQgdGFza3MuIFRoZSBtb2R1bGUgdHlwZSBtdXN0IGJlIGNvbXBhdGlibGUgd2l0aCB0aGUgdGFyZ2V0IHNsb3QgdHlwZS4gVGhlIG1vZHVsZSBpdGVtIGlzIHJlbW92ZWQgZnJvbSBjYXJnbyB1cG9uIGluc3RhbGxhdGlvbi4AAABYdzVTMghhZGRuZXh1c6cDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGFkZG5leHVzCnN1bW1hcnk6ICdBZGQgYSBuZXh1cyBsb2NhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ3JlYXRlIGEgbmV3IG5leHVzIGVudGl0eSBhdCB0aGUgZ2l2ZW4gY29vcmRpbmF0ZXMuIE5leHVzZXMgYXJlIG93bmVkIGJ5IHRoZSBjb250cmFjdCBhbmQgc2VydmUgYXMgZml4ZWQgZ2F0aGVyaW5nIHBvaW50cyB3aGVyZSBwbGF5ZXJzIGNhbiB3cmFwLCB1bndyYXAsIGRlcGxveSwgYW5kIG90aGVyd2lzZSBpbnRlcmFjdCB3aXRoIE5GVC1iYWNrZWQgYXNzZXRzLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAABQEZlLUzIJYWRkb3JhY2xlAAAAAACANFU8BWJsZW5k/AItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogYmxlbmQKc3VtbWFyeTogJ0JsZW5kIGNhcmdvIHN0YWNrcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ29tYmluZSBtdWx0aXBsZSBjYXJnbyBzdGFja3Mgb2YgdGhlIHNhbWUgaXRlbSB0eXBlIGludG8gYSBzaW5nbGUgc3RhY2sgd2l0aCBuZXcgYmxlbmRlZCBzdGF0cy4gQWxsIGlucHV0IHN0YWNrcyBtdXN0IHNoYXJlIHRoZSBzYW1lIGl0ZW0gaWQuIFRoZSBvdXRwdXQgc3RhY2sgaGFzIHRoZSBjb21iaW5lZCBxdWFudGl0eSBvZiBhbGwgaW5wdXRzLgAAyDTWFJ0+CWJ1aWxkcGxvdAAAAAAARIWmQQZjYW5jZWzCAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjYW5jZWwKc3VtbWFyeTogJ0NhbmNlbCBzY2hlZHVsZWQgdGFza3MnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkNhbmNlbCB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiB0YXNrcyBmcm9tIHRoZSBlbmQgb2YgYW4gZW50aXR5J3Mgc2NoZWR1bGUuIFRhc2tzIHRoYXQgYXJlIGltbXV0YWJsZSBhbmQgaW4gcHJvZ3Jlc3MgY2Fubm90IGJlIGNhbmNlbGxlZC4AADj0RYWmQQljYW5jZWxqb2IAmsxlVUeFpkENY2FuY2VsdXBncmFkZQDgk1H3qnxNQwxjaGFydGVycmVhZHkAAAAAhz7pTEQIY2xhaW1qb2IAAADINFbpTEQJY2xhaW1wbG90AHBVviZj6UxEDGNsYWltc3RhcnRlcgCgkrmsaulMRAxjbGFpbXVwZ3JhZGUAAACoG99pVEQJY2xlYW5yc3Zw7AItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY2xlYW5yc3ZwCnN1bW1hcnk6ICdDbGVhbiB1cCBwYXN0IGVwb2NoIHJlc2VydmVzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpFcmFzZSByZXNlcnZlIHRhYmxlIHJvd3MgZnJvbSBhIHBhc3QgZXBvY2guIENhbm5vdCBjbGVhbiB0aGUgY3VycmVudCBvciBmdXR1cmUgZXBvY2hzLiBUaGUgbWF4X3Jvd3MgcGFyYW1ldGVyIGNhcHMgdGhlIG51bWJlciBvZiByb3dzIGVyYXNlZCBwZXIgY2FsbCB0byBsaW1pdCBDUFUgdXNhZ2UuAICKx+RrVEQKY2xlYXJ0YWJsZb4BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNsZWFydGFibGUKc3VtbWFyeTogJ0RFQlVHOiBjbGVhcnRhYmxlIGFjdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLZCXueiqjHVEDGNsdXN0ZXJjcmFmdAAAAAAAZCclRQZjb21taXTsAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjb21taXQKc3VtbWFyeTogJ1NldCBjb21taXQgdmFsdWUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClNldCB0aGUgaW5pdGlhbCBjb21taXQgdmFsdWUgZHVyaW5nIGdhbWUgaW5pdGlhbGl6YXRpb24uAABgNDK3JkUJY29uZmlnbG9n3QItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY29uZmlnbG9nCnN1bW1hcnk6ICdMb2cgZ2FtZSBjb25maWd1cmF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gdGhhdCBsb2dzIHRoZSBjdXJyZW50IGdhbWUgY29uZmlndXJhdGlvbi4gQ2FsbGVkIGlubGluZSBhZnRlciBpbml0aWFsaXphdGlvbiB0byBicm9hZGNhc3QgY29uZmlnIHZpYSBhY3Rpb24gdHJhY2VzLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAAAAAIC8zEUFY3JhZnTIAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjcmFmdApzdW1tYXJ5OiAnQ3JhZnQgaXRlbXMgZnJvbSBhIHJlY2lwZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVHJhbnNmb3JtIGNhcmdvIGl0ZW1zIGludG8gYSBuZXcgaXRlbSB1c2luZyBhIHJlY2lwZS4gVGhlIGVudGl0eSBtdXN0IGhhdmUgYSBjcmFmdGVyIG1vZHVsZSBpbnN0YWxsZWQuIENvbnN1bWVzIGVuZXJneSBhbmQgc2NoZWR1bGVzIGEgY3JhZnRpbmcgdGFzayB3aXRoIGR1cmF0aW9uIGJhc2VkIG9uIHRvdGFsIGlucHV0IG1hc3MgYW5kIGNyYWZ0ZXIgc3BlZWQuIElucHV0IHF1YW50aXRpZXMgbXVzdCBleGFjdGx5IG1hdGNoIHRoZSByZWNpcGUgcmVxdWlyZW1lbnRzLgAAAIe+vMxFCGNyYWZ0am9iAAAAyC6pi9hJCWRiZ2NyZWRpdAAAgMomTSPZSQpkYmdtYW5kYXRlAAAA8NnlqaJKCWRlbGVudGl0eQAAAAANu0ilSghkZW1vbGlzaPEDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGRlbW9saXNoCnN1bW1hcnk6ICdEZW1vbGlzaCBhIHN0YXRpb25hcnkgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpEZWNvbW1pc3Npb24gYW4gZW50aXR5LCBlcmFzaW5nIGl0IGZyb20gdGhlIGdhbWUuIFRoZSBlbnRpdHkgbXVzdCBiZSBpZGxlLCBoYXZlIGVtcHR5IGNhcmdvLCBhbmQgaGF2ZSBubyBpbnN0YWxsZWQgbW9kdWxlcyAocmVtb3ZlIGVhY2ggdmlhIHJtbW9kdWxlIGZpcnN0KS4gU2NoZWR1bGVzIGEgZGVtb2xpc2ggdGFzayB0aGF0IGVyYXNlcyB0aGUgZW50aXR5IG9uIHJlc29sdXRpb24uIE9ubHkgdmFsaWQgZm9yIGVudGl0aWVzIHRoYXQgY2Fubm90IG1vdmU7IHVzZSB1bmRlcGxveSBvciB3cmFwZW50aXR5IGZvciB0aGUgcmVzdC4AAAAAeBqrSgZkZXBsb3nsAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBkZXBsb3kKc3VtbWFyeTogJ0RlcGxveSBhIHBhY2tlZCBlbnRpdHknCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClVucGFjayBhIHBhY2tlZCBlbnRpdHkgaXRlbSAocGFja2VkIHNoaXAgb3IgcGFja2VkIGNvbnRhaW5lcikgZnJvbSBjYXJnbywgc2NoZWR1bGluZyBhIGRlcGxveSB0YXNrIHRoYXQgY3JlYXRlcyB0aGUgbmV3IGVudGl0eSBhdCB0aGUgZGVwbG95aW5nIGVudGl0eSdzIGxvY2F0aW9uIHVwb24gcmVzb2x1dGlvbi4AgLo040yrSgpkZXBvdHN0b3JlAAAAUNDkTKtKCWRlcG90dGFrZQAAgM8uT4WwSgpkZXNjZW50aXR5yQMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZGVzY2VudGl0eQpzdW1tYXJ5OiAnRGVzY3JpYmUgYSBwYWNrZWQgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyBhIGh1bWFuLXJlYWRhYmxlIGRlc2NyaXB0aW9uIHN0cmluZyBmb3IgYSBwYWNrZWQgZW50aXR5LCBkZXJpdmVkIGZyb20gdGhlIGVudGl0eSBpdGVtIGlkLCBodWxsIHN0YXRzLCBhbmQgdGhlIGxpc3Qgb2YgaW5zdGFsbGVkIG1vZHVsZSBpdGVtIGlkcyBhbmQgc3RhdHMuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgYW5kIE5GVCByZW5kZXJlcnMgdG8gZGlzcGxheSBwYWNrZWQgZW50aXRpZXMuAAAAAKh4zFQGZW5hYmxl3QEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZW5hYmxlCnN1bW1hcnk6ICdTZXQgZW5hYmxlZCBzdGF0ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRW5hYmxlIG9yIGRpc2FibGUgdGhpcyBnYW1lIG9mIFNoaXBsb2FkLoCxkZRdg7pbDGZpeGNhcmdvbWFzc5ADLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGZpeGNhcmdvbWFzcwpzdW1tYXJ5OiAnREVCVUc6IHJlY29tcHV0ZSBlbnRpdHkgY2FyZ28gbWFzcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmVjb21wdXRlIGFuZCByZXdyaXRlIGFuIGVudGl0eSdzIGNhcmdvIG1hc3MgZnJvbSBpdHMgY3VycmVudCBjYXJnby4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LiBBdmFpbGFibGUgZm9yIHJlcGFpcmluZyBkcmlmdCBiZXR3ZWVuIGNhY2hlZCBjYXJnbyBtYXNzIGFuZCB0aGUgdHJ1ZSBtYXNzIGRlcml2ZWQgZnJvbSBjYXJnbyByb3dzLgAATk6q7LpbCmZpeGl0ZW1pZHMAAKJRW12FLl0LZm9yY2VyZXZlYWy+BC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBmb3JjZXJldmVhbApzdW1tYXJ5OiAnREVCVUc6IGZvcmNlLWZpbmFsaXplIGFuIGVwb2NoIGZyb20gZXhpc3RpbmcgcmV2ZWFscycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRmluYWxpemUgYSBzdHVjayBlcG9jaCBieSBjb21wdXRpbmcgaXRzIHNlZWQgZnJvbSB0aGUgcmV2ZWFscyBhbHJlYWR5IHN1Ym1pdHRlZCwgd2l0aG91dCB3YWl0aW5nIGZvciB0aGUgY29uZmlndXJlZCB0aHJlc2hvbGQuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4gVGhlIHNlZWQgaXMgZGVyaXZlZCBzb2xlbHkgZnJvbSB0aGUgcHJlLWltYWdlLWxvY2tlZCByZXZlYWxzIGFscmVhZHkgb24gY2hhaW47IG5vIGFkbWluLXN1cHBsaWVkIGVudHJvcHkgaXMgaW50cm9kdWNlZC4gVXNlZCB0byB1bmJsb2NrIGVwb2NoIHByb2dyZXNzaW9uIHdoZW4gdGhlIHRocmVzaG9sZCBjYW5ub3Qgb3RoZXJ3aXNlIGJlIG1ldC4AAAAAgDQ1XQVmb3VuZAAAAAAAXNWyYQZnYXRoZXKXAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnYXRoZXIKc3VtbWFyeTogJ0dhdGhlciByZXNvdXJjZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkdhdGhlciByZXNvdXJjZXMgYXQgdGhlIHNoaXAncyBjdXJyZW50IGxvY2F0aW9uLiBPbmx5IHdvcmtzIGF0IGdhdGhlcmFibGUgbG9jYXRpb24gdHlwZXMuIFNjaGVkdWxlcyBhIGdhdGhlciB0YXNrIHRoYXQgY29uc3VtZXMgZW5lcmd5IGFuZCB5aWVsZHMgY2FyZ28gYmFzZWQgb24gdGhlIHNoaXAncyBnYXRoZXJlciBzdGF0cyBhbmQgdGhlIGxvY2F0aW9uJ3MgcmVzb3VyY2UgY29tcG9zaXRpb24uAMA0sV7VsmEKZ2F0aGVycGxhbgCQlYoLO6ymYgxnZW5lc2lzZmxlZXSpBC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZW5lc2lzZmxlZXQKc3VtbWFyeTogJ01pbnQgdGhlIG9uZS10aW1lIGdlbmVzaXMgZmxlZXQnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkVtcGxhY2UgdGhlIG9uZS10aW1lIGdlbmVzaXMgZmxlZXQ6IGEgY2FsbGVyLXN1cHBsaWVkIHNldCBvZiBlbnRpdGllcyAoc2hpcHMsIHN0cnVjdHVyZXMsIGFuZCBjb250YWluZXJzKSB3cml0dGVuIHRvIHRoZSB3b3JsZCBhcy1pcy4gVmFsaWQgb25seSBkdXJpbmcgdGhlIHByZS1nZW5lc2lzIHdpbmRvdywgYmVmb3JlIGVwb2NoIDEgaXMgZmluYWxpemVkLiBUaGUgc3VwcGxpZWQgZW50aXR5IGlkcyBhcmUgaG9ub3JlZCBhbmQgdGhlIGlkIHNlcXVlbmNlIGlzIGFkdmFuY2VkIHBhc3QgdGhlbTsgaWQgMCBpcyByZXNlcnZlZCBmb3IgdGhlIEdlbmVzaXMgTmV4dXMuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AwFX5moayYgpnZXRjaGFydGVyAKDUzfmahrJiDGdldGNoYXJ0dHJlZQAAwFUZ64iyYgpnZXRjbHVzdGVyAAAAYG5NirJiCWdldGNvbmZpZ8oCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGNvbmZpZwpzdW1tYXJ5OiAnR2V0IGdhbWUgY29uZmlndXJhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyB0aGUgZ2FtZSBjb25maWd1cmF0aW9uIGluY2x1ZGluZyBkZWZhdWx0IGVudGl0eSBzdGF0cyBmb3Igd2FyZWhvdXNlcyBhbmQgY29udGFpbmVycywgYW5kIHRoZSBmdWxsIGl0ZW0gZGVmaW5pdGlvbnMgdGFibGUuAACokiKVsmIJZ2V0ZGVjb21wAAAASNNIlbJiCWdldGRlbWFuZAAAQHaYVpWyYgpnZXRkZXBvc2l0AAAAAJlWlbJiCGdldGRlcG90AAAUmiZjl7JiC2dldGRpc3RhbmNlAABUPI65qLJiC2dldGVsaWdpYmxlyAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0ZWxpZ2libGUKc3VtbWFyeTogJ0dldCBlbGlnaWJsZSByZXNvdXJjZSBpdGVtIElEcyBhdCBhIGxvY2F0aW9uIGFuZCBzdHJhdHVtJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgbGlzdCBvZiByZXNvdXJjZSBpdGVtIElEcyBlbGlnaWJsZSB0byBiZSBnYXRoZXJlZCBhdCB0aGUgZ2l2ZW4gY29vcmRpbmF0ZXMgYW5kIHN0cmF0dW0gZGVwdGguIEl0ZW1zIGFyZSBnYXRlZCBieSBib3RoIHRoZSBsb2NhdGlvbidzIHJlc291cmNlIHByb2ZpbGUgYW5kIHRoZSBkZXB0aCB0aHJlc2hvbGQgZm9yIGVhY2ggdGllci4AAMAR5amyYglnZXRlbnRjbHOMAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRlbnRjbHMKc3VtbWFyeTogJ0dldCBlbnRpdHkgY2xhc3MgZW51bSB2YWx1ZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBlbnRpdHkgY2xhc3MgZW51bSB2YWx1ZXMgYW5kIHRoZWlyIHN0cmluZyBuYW1lcyAoT3JiaXRhbFZlc3NlbCwgUGxhbmV0YXJ5U3RydWN0dXJlKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZWNvZGUgZW50aXR5IGNsYXNzIGlkZW50aWZpZXJzLgCwctnlqbJiC2dldGVudGl0aWVzpAItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0ZW50aXRpZXMKc3VtbWFyeTogJ0dldCBhbGwgZW50aXRpZXMgZm9yIGEgcGxheWVyJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZXR1cm5zIGZ1bGwgZW50aXR5IGluZm8gZm9yIGFsbCBlbnRpdGllcyBvd25lZCBieSBhIHBsYXllci4gT3B0aW9uYWxseSBmaWx0ZXIgYnkgZW50aXR5IHR5cGUuAADw2eWpsmIJZ2V0ZW50aXR5ogItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0ZW50aXR5CnN1bW1hcnk6ICdHZXQgZW50aXR5IHN0YXRlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZXR1cm5zIHRoZSBjdXJyZW50IHN0YXRlIG9mIGFuIGVudGl0eSBpbmNsdWRpbmcgaWRlbnRpdHksIGNhcmdvLCBzY2hlZHVsZSBzdGF0ZSwgYW5kIHR5cGUtc3BlY2lmaWMgZmllbGRzLpCnuzVTurJiDGdldGZvb3RwcmludAAAvEEqremyYgtnZXRpbmZkZWNheQCg0FQ6rumyYgxnZXRpbmZsdWVuY2UAAJSOZq/psmILZ2V0aW5mdmFsdWUAAEw2SarssmILZ2V0aXRlbWRhdGGoAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRpdGVtZGF0YQpzdW1tYXJ5OiAnR2V0IGZ1bGwgaXRlbSBjYXRhbG9nJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgY29tcGxldGUgaXRlbSBjYXRhbG9nIGFzIHRoZSBjb250cmFjdCBzZWVzIGl0LCBpbmNsdWRpbmcgdHlwZSwgc3VidHlwZSwgdGllciwgbWFzcywgYW5kIG90aGVyIHN0YXRpYyBtZXRhZGF0YS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyBhbmQgY2xpZW50cyB0byBtaXJyb3IgdGhlIGNvbnRyYWN0J3MgaXRlbSBkZWZpbml0aW9ucy4AAE5OquyyYgpnZXRpdGVtaWRzhgMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0aXRlbWlkcwpzdW1tYXJ5OiAnR2V0IGl0ZW0gaWQgdG8gbmFtZSBtYXBwaW5ncycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgbWFwcGluZyBvZiBpdGVtIGlkIGNvbnN0YW50cyB0byB0aGVpciBjYW5vbmljYWwgc3RyaW5nIG5hbWVzLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIHJlc29sdmUgbnVtZXJpYyBpdGVtIGlkcyB0byBodW1hbi1yZWFkYWJsZSBpZGVudGlmaWVycy4AAABYquyyYghnZXRpdGVtc5oCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGl0ZW1zCnN1bW1hcnk6ICdHZXQgYWxsIGF2YWlsYWJsZSBpdGVtcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyBhIGxpc3Qgb2YgYWxsIGl0ZW1zIGluIHRoZSBnYW1lIGluY2x1ZGluZyB0aGVpciBpZCwgYmFzZSBwcmljZSwgYW5kIG1hc3MuAFT1WarssmILZ2V0aXRlbXR5cGUAgFX1WarssmIMZ2V0aXRlbXR5cGVziAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0aXRlbXR5cGVzCnN1bW1hcnk6ICdHZXQgaXRlbSB0eXBlIGVudW0gdmFsdWVzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgZnVsbCBzZXQgb2YgaXRlbSB0eXBlIGVudW0gdmFsdWVzIGFuZCB0aGVpciBzdHJpbmcgbmFtZXMgKHJlc291cmNlLCBjb21wb25lbnQsIG1vZHVsZSwgZW50aXR5KS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZWNvZGUgaXRlbSB0eXBlIGlkZW50aWZpZXJzLgAAAAAf+rJiB2dldGpvYnMAAExWMk0Hs2ILZ2V0a2luZG1ldGH4Ay0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRraW5kbWV0YQpzdW1tYXJ5OiAnR2V0IGVudGl0eSBraW5kIG1ldGFkYXRhJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgZW50aXR5IGtpbmQgcmVnaXN0cnkgYW5kIHRlbXBsYXRlIHJlZ2lzdHJ5LCBpbmNsdWRpbmcgZWFjaCBraW5kJ3MgY2xhc3NpZmljYXRpb24sIGNhcGFiaWxpdHkgZmxhZ3MsIFotY29vcmRpbmF0ZSwgYW5kIGRlZmF1bHQgbGFiZWwsIHBsdXMgdGhlIG1hcHBpbmcgb2YgZW50aXR5IGl0ZW0gaWRzIHRvIGtpbmRzIHdpdGggZGlzcGxheSBsYWJlbHMuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gaW50ZXJwcmV0IGVudGl0eSBraW5kcyBhbmQgY2FwYWJpbGl0aWVzLgAmddkgGrNiC2dldGxvY2F0aW9u4gItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0bG9jYXRpb24Kc3VtbWFyeTogJ0dldCBsb2NhdGlvbiBpbmZvcm1hdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyBpbmZvcm1hdGlvbiBhYm91dCBhIGxvY2F0aW9uIGluY2x1ZGluZyB3aGV0aGVyIGEgc3lzdGVtIGV4aXN0cywgYW5kIGZvciBlYWNoIGl0ZW06IHByaWNlLCBzdXBwbHksIHJhcml0eSBtdWx0aXBsaWVyLCBhbmQgbG9jYXRpb24gbXVsdGlwbGllci4AgMkmIRqzYgpnZXRsb2NkYXRh/gItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0bG9jZGF0YQpzdW1tYXJ5OiAnR2V0IGRlcml2ZWQgbG9jYXRpb24gZGF0YScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyBkZXJpdmVkIGxvY2F0aW9uIGRhdGEgaW5jbHVkaW5nIHN0YXRpYyBwcm9wZXJ0aWVzICh0eXBlLCBkaWZmaWN1bHR5LCBzZWVkcykgZnJvbSB0aGUgZ2FtZSBzZWVkIGFuZCBlcG9jaC1zcGVjaWZpYyBwcm9wZXJ0aWVzIChhY3RpdmUsIHNlZWRzKSBmcm9tIHRoZSBjdXJyZW50IGVwb2NoIHNlZWQuAABbKE8ns2IKZ2V0bWludGNmZwAAsKo+JyqzYgtnZXRtb2R0eXBlc9YDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldG1vZHR5cGVzCnN1bW1hcnk6ICdHZXQgbW9kdWxlIHR5cGUgZW51bSB2YWx1ZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBtb2R1bGUgdHlwZSBlbnVtIHZhbHVlcyBhbmQgdGhlaXIgc3RyaW5nIG5hbWVzIChhbnksIGVuZ2luZSwgZ2VuZXJhdG9yLCBnYXRoZXJlciwgbG9hZGVyLCB3YXJwLCBjcmFmdGVyLCBsYXVuY2hlciwgc3RvcmFnZSwgaGF1bGVyKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZWNvZGUgbW9kdWxlIHN1YnR5cGUgaWRlbnRpZmllcnMgYW5kIHNsb3QgY29tcGF0aWJpbGl0eS4AAFZRJyqzYgpnZXRtb2R1bGVzgAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0bW9kdWxlcwpzdW1tYXJ5OiAnR2V0IGFsbCBtb2R1bGUgaXRlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBzdWJzZXQgb2YgaXRlbXMgY2xhc3NpZmllZCBhcyBtb2R1bGVzLCBpbmNsdWRpbmcgZWFjaCBtb2R1bGUncyBpZCwgbWFzcywgc3VidHlwZSwgYW5kIHRpZXIuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZW51bWVyYXRlIGluc3RhbGxhYmxlIGVxdWlwbWVudC4AAPDnGjWzYglnZXRuZWFyYnnKAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRuZWFyYnkKc3VtbWFyeTogJ0dldCBuZWFyYnkgcmVhY2hhYmxlIHN5c3RlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgbmVhcmJ5IHN5c3RlbXMgcmVhY2hhYmxlIGJ5IGFuIGVudGl0eSBmcm9tIGl0cyBwcm9qZWN0ZWQgbG9jYXRpb24uIFJldHVybnMgY3VycmVudCBzdGF0ZSAod2l0aCBjb21wbGV0ZWQgdGFza3MgcmVzb2x2ZWQpLCBwcm9qZWN0ZWQgc3RhdGUgKGFmdGVyIGFsbCBzY2hlZHVsZWQgdGFza3MpLCBhbmQgYSBsaXN0IG9mIHJlYWNoYWJsZSBzeXN0ZW1zIHdpdGggZGlzdGFuY2UsIGVuZXJneSBjb3N0LCBhbmQgZmxpZ2h0IHRpbWUuAIDC5uQ1s2IKZ2V0bmZ0YmFzZQAAAF3T5TWzYgpnZXRuZnRpbmZv8AMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0bmZ0aW5mbwpzdW1tYXJ5OiAnR2V0IE5GVCBzY2hlbWEgYW5kIHRlbXBsYXRlIGNvbmZpZ3VyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBBdG9taWNBc3NldHMgc2NoZW1hcyBhbmQgdGVtcGxhdGVzIHRoZSBnYW1lIGNvbnRyYWN0IGV4cGVjdHMsIHBsdXMgdGhlIGN1cnJlbnQgYGl0ZW1faWQg4oaSICh0ZW1wbGF0ZV9pZCwgc2NoZW1hX25hbWUpYCBtYXBwaW5nIHN0b3JlZCBpbiB0aGUgYG5mdGNvbmZpZ2AgdGFibGUuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gc3luYyBhdG9taWNhc3NldHMgc3RhdGUgd2l0aCB0aGUgY29udHJhY3QuAAC4yptYs2IJZ2V0cGxheWVy/QItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0cGxheWVyCnN1bW1hcnk6ICdHZXQgcGxheWVyIGluZm9ybWF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGluZm9ybWF0aW9uIGFib3V0IGEgcGxheWVyIGluY2x1ZGluZyBiYWxhbmNlLCBkZWJ0LCBuZXR3b3J0aCwgZW50aXR5IGNvdW50cywgYW5kIHByaWNpbmcgZm9yIG5leHQgcHVyY2hhc2VzLiBSZXR1cm5zIGlzX3BsYXllcj1mYWxzZSBpZiB0aGUgYWNjb3VudCBoYXMgbm90IGpvaW5lZCB0aGUgZ2FtZS4AAAAgUlqzYgdnZXRwb29sAAAAADhSWrNiCGdldHBvb2xzAKCyyfjRW7NiDGdldHByb2pzdGF0ZcsDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHByb2pzdGF0ZQpzdW1tYXJ5OiAnR2V0IHByb2plY3RlZCBlbnRpdHkgc3RhdGUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBwcm9qZWN0ZWQgc3RhdGUgb2YgYW4gZW50aXR5IGFmdGVyIGFwcGx5aW5nIHRoZSBuZXh0IHRhc2tfY291bnQgc2NoZWR1bGVkIHRhc2tzIChvciBhbGwgdGFza3MgaWYgdGFza19jb3VudCBpcyBvbWl0dGVkKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBwcmV2aWV3IHRoZSByZXN1bHQgb2YgYW4gZW50aXR5J3Mgc2NoZWR1bGUgd2l0aG91dCByZXNvbHZpbmcgb24tY2hhaW4uAABQ1SF1s2IJZ2V0cmVjaXBlpgMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0cmVjaXBlCnN1bW1hcnk6ICdHZXQgYSBzaW5nbGUgY3JhZnRpbmcgcmVjaXBlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgcmVjaXBlIHdob3NlIG91dHB1dCBtYXRjaGVzIHRoZSBnaXZlbiBpdGVtIGlkLCBpbmNsdWRpbmcgaXRzIGlucHV0cywgYmxlbmQgd2VpZ2h0cywgc3RhdCBzbG90cywgYW5kIHJlc29sdmVkIGl0ZW0gbWFzcyBpbmZvLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGRpc3BsYXkgY3JhZnRpbmcgcmVxdWlyZW1lbnRzLgAAVtUhdbNiCmdldHJlY2lwZXOsAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZWNpcGVzCnN1bW1hcnk6ICdMaXN0IGNyYWZ0aW5nIHJlY2lwZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIGEgcGFnaW5hdGVkIGxpc3Qgb2YgY3JhZnRpbmcgcmVjaXBlcyBzdGFydGluZyBhdCB0aGUgcHJvdmlkZWQgbG93ZXIgYm91bmQgb3V0cHV0IGl0ZW0gaWQsIHVwIHRvIHRoZSBzcGVjaWZpZWQgbGltaXQuIEVhY2ggZW50cnkgaW5jbHVkZXMgaW5wdXRzLCBibGVuZCB3ZWlnaHRzLCBzdGF0IHNsb3RzLCBhbmQgcmVzb2x2ZWQgaXRlbSBtYXNzIGluZm8uAADOBmF1s2IKZ2V0cmVzY2F0c54DLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlc2NhdHMKc3VtbWFyeTogJ0dldCByZXNvdXJjZSBjYXRlZ29yeSBlbnVtIHZhbHVlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgc2V0IG9mIHJlc291cmNlIGNhdGVnb3J5IGVudW0gdmFsdWVzIGFuZCB0aGVpciBzdHJpbmcgbmFtZXMgKG9yZSwgZ2FzLCByZWdvbGl0aCwgYmlvbWFzcywgY3J5c3RhbCkuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGVjb2RlIHJlc291cmNlIHN1YnR5cGUgaWRlbnRpZmllcnMuALDaV2F1s2ILZ2V0cmVzZXJ2ZXP8Ay0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZXNlcnZlcwpzdW1tYXJ5OiAnR2V0IGN1cnJlbnQgcmVzZXJ2ZSBtb2RpZmljYXRpb25zIGF0IGEgbG9jYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgdGhlIGNoYWluJ3MgbW9kaWZpY2F0aW9ucyB0byBkZXJpdmVkIHJlc2VydmVzIGF0IHRoZSBnaXZlbiBjb29yZGluYXRlIGZvciB0aGUgY3VycmVudCBlcG9jaCBhcyBhIGxpc3Qgb2Yge3N0cmF0dW0sIHJlbWFpbmluZ30gcGFpcnMuIFN0cmF0YSBub3QgcHJlc2VudCBpbiB0aGUgcmVzcG9uc2UgdXNlIHRoZWlyIGRlcml2ZWQgaW5pdGlhbCByZXNlcnZlLiBDb21wb3NlIHdpdGggU0RLIGRlcml2YXRpb24gdG8gZ2V0IHRoZSBmdWxsIHBlci1sb2NhdGlvbiBzdHJhdGEgdmlldy6AFbqaYnWzYgxnZXRyZXNvdXJjZXOHAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZXNvdXJjZXMKc3VtbWFyeTogJ0dldCBhbGwgcmVzb3VyY2UgaXRlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBzdWJzZXQgb2YgaXRlbXMgY2xhc3NpZmllZCBhcyByZXNvdXJjZXMsIGluY2x1ZGluZyBlYWNoIHJlc291cmNlJ3MgaWQsIG1hc3MsIHN1YnR5cGUsIGFuZCB0aWVyLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGVudW1lcmF0ZSBnYXRoZXJhYmxlIG1hdGVyaWFscy4AgEJuX4WzYgpnZXRzZXJ2aWNlAAAAADjTiLNiCGdldHNsb3RzuwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0c2xvdHMKc3VtbWFyeTogJ0dldCBlbnRpdHkgc2xvdCBsYXlvdXRzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgbW9kdWxlIHNsb3QgbGF5b3V0IGZvciBldmVyeSBlbnRpdHkgaXRlbSB0eXBlLCBsaXN0aW5nIHRoZSBvcmRlcmVkIHNsb3QgdHlwZXMgYXZhaWxhYmxlIGZvciBtb2R1bGUgaW5zdGFsbGF0aW9uLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGRldGVybWluZSB3aGljaCBtb2R1bGUgdHlwZXMgYXJlIGNvbXBhdGlibGUgd2l0aCBhIGdpdmVuIGVudGl0eSBodWxsLgCA1NncjLNiCmdldHN0cmF0dW3SAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRzdHJhdHVtCnN1bW1hcnk6ICdHZXQgcmVzb3VyY2Ugc3RyYXR1bSBkYXRhJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIHJlc291cmNlIHN0cmF0dW0gZGF0YSBmb3IgYSBzcGVjaWZpYyBkZXB0aCBsYXllciBhdCBhIGNvb3JkaW5hdGUsIGluY2x1ZGluZyB0aGUgc3RyYXR1bSBzZWVkIGluZm8gYW5kIGRlcml2ZWQgcmVzb3VyY2Ugc3RhdHMugJW7RkqNs2IMZ2V0c3VtbWFyaWVz6AItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0c3VtbWFyaWVzCnN1bW1hcnk6ICdHZXQgZW50aXR5IHN1bW1hcmllcyBmb3IgYSBwbGF5ZXInCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJldHVybnMgbGlnaHR3ZWlnaHQgc3VtbWFyaWVzIG9mIGFsbCBlbnRpdGllcyBvd25lZCBieSBhIHBsYXllciBpbmNsdWRpbmcgdHlwZSwgaWQsIG93bmVyLCBuYW1lLCBsb2NhdGlvbiwgYW5kIGlkbGUgc3RhdHVzLiBPcHRpb25hbGx5IGZpbHRlciBieSBlbnRpdHkgdHlwZS4AAD70saqzYgpnZXR1cGdqb2JzAAAAAFhlurNiCGdldHZvdGVzAABUpE1eyrNiC2dldHdvcm1ob2xlAJAdnubmqullDGdyb3VwdHJhbnNpdAAAotrm5qrpZQtncm91cHRyYXZlbJoELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdyb3VwdHJhdmVsCnN1bW1hcnk6ICdNb3ZlIG11bHRpcGxlIGVudGl0aWVzIHRvZ2V0aGVyJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbml0aWF0ZSBncm91cCB0cmF2ZWwgZm9yIG11bHRpcGxlIGVudGl0aWVzIHRvIGEgZGVzdGluYXRpb24uIEFsbCBlbnRpdGllcyBtdXN0IGJlIGF0IHRoZSBzYW1lIGxvY2F0aW9uIGFuZCBvd25lZCBieSB0aGUgY2FsbGVyLiBBdCBsZWFzdCBvbmUgZW50aXR5IHdpdGggZW5naW5lcyBpcyByZXF1aXJlZCB0byBwcm92aWRlIHRocnVzdC4gRmxpZ2h0IGR1cmF0aW9uIGlzIGNhbGN1bGF0ZWQgZnJvbSBjb21iaW5lZCB0aHJ1c3QgYW5kIHRvdGFsIG1hc3Mgb2YgYWxsIGVudGl0aWVzLiBDcmVhdGVzIGFuIGVudGl0eWdyb3VwIGZvciBhdG9taWMgcmVzb2x1dGlvbiBhbmQgY2FuY2VsbGF0aW9uLgAAAAAA0LBpBGhhc2j4AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBoYXNoCnN1bW1hcnk6ICdDYWxjdWxhdGUgc2hhMjU2IGhhc2gnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkNhbGN1bGF0ZXMgdGhlIHNoYTI1NiBoYXNoIG9mIGEgc3RyaW5nIGJhc2VkIHVzaW5nIHRoZSBnYW1lIHNlZWQuAAAAQITSsGkHaGFzaDUxMvsBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGhhc2g1MTIKc3VtbWFyeTogJ0NhbGN1bGF0ZSBzaGE1MTIgaGFzaCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ2FsY3VsYXRlcyB0aGUgc2hhNTEyIGhhc2ggb2YgYSBzdHJpbmcgYmFzZWQgdXNpbmcgdGhlIGdhbWUgc2VlZC4AKLsG5UurdAtpbXBvcnRjYXJnbwAAQIwK5UurdAppbXBvcnRjZWxsAOCzy1PlS6t0DGltcG9ydGVudGl0eQAAGqJV5UurdAtpbXBvcnRlcG9jaAAAqqaX5UurdAtpbXBvcnRncm91cADAFspr5kurdAxpbXBvcnRuZnRjZmcAcJU3seZLq3QMaW1wb3J0cGxheWVyALqvwurmS6t0DWltcG9ydHJlc2VydmUAAFQ2GedLq3QLaW1wb3J0c3RhdGUAAAAAAAAwHX0Eam9pbsQBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGpvaW4Kc3VtbWFyeTogJ0pvaW4gYSBnYW1lJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpKb2luIGEgZ2FtZSBvZiBTaGlwbG9hZAAAAAA0NLWJBmxhdW5jaAAAAAAAAJAMjQRsb2FkAAAA8Mmom6eTCW1pbnRyZWFkeQAAAAAquqw2lQhtb3ZldGlsZQAAgPoumquzmQpuYXR1cmFsaXplAAAAiFcz6fKaCW5mdGltZ3VybLIDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IG5mdGltZ3VybApzdW1tYXJ5OiAnR2V0IE5GVCBpbWFnZSBVUkwgZm9yIGEgY2FyZ28gaXRlbScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGltYWdlIFVSTCB0aGUgY29udHJhY3QgZW1pdHMgZm9yIGEgZ2l2ZW4gY2FyZ28gaXRlbSwgb3B0aW9uYWxseSBzY29wZWQgdG8gYSBsb2NhdGlvbi4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyBhbmQgTkZUIHJlbmRlcmVycyB0byBmZXRjaCB0aGUgY2Fub25pY2FsIGFydHdvcmsgZm9yIGFuIGl0ZW0gb3IgcGFja2VkIGVudGl0eS4AAAAA+OUynQZub3RpZnmKAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBub3RpZnkKc3VtbWFyeTogJ1Rhc2sgbGlmZWN5Y2xlIG5vdGlmaWNhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW50ZXJuYWwgYWN0aW9uIHRoYXQgbm90aWZpZXMgZW50aXR5IG93bmVycyBvZiB0YXNrIGxpZmVjeWNsZSBldmVudHMgKHJlc29sdmVkLCBjYW5jZWxsZWQpLiBDYWxsZWQgaW5saW5lIHdoZW4gdGFza3MgY2hhbmdlIHN0YXRlLiBVc2VzIHJlcXVpcmVfcmVjaXBpZW50IHRvIGVuYWJsZSBvZmYtY2hhaW4gbW9uaXRvcmluZyB2aWEgYWN0aW9uIHRyYWNlcy4AAGXXIIVMrApwbGFjZWNhcmdvyQQtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcGxhY2VjYXJnbwpzdW1tYXJ5OiAnUmVzdG9yZSBORlQgY2FyZ28gb250byBhIGhvc3QgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gY2FsbGVkIGlubGluZSBieSB0aGUgcGxhdGZvcm0gY29udHJhY3Qgb25seS4gUmVzdG9yZXMgdGhlIGNhcmdvIHJlY29yZGVkIGluIGFuIHVud3JhcHBlZCBORlQgb250byBhIGhvc3QgZW50aXR5LiBWYWxpZGF0ZXMgaG9zdCBvd25lcnNoaXAsIGxvYWRlcnMsIGFuZCByZW1haW5pbmcgY2FwYWNpdHksIGRlc2VyaWFsaXplcyB0aGUgTkZUJ3MgaXRlbSBkYXRhLCBhbmQgYXBwZW5kcyBhbiB1bndyYXAgdGFzayB0byBkZWxpdmVyIHRoZSBjYXJnbyB0byB0aGUgaG9zdC4gVGhlIHBsYXRmb3JtIGNvbnRyYWN0IGNyZWRpdHMgdGhlIGRlcG9zaXQgcmVmdW5kIGFuZCBidXJucyB0aGUgYXNzZXQuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AfHZ5KoVMrAtwbGFjZWVudGl0ecAELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHBsYWNlZW50aXR5CnN1bW1hcnk6ICdNYXRlcmlhbGl6ZSBhIHBhY2tlZC1lbnRpdHkgTkZUIGFzIGEgbGl2ZSBlbnRpdHknCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiBjYWxsZWQgaW5saW5lIGJ5IHRoZSBwbGF0Zm9ybSBjb250cmFjdCBvbmx5LiBFbXBsYWNlcyBhIGxpdmUgb3JiaXRhbCB2ZXNzZWwgKHNoaXAgb3IgY29udGFpbmVyKSBmcm9tIGl0cyBwYWNrZWQtZW50aXR5IE5GVCBkYXRhIGF0IHRoZSByZWNvcmRlZCB3cmFwIG9yaWdpbiwgdGhlbiBxdWV1ZXMgdHJhdmVsIGFuZCByZWNoYXJnZSB0YXNrcyB0byBkZWxpdmVyIGl0IHRvIHRoZSB0YXJnZXQgbmV4dXMgYXQgZnVsbCBlbmVyZ3kuIFRoZSBwbGF0Zm9ybSBjb250cmFjdCBjcmVkaXRzIHRoZSBkZXBvc2l0IHJlZnVuZCBhbmQgYnVybnMgdGhlIGFzc2V0LiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAAAAil3TkLoIcmVjaGFyZ2XNAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiByZWNoYXJnZQpzdW1tYXJ5OiAnUmVjaGFyZ2Ugc2hpcCBlbmVyZ3knCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClNjaGVkdWxlIGEgcmVjaGFyZ2UgdGFzayBmb3IgYW4gZW50aXR5IHRvIHJlc3RvcmUgZW5lcmd5IHRvIGZ1bGwgY2FwYWNpdHkuIFRoZSByZWNoYXJnZSBkdXJhdGlvbiBkZXBlbmRzIG9uIGN1cnJlbnQgZW5lcmd5IGxldmVsIGFuZCByZWNoYXJnZSByYXRlLuCzy1M1fJe6DHJlZnJzaGVudGl0ebgDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHJlZnJzaGVudGl0eQpzdW1tYXJ5OiAnUmVmcmVzaCBkZXJpdmVkIGVudGl0eSBzdGF0ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmVjb21wdXRlIGRlcml2ZWQgZmllbGRzIG9uIGFuIGVudGl0eSBmcm9tIGl0cyBjdXJyZW50IGNhcmdvIGFuZCBtb2R1bGVzLCByZWZyZXNoaW5nIGNhcGFiaWxpdHkgc3RhdHMgYW5kIGNhcmdvIG1hc3MuIFRoZSBlbnRpdHkgbXVzdCBiZSBpZGxlIHdpdGggbm8gc2NoZWR1bGVkIHRhc2tzLiBVc2VkIHRvIHJlY29uY2lsZSBkZXJpdmVkIHN0YXRlIGFmdGVyIGRhdGEgbWlncmF0aW9ucyBvciBjb250cmFjdCB1cGdyYWRlcy6gIjKXqk2lugxyZW1vdmVvcmFjbGUAAAAAAChpproGcmVuYW1lAAAAAEDtSLG6B3Jlc29sdmXQAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiByZXNvbHZlCnN1bW1hcnk6ICdDb21wbGV0ZSBzY2hlZHVsZWQgdGFza3MnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlc29sdmUgY29tcGxldGVkIHRhc2tzIGluIGFuIGVudGl0eSdzIHNjaGVkdWxlLCBhcHBseWluZyB0aGVpciBlZmZlY3RzIChyZWNoYXJnZSBlbmVyZ3ksIHVwZGF0ZSBsb2NhdGlvbiwgbG9hZC91bmxvYWQgY2FyZ28pLiBJZiBjb3VudCBpcyBzcGVjaWZpZWQsIHJlc29sdmUgZXhhY3RseSB0aGF0IG1hbnkgdGFza3M7IG90aGVyd2lzZSByZXNvbHZlIGFsbCBjb21wbGV0ZWQgdGFza3MuIEZhaWxzIGlmIGNvdW50IGV4Y2VlZHMgdGhlIG51bWJlciBvZiBjb21wbGV0ZWQgdGFza3MuAECMRu1IsboKcmVzb2x2ZWFsbADg4zVK7UixugxyZXNvbHZlZWFybHkAAAAAAESjtroGcmV2ZWFsAAAAACrqRKW8CHJtbW9kdWxlvAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcm1tb2R1bGUKc3VtbWFyeTogJ1JlbW92ZSBhIG1vZHVsZSBmcm9tIGEgc2xvdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmVtb3ZlIGFuIGluc3RhbGxlZCBtb2R1bGUgZnJvbSBhIHNsb3Qgb24gYSBsaXZlIGVudGl0eSBvciBhIHBhY2tlZCBlbnRpdHkgaW4gY2FyZ28uIFRoZSBlbnRpdHkgbXVzdCBiZSBpZGxlIHdpdGggbm8gc2NoZWR1bGVkIHRhc2tzLiBUaGUgbW9kdWxlIGlzIHJldHVybmVkIHRvIGNhcmdvLiBGYWlscyBpZiB0aGUgZW50aXR5IGRvZXMgbm90IGhhdmUgZW5vdWdoIGNhcmdvIGNhcGFjaXR5IHRvIGhvbGQgdGhlIHJldHVybmVkIG1vZHVsZS4AAABsobymvAhybW5mdGNmZ6EDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHJtbmZ0Y2ZnCnN1bW1hcnk6ICdSZW1vdmUgTkZUIHRlbXBsYXRlIG1hcHBpbmcgZm9yIGFuIGl0ZW0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlbW92ZSB0aGUgQXRvbWljQXNzZXRzIHRlbXBsYXRlIG1hcHBpbmcgZm9yIHRoZSBzcGVjaWZpZWQgaXRlbSBpZCBmcm9tIHRoZSBgbmZ0Y29uZmlnYCB0YWJsZS4gQWZ0ZXIgcmVtb3ZhbCB0aGUgaXRlbSBjYW4gbm8gbG9uZ2VyIGJlIHdyYXBwZWQgb3IgdW53cmFwcGVkIHVudGlsIGEgbmV3IG1hcHBpbmcgaXMgc2V0LiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAAAAyG2HssIIc2V0Y2l2aWMAAMBVGeuIssIKc2V0Y2x1c3RlcgAAAMDpUoqywglzZXRjb29yZHMAAMC8+qzpssIKc2V0aW5mYnVybgAAAAAhremywghzZXRpbmZkMQCQppEqremywgxzZXRpbmZkZW1hbmQAAECeTq7pssIKc2V0aW5mbWludACQG3OKr+mywgxzZXRpbmZ3ZWlnaHQAAABILnc1s8IJc2V0bmV4dGlkAAAAYAvlNbPCCXNldG5mdGNmZ8QDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHNldG5mdGNmZwpzdW1tYXJ5OiAnU2V0IE5GVCB0ZW1wbGF0ZSBtYXBwaW5nIGZvciBhbiBpdGVtJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpCaW5kIGFuIGl0ZW0gaWQgdG8gYW4gQXRvbWljQXNzZXRzIHRlbXBsYXRlIGlkIGFuZCBzY2hlbWEgbmFtZS4gVXNlZCB0byBjb25maWd1cmUgaG93IHRoZSBjb250cmFjdCBtaW50cyBhbmQgcmVjb2duaXplcyBORlRzIGZvciBhIGdpdmVuIGl0ZW0uIEluc2VydHMgYSBuZXcgbWFwcGluZyBpZiBvbmUgZG9lcyBub3QgZXhpc3QsIG9yIHVwZGF0ZXMgdGhlIGV4aXN0aW5nIG1hcHBpbmcuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AAMgKIoqzwglzZXRzb2NrZXQAkCJtWN2Ws8IMc2V0dGhyZXNob2xkAAAypqiay7PCC3NldHdyYXBjb3N0AACAUquay7PCCnNldHdyYXBmZWUAAAAAQMWcdcMHc2h1dHRsZQAAAKDsGsRpxglzdG93Y2FyZ2/VBS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzdG93Y2FyZ28Kc3VtbWFyeTogJ1Jlc2VydmUgYSBjYXJnbyBzdGFjayBmb3Igd3JhcHBpbmcgaW50byBhbiBORlQnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiBjYWxsZWQgaW5saW5lIGJ5IHRoZSBwbGF0Zm9ybSBjb250cmFjdCBvbmx5LiBSZXNlcnZlcyBhbmQgY29uc3VtZXMgYSBjYXJnbyBzdGFjayBvbiBhIGxpdmUgZW50aXR5IGZvciB3cmFwcGluZyBpbnRvIGFuIE5GVC4gVmFsaWRhdGVzIGVudGl0eSBvd25lcnNoaXAsIGxvYWRlcnMsIGFuZCBwcmVzZW5jZSBhdCB0aGUgbmV4dXMsIGFuZCBjb25maXJtcyB0aGUgdGFyZ2V0IGNhcmdvIHN0YWNrIGlzIGF2YWlsYWJsZSBhbmQgbm90IHJlc2VydmVkIGJ5IGEgcGVuZGluZyB0YXNrLiBDb21wdXRlcyB0aGUgd3JhcCBjb3N0IGFuZCBmZWUsIGRlYml0cyB0aGVtIGZyb20gdGhlIG93bmVyJ3MgcGxhdGZvcm0gZGVwb3NpdCBiYWxhbmNlLCBkZXJpdmVzIHRoZSBORlQncyBpbW11dGFibGUgZGF0YSwgYW5kIG1pbnRzIHRoZSBORlQgaW5saW5lIGFzIHRoZSBnYW1lIGNvbnRyYWN0IGJlZm9yZSBjb25zdW1pbmcgdGhlIGNhcmdvLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAIDPLk/FacYKc3Rvd2VudGl0eZkFLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHN0b3dlbnRpdHkKc3VtbWFyeTogJ1Jlc2VydmUgYW4gZW50aXR5IGZvciB3cmFwcGluZyBpbnRvIGFuIE5GVCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW50ZXJuYWwgYWN0aW9uIGNhbGxlZCBpbmxpbmUgYnkgdGhlIHBsYXRmb3JtIGNvbnRyYWN0IG9ubHkuIFJlc2VydmVzIGEgd2hvbGUgZW50aXR5IChzaGlwLCBjb250YWluZXIsIG9yIHBsYW5ldGFyeSBzdHJ1Y3R1cmUpIGZvciB3cmFwcGluZyBpbnRvIGFuIE5GVC4gVGhlIGVudGl0eSBtdXN0IGJlIGlkbGUgd2l0aCBlbXB0eSBjYXJnbyBhbmQgbm8gc2NoZWR1bGVkIHRhc2tzLiBDb21wdXRlcyB0aGUgd3JhcCBjb3N0IGFuZCBmZWUsIGRlYml0cyB0aGVtIGZyb20gdGhlIG93bmVyJ3MgcGxhdGZvcm0gZGVwb3NpdCBiYWxhbmNlLCBkZXJpdmVzIHRoZSBlbnRpdHkgTkZUJ3MgaW1tdXRhYmxlIGRhdGEsIG1pbnRzIHRoZSBORlQgaW5saW5lIGFzIHRoZSBnYW1lIGNvbnRyYWN0LCBhbmQgZXJhc2VzIHRoZSBlbnRpdHkgZnJvbSB0aGUgd29ybGQuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AgIo6UVkNxwpzd2FwbW9kdWxlAAAAACq6XA3HCHN3YXB0aWxlAAAAACA7PM3NB3RyYW5zaXQAAAAAAES1zc0GdHJhdmVs+wEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogdHJhdmVsCnN1bW1hcnk6ICdNb3ZlIGEgc2hpcCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW5pdGlhdGUgdHJhdmVsIG9mIGFuIGVudGl0eSBmcm9tIGl0cyBjdXJyZW50IGxvY2F0aW9uIHRvIGEgbmV3IGRlc3RpbmF0aW9uLgDANLFGtc3NCnRyYXZlbHBsYW4AAAAAnsaq0tQIdW5kZXBsb3nnBC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1bmRlcGxveQpzdW1tYXJ5OiAnUGFjayBhIGRlcGxveWVkIGVudGl0eSBpbnRvIGEgaG9zdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUGFjayBhbiBlbnRpdHkgaW50byBhIGhvc3QgZW50aXR5J3MgY2FyZ28gYXMgYSBwYWNrZWQtZW50aXR5IGl0ZW0uIEhvc3QgYW5kIHRhcmdldCBtdXN0IHNoYXJlIHRoZSBzYW1lIG93bmVyIGFuZCBjb29yZGluYXRlcywgdGhlIGhvc3QgbXVzdCBoYXZlIGxvYWRlcnMgYW5kIGVub3VnaCBjYXBhY2l0eSBmb3IgdGhlIHBhY2tlZCBtYXNzLCBhbmQgdGhlIHRhcmdldCBtdXN0IGJlIGlkbGUgd2l0aCBlbXB0eSBjYXJnby4gQ3JlYXRlcyBhbiBlbnRpdHlncm91cCBhbmQgc2NoZWR1bGVzIHVuZGVwbG95IHRhc2tzIG9uIGJvdGggZW50aXRpZXM7IG9uIHJlc29sdXRpb24gdGhlIHRhcmdldCBpcyBlcmFzZWQgYW5kIHRoZSBwYWNrZWQgZW50aXR5IGlzIGFkZGVkIHRvIHRoZSBob3N0J3MgY2FyZ28uIEludmVyc2Ugb2YgZGVwbG95LgAAAAAkQ+PUBnVubG9hZAAAAABAJXNZ1Qd1cGdyYWRlAADAoU8lc1nVCnVwZ3JhZGVqb2IAAK7K1zSkMt0Ldm90ZWNoYXJ0ZXIAAADwyairMt0Jdm90ZXJlYWR5AAAAAAAAUK/hBHdhcnCfAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB3YXJwCnN1bW1hcnk6ICdXYXJwIHRvIGEgZGVzdGluYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkluc3RhbnRseSB0ZWxlcG9ydCBhbiBlbnRpdHkgdG8gYSBkZXN0aW5hdGlvbiBzeXN0ZW0uIFJlcXVpcmVzIHdhcnAgY2FwYWJpbGl0eSwgZnVsbCBlbmVyZ3ksIGVtcHR5IGNhcmdvLCBhbmQgYW4gZW1wdHkgc2NoZWR1bGUuIFRoZSBkZXN0aW5hdGlvbiBtdXN0IGJlIGEgdmFsaWQgc3lzdGVtIHdpdGhpbiB3YXJwIHJhbmdlLiBSZXNvbHZlcyBpbW1lZGlhdGVseSBhcyBhIHplcm8tZHVyYXRpb24gdGFzay4AAAAAAKCq4wR3aXBlsgEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd2lwZQpzdW1tYXJ5OiAnREVCVUc6IHdpcGUgYWN0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tJgAAAAAAyq5BA2k2NAAACWNhcmdvX3JvdwAAAPiqfE1DA2k2NAAADGNoYXJ0ZXJzX3JvdwCYW5Mi5LZDA2k2NAAAD2NpdmljY29uZmlnX3JvdwAAAABg6UxEA2k2NAAACWNsYWltX3JvdwAAAOCqjHVEA2k2NAAAC2NsdXN0ZXJfcm93AAAAAGQnJUUDaTY0AAAKY29tbWl0X3JvdwAAAACATKtKA2k2NAAACWRlcG90X3JvdwAAyAiZTKtKA2k2NAAADWRlcG90YWNjdF9yb3cAAAAA+OzyVANpNjQAAAplbnRpdHlfcm93AKqml/ns8lQDaTY0AAAPZW50aXR5Z3JvdXBfcm93AACwCvvs8lQDaTY0AAAOZW50aXR5X3NlcV9yb3cAAAAAgIZoVQNpNjQAAAllcG9jaF9yb3cAAMg0RnPWdANpNjQAAA1pbmZiYWxsb3Rfcm93AAAAYF591nQDaTY0AAALaW5mYnVybl9yb3cAAEjTSJXWdANpNjQAAA1pbmZkZW1hbmRfcm93AAAAACAa13QDaTY0AAAKaW5mbG9jX3JvdwAAACBPJ9d0A2k2NAAAC2luZm1pbnRfcm93AAC4yptY13QDaTY0AAANaW5mcGxheWVyX3Jvd4BovMqbWNd0A2k2NAAAEGluZnBsYXllcmxvY19yb3cAAAAgUlrXdANpNjQAAAtpbmZwb29sX3JvdwCAzy4abdd0A2k2NAAADmluZnF1YWxpdHlfcm93AAAAPkaT13QDaTY0AAAMaW5mdGFsbHlfcm93AAAAQGW613QDaTY0AAALaW5mdm90ZV9yb3cAAMiNOcXXdANpNjQAAA1pbmZ3ZWlnaHRfcm93AAAAAACAD30DaTY0AAAHam9iX3JvdwAAAAAAm6eTA2k2NAAACW1pbnRxX3JvdwAAYG5NivKaA2k2NAAADW5mdGNvbmZpZ19yb3cAAGALqYjMpQNpNjQAABFvcmFjbGVfY29uZmlnX3JvdwAAAACriMylA2k2NAAACm9yYWNsZV9yb3cAAAAAXOVNrANpNjQAAApwbGF5ZXJfcm93AAAAQO2rsLoDaTY0AAALcmVzZXJ2ZV9yb3cAAAAARKO2ugNpNjQAAApyZXZlYWxfcm93AAAAQCG3r8IDaTY0AAALc2VydmljZV9yb3cAAAAAAJVNxgNpNjQAAAlzdGF0ZV9yb3cAAAAAAKyqzwNpNjQAAAl0eXBlc19yb3cAAAAAH/pY1QNpNjQAAAp1cGdqb2Jfcm93AABza1JUzeUDaTY0AAAOd3JhcGNvbmZpZ19yb3cAAAAZU1TN5QNpNjQAAAx3cmFwY29zdF9yb3cBEVNoaXBsb2FkIChTZXJ2ZXIpEVNoaXBsb2FkIChTZXJ2ZXIpAAAAWQAyjXXSNM0xDHRhc2tfcmVzdWx0cwDAcTdPilIyDHRhc2tfcmVzdWx0cwAAyDTWFJ0+DHRhc2tfcmVzdWx0cwAAAABEhaZBDmNhbmNlbF9yZXN1bHRzAADINFbpTEQMdGFza19yZXN1bHRzkJe56KqMdUQMdGFza19yZXN1bHRzAAAAAIC8zEUMdGFza19yZXN1bHRzAAAAh768zEULam9iX3JlY2VpcHQAAAANu0ilSgx0YXNrX3Jlc3VsdHMAAAAAeBqrSgx0YXNrX3Jlc3VsdHMAgLo040yrSgx0YXNrX3Jlc3VsdHMAAFDQ5EyrSgx0YXNrX3Jlc3VsdHMAgM8uT4WwSgZzdHJpbmcAAAAAXNWyYQx0YXNrX3Jlc3VsdHMAwDSxXtWyYQx0YXNrX3Jlc3VsdHMAwFX5moayYg5jaGFydGVyX3Jlc3VsdKDUzfmahrJiE2NoYXJ0ZXJfdHJlZV9yZXN1bHQAwFUZ64iyYgtjbHVzdGVyX3JvdwAAYG5NirJiC2dhbWVfY29uZmlnAACokiKVsmINZGVjb21wX3Jlc3VsdAAASNNIlbJiDWRlbWFuZF9yZXN1bHQAQHaYVpWyYg5leHRlbmRlZF9hc3NldAAAAJlWlbJiCmRlcG90X3ZpZXcAFJomY5eyYgZ1aW50NjQAVDyOuaiyYgh1aW50MTZbXQAAwBHlqbJiC2VudW1fcmVzdWx0ALBy2eWpsmINZW50aXR5X2luZm9bXQAA8NnlqbJiC2VudGl0eV9pbmZvkKe7NVO6smIQZm9vdHByaW50X3Jlc3VsdAC8QSqt6bJiBnVpbnQ2NKDQVDqu6bJiEGluZmx1ZW5jZV90b3RhbHMAlI5mr+myYg9pbmZ2YWx1ZV9yZXN1bHQATDZJquyyYg9pdGVtZGF0YV9yZXN1bHQAAE5OquyyYg9pdGVtX2lkc19yZXN1bHQAAABYquyyYgppdGVtc19pbmZvAFT1WarssmIFdWludDiAVfVZquyyYgtlbnVtX3Jlc3VsdAAAAAAf+rJiC2pvYnNfcmVzdWx0AExWMk0Hs2IQa2luZF9tZXRhX3Jlc3VsdAAmddkgGrNiDWxvY2F0aW9uX2luZm8AgMkmIRqzYhBsb2NhdGlvbl9kZXJpdmVkAABbKE8ns2IObWludGNmZ19yZXN1bHQAsKo+JyqzYgtlbnVtX3Jlc3VsdAAAVlEnKrNiDm1vZHVsZXNfcmVzdWx0AADw5xo1s2ILbmVhcmJ5X2luZm8AgMLm5DWzYghzdHJpbmdbXQAAXdPlNbNiDm5mdGluZm9fcmVzdWx0AAC4yptYs2ILcGxheWVyX2luZm8AAAAgUlqzYhBwb29sX3BhaXJfcmVzdWx0AAAAOFJas2IMcG9vbHNfcmVzdWx0oLLJ+NFbs2IPcHJvamVjdGVkX3N0YXRlAABQ1SF1s2IOcmVjaXBlc19yZXN1bHQAAFbVIXWzYg5yZWNpcGVzX3Jlc3VsdAAAzgZhdbNiC2VudW1fcmVzdWx0ALDaV2F1s2ITc3RyYXR1bV9yZW1haW5pbmdbXYAVuppidbNiEHJlc291cmNlc19yZXN1bHQAgEJuX4WzYgtzZXJ2aWNlX3JvdwAAADjTiLNiFWVudGl0eV9sYXlvdXRzX3Jlc3VsdACA1NncjLNiDHN0cmF0dW1fZGF0YYCVu0ZKjbNiEGVudGl0eV9zdW1tYXJ5W10AAD70saqzYg51cGdqb2JzX3Jlc3VsdAAAAFhlurNiC3ZvdGVfcmVzdWx0AFSkTV7Ks2INd29ybWhvbGVfaW5mb5AdnubmqullDHRhc2tfcmVzdWx0cwCi2ubmqullDHRhc2tfcmVzdWx0cwAAAAAA0LBpC2NoZWNrc3VtMjU2AAAAQITSsGkLY2hlY2tzdW01MTIAAAAANDS1iQx0YXNrX3Jlc3VsdHMAAAAAAJAMjQx0YXNrX3Jlc3VsdHMAAAAquqw2lQx0YXNrX3Jlc3VsdHMAAIhXM+nymgZzdHJpbmcAAGXXIIVMrAx0YXNrX3Jlc3VsdHMAfHZ5KoVMrAx0YXNrX3Jlc3VsdHMAAACKXdOQugx0YXNrX3Jlc3VsdHMAAABA7Uixug9yZXNvbHZlX3Jlc3VsdHMAQIxG7UixuhJyZXNvbHZlYWxsX3Jlc3VsdHPg4zVK7Uixug9yZXNvbHZlX3Jlc3VsdHMAAABAxZx1wwx0YXNrX3Jlc3VsdHMAAKDsGsRpxgx0YXNrX3Jlc3VsdHMAgM8uT8Vpxgx0YXNrX3Jlc3VsdHMAAAAqulwNxwx0YXNrX3Jlc3VsdHMAAAAgOzzNzQx0YXNrX3Jlc3VsdHMAAAAARLXNzQx0YXNrX3Jlc3VsdHMAwDSxRrXNzQx0YXNrX3Jlc3VsdHMAAACexqrS1Ax0YXNrX3Jlc3VsdHMAAAAAJEPj1Ax0YXNrX3Jlc3VsdHMAAABAJXNZ1Qx0YXNrX3Jlc3VsdHMAwKFPJXNZ1Qtqb2JfcmVjZWlwdAAAAAAAUK/hDHRhc2tfcmVzdWx0cw==');
821
+ const abiBlob$1 = Blob.from('DmVvc2lvOjphYmkvMS4yAhVCX3ZlY3Rvcl9lbnRpdHlfcmVmX0UMZW50aXR5X3JlZltdDWxvY2F0aW9uX3R5cGUFdWludDiwAgthYmFuZG9ucGxvdAABB3Bsb3RfaWQGdWludDY0CmFkZGNvbnRyaWIABQZwbGF5ZXIEbmFtZQllbnRpdHlfaWQGdWludDY0AXgFaW50NjQBeQVpbnQ2NAZidW5kbGUMY2FyZ29faXRlbVtdCWFkZG1vZHVsZQAECWVudGl0eV9pZAZ1aW50NjQMbW9kdWxlX2luZGV4BXVpbnQ4Cm1vZHVsZV9yZWYJY2FyZ29fcmVmCnRhcmdldF9yZWYKY2FyZ29fcmVmPwhhZGRuZXh1cwADCm5leHVzX25hbWUGc3RyaW5nAXgFaW50NjQBeQVpbnQ2NAlhZGRvcmFjbGUAAQlvcmFjbGVfaWQEbmFtZQ1iYWxsb3RfY3JlZGl0AAIHYWNjb3VudARuYW1lBmFtb3VudAZ1aW50NjQKYmFsbG90X3JvdwAHCWJhbGxvdF9pZAZ1aW50NjQEa2luZAV1aW50OAdzdWJqZWN0BnVpbnQ2NAVzZWF0cwZ1aW50MzINc2V0dGxlZF9lcG9jaAZ1aW50MzIFcXVldWUIdWludDMyW10GcGFya2VkD2JhbGxvdF9jcmVkaXRbXQ5iYWxsb3Rfc2VxX3JvdwADB25leHRfaWQGdWludDY0BmN1cnNvcgZ1aW50NjQJcGFnZV9yb3dzBnVpbnQzMgxiYWxsb3RfdGFsbHkAAgZvcHRpb24GdWludDMyBndlaWdodAZ1aW50NjQPYmFsbG90cGlja3Nfcm93AAIHYWNjb3VudARuYW1lBXBpY2tzCHVpbnQzMltdEGJhbGxvdHNldHRsZV9yb3cABgliYWxsb3RfaWQGdWludDY0BXJvdW5kBnVpbnQzMgZjdXJzb3IGdWludDY0DHRhcmdldF9lcG9jaAZ1aW50MzIHdGFsbGllcw5iYWxsb3RfdGFsbHlbXQZzZWF0ZWQIdWludDMyW10FYmxlbmQAAgJpZAZ1aW50NjQGaW5wdXRzDGNhcmdvX2l0ZW1bXQxidWlsZGVyX2xhbmUABApzbG90X2luZGV4BXVpbnQ4BXNwZWVkBnVpbnQxNgVkcmFpbgZ1aW50MzIKb3V0cHV0X3BjdAZ1aW50MTYNYnVpbGRpbmdzX3JvdwACCWVudGl0eV9pZAZ1aW50NjQIYnVpbGRpbmcFdWludDgIYnVpbGRqb2IABQl0YXJnZXRfaWQGdWludDY0B2RvY2tfaWQGdWludDY0BHNsb3QFdWludDgOdGFyZ2V0X2l0ZW1faWQGdWludDE2BmlucHV0cwxjYXJnb19pdGVtW10MYnVpbGRqb2Jfcm93AAoCaWQGdWludDY0CGJ1aWxkaW5nBnVpbnQ2NAZzb2NrZXQFdWludDgGdGFyZ2V0BnVpbnQ2NAVvd25lcgRuYW1lBmNvb3Jkcwtjb29yZGluYXRlcwlzdGFydHNfYXQKdGltZV9wb2ludAxjb21wbGV0ZXNfYXQKdGltZV9wb2ludA50YXJnZXRfaXRlbV9pZAZ1aW50MTYFY2FyZ28MY2FyZ29faXRlbVtdEGJ1aWxkam9ic19yZXN1bHQAAQRqb2JzDmJ1aWxkam9iX3Jvd1tdCWJ1aWxkcGxvdAACCmJ1aWxkZXJfaWQGdWludDY0B3Bsb3RfaWQGdWludDY0BmNhbmNlbAADAmlkBnVpbnQ2NAhsYW5lX2tleQV1aW50OAVjb3VudAZ1aW50NjQOY2FuY2VsX3Jlc3VsdHMABgllbnRpdHlfaWQGdWludDY0C2VudGl0eV90eXBlBG5hbWUPY2FuY2VsbGVkX2NvdW50BXVpbnQ4EHNjaGVkdWxlX3N0YXJ0ZWQLdGltZV9wb2ludD8LZW50aXR5Z3JvdXAHdWludDY0Pw1ncm91cF9tZW1iZXJzFkJfdmVjdG9yX2VudGl0eV9yZWZfRT8LY2FuY2VsYnVpbGQAAQZqb2JfaWQGdWludDY0C2NhbmNlbGNyYWZ0AAIGam9iX2lkBnVpbnQ2NAdzaGlwX2lkBnVpbnQ2NApjYXJnb19pdGVtAAUHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0B21vZHVsZXMObW9kdWxlX2VudHJ5W10IcXVhbnRpdHkGdWludDMyCWVudGl0eV9pZAd1aW50NjQ/CWNhcmdvX3JlZgAEB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCWVudGl0eV9pZAd1aW50NjQ/CWNhcmdvX3JvdwAHAmlkBnVpbnQ2NAllbnRpdHlfaWQGdWludDY0B2l0ZW1faWQGdWludDY0CHF1YW50aXR5BnVpbnQ2NAVzdGF0cwZ1aW50NjQHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQtzZXF1ZW5jZV9pZAd1aW50NjQ/CmNhcmdvX3ZpZXcABgdpdGVtX2lkBnVpbnQxNgVzdGF0cwZ1aW50NjQHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQhxdWFudGl0eQZ1aW50MzICaWQGdWludDY0CWVudGl0eV9pZAd1aW50NjQ/CmNhc3RiYWxsb3QAAwZwbGF5ZXIEbmFtZQliYWxsb3RfaWQGdWludDY0BXBpY2tzCHVpbnQzMltdEGNoYXJ0ZXJfbm9kZV9kZWYABgdub2RlX2lkBnVpbnQzMgRjb3N0BnVpbnQ2NAdwcmVyZXFzCHVpbnQzMltdBmdyYW50cw1jaXZpY19ncmFudFtdD2V4Y2x1c2lvbl9ncm91cAZ1aW50MTYKcmVwZWF0X2NhcAV1aW50OBJjaGFydGVyX3JlYWR5X3ZpZXcAAwF4BWludDY0AXkFaW50NjQHbWFuZGF0ZQZ1aW50MzIOY2hhcnRlcl9yZXN1bHQADgtsb2NhdGlvbl9pZAZ1aW50NjQIbGlmZXRpbWUGdWludDY0BXNwZW50BnVpbnQ2NAp1bmFzc2lnbmVkBnVpbnQ2NAdtYW5kYXRlBnVpbnQzMgluZXh0X2Nvc3QGdWludDY0C3ByZXJlcXNfbWV0BGJvb2wJYnVpbGRhYmxlBGJvb2wFZXBvY2gGdWludDMyBWJ1aWx0DmNoYXJ0ZXJfdmlld1tdCWJhbGxvdF9pZAZ1aW50NjQIc2V0dGxpbmcEYm9vbAVxdWV1ZQtzZWF0X3ZpZXdbXQhwcm9ncmVzcw9wcm9ncmVzc192aWV3W10TY2hhcnRlcl90cmVlX3Jlc3VsdAABBW5vZGVzEmNoYXJ0ZXJfbm9kZV9kZWZbXQxjaGFydGVyX3ZpZXcAAgdub2RlX2lkBnVpbnQzMgdyZXBlYXRzBnVpbnQxNgxjaGFydGVycmVhZHkAAgF4BWludDY0AXkFaW50NjQTY2hhcnRlcnJlYWR5X3Jlc3VsdAABBndvcmxkcxRjaGFydGVyX3JlYWR5X3ZpZXdbXQ9jaXRpemVuc2hpcF9yb3cABAtsb2NhdGlvbl9pZAZ1aW50NjQIbGlmZXRpbWUGdWludDY0BmFjdGl2ZQZ1aW50NjQMYWN0aXZlX2Vwb2NoBnVpbnQzMgtjaXZpY19ncmFudAAEBGtpbmQFdWludDgIYnVpbGRpbmcFdWludDgEc3RhdAV1aW50OAV2YWx1ZQZ1aW50MTYPY2l2aWNjb25maWdfcm93AAELY2l2aWNfb3duZXIEbmFtZQljbGFpbV9yb3cAAQVvd25lcgRuYW1lCmNsYWltYnVpbGQAAQZqb2JfaWQGdWludDY0CmNsYWltY3JhZnQAAgZqb2JfaWQGdWludDY0B3NoaXBfaWQGdWludDY0CWNsYWltcGxvdAADCmJ1aWxkZXJfaWQGdWludDY0DnRhcmdldF9pdGVtX2lkBnVpbnQxNgRzbG90DGNsdXN0ZXJfc2xvdAxjbGFpbXN0YXJ0ZXIAAQVvd25lcgRuYW1lCWNsZWFucnN2cAACBWVwb2NoBnVpbnQ2NAhtYXhfcm93cwZ1aW50NjQKY2xlYXJ0YWJsZQADCnRhYmxlX25hbWUEbmFtZQVzY29wZQVuYW1lPwhtYXhfcm93cwd1aW50NjQ/DGNsdXN0ZXJfY2VsbAADAmd4BGludDgCZ3kEaW50OAZlbnRpdHkGdWludDY0C2NsdXN0ZXJfcm93AAIEcm9vdAZ1aW50NjQFY2VsbHMOY2x1c3Rlcl9jZWxsW10MY2x1c3Rlcl9zbG90AAMDaHViBnVpbnQ2NAJneARpbnQ4Amd5BGludDgOY2x1c3Rlcl9zb3VyY2UAAglzb3VyY2VfaWQGdWludDY0BWl0ZW1zDGNhcmdvX2l0ZW1bXQxjbHVzdGVyY3JhZnQABgJpZAZ1aW50NjQJcmVjaXBlX2lkBnVpbnQxNghxdWFudGl0eQZ1aW50MzIHc291cmNlcxBjbHVzdGVyX3NvdXJjZVtdBnRhcmdldAd1aW50NjQ/BHNsb3QGdWludDg/BmNvbW1pdAADCW9yYWNsZV9pZARuYW1lBWVwb2NoBnVpbnQ2NAZjb21taXQLY2hlY2tzdW0yNTYKY29tbWl0X3JvdwAEAmlkBnVpbnQ2NAVlcG9jaAZ1aW50NjQJb3JhY2xlX2lkBG5hbWUGY29tbWl0C2NoZWNrc3VtMjU2CWNvbmZpZ2xvZwABBmNvbmZpZwtnYW1lX2NvbmZpZwtjb29yZGluYXRlcwADAXgFaW50NjQBeQVpbnQ2NAF6B3VpbnQxNj8IY291cGxpbmcAAwtjb3VudGVycGFydAplbnRpdHlfcmVmBGhvbGQGdWludDY0BGtpbmQFdWludDgFY3JhZnQABgJpZAZ1aW50NjQJcmVjaXBlX2lkBnVpbnQxNghxdWFudGl0eQZ1aW50MzIGaW5wdXRzDGNhcmdvX2l0ZW1bXQZ0YXJnZXQHdWludDY0PwRzbG90BnVpbnQ4PwxjcmFmdGVyX2xhbmUABApzbG90X2luZGV4BXVpbnQ4BXNwZWVkBnVpbnQxNgVkcmFpbgZ1aW50MzIKb3V0cHV0X3BjdAZ1aW50MTYIY3JhZnRqb2IABgdzaGlwX2lkBnVpbnQ2NAt3b3Jrc2hvcF9pZAZ1aW50NjQEc2xvdAV1aW50OAlyZWNpcGVfaWQGdWludDE2CHF1YW50aXR5BnVpbnQzMgZpbnB1dHMMY2FyZ29faXRlbVtdDGNyYWZ0am9iX3JvdwAMAmlkBnVpbnQ2NAhidWlsZGluZwZ1aW50NjQGc29ja2V0BXVpbnQ4BW93bmVyBG5hbWUHc2hpcF9pZAZ1aW50NjQGY29vcmRzC2Nvb3JkaW5hdGVzCXN0YXJ0c19hdAp0aW1lX3BvaW50DGNvbXBsZXRlc19hdAp0aW1lX3BvaW50CXJlY2lwZV9pZAZ1aW50MTYIcXVhbnRpdHkGdWludDMyC2VuZXJneV9wYWlkBnVpbnQzMgVjYXJnbwxjYXJnb19pdGVtW10QY3JhZnRqb2JzX3Jlc3VsdAABBGpvYnMOY3JhZnRqb2Jfcm93W10JZGJnY3JlZGl0AAUFb3duZXIEbmFtZQF4BWludDY0AXkFaW50NjQNYW1vdW50X2F0b21pYwZ1aW50NjQEbm9kZQd1aW50MzI/CmRiZ21hbmRhdGUAAwF4BWludDY0AXkFaW50NjQHbm9kZV9pZAZ1aW50MzILZGJncGFnZXJvd3MAAQRyb3dzBnVpbnQzMghkYmdwdXJnZQACCnRhYmxlX25hbWUEbmFtZQVzY29wZQVuYW1lPwhkYmdzZWF0cwADAXgFaW50NjQBeQVpbnQ2NAVzZWF0cwZ1aW50MzINZGVjb21wX2J1Y2tldAADCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgIcmF3X21hc3MGdWludDMyDWRlY29tcF9yZXN1bHQAAwdpdGVtX2lkBnVpbnQxNg5wcm9jZXNzZWRfbWFzcwZ1aW50NjQHYnVja2V0cw9kZWNvbXBfYnVja2V0W10JZGVsZW50aXR5AAEJZW50aXR5X2lkBnVpbnQ2NA1kZW1hbmRfcmVzdWx0AAUNYWJ1bmRhbnRfbWFzawV1aW50OAxsYWNraW5nX21hc2sFdWludDgFYWN1dGUFdWludDgHbmVlZF9mcAh1aW50NjRbXQVlcG9jaAZ1aW50MzIIZGVtb2xpc2gAAQllbnRpdHlfaWQGdWludDY0BmRlcGxveQADAmlkBnVpbnQ2NANyZWYJY2FyZ29fcmVmBHNsb3QNY2x1c3Rlcl9zbG90PwpkZXBvdF92aWV3AAQKcGxheWVyX2NhcAZ1aW50NjQLc3RvcmVkX21hc3MGdWludDY0DXJlc2VydmVkX21hc3MGdWludDY0BHJvd3MNc3RvcmFnZV9yb3dbXQpkZXBvdHN0b3JlAAMHc2hpcF9pZAZ1aW50NjQIZGVwb3RfaWQGdWludDY0BWl0ZW1zDGNhcmdvX2l0ZW1bXQlkZXBvdHRha2UAAwdzaGlwX2lkBnVpbnQ2NAhkZXBvdF9pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdCmRlc2NlbnRpdHkABAdpdGVtX2lkBnVpbnQxNgpodWxsX3N0YXRzBnVpbnQ2NAxtb2R1bGVfaXRlbXMIdWludDE2W10MbW9kdWxlX3N0YXRzCHVpbnQ2NFtdBmVuYWJsZQABB2VuYWJsZWQEYm9vbAxlbmVyZ3lfc3RhdHMAAghjYXBhY2l0eQZ1aW50MzIIcmVjaGFyZ2UGdWludDMyFGVudGl0eV9jdXJyZW50X3N0YXRlAAILY29vcmRpbmF0ZXMLY29vcmRpbmF0ZXMGZW5lcmd5BnVpbnQzMg9lbnRpdHlfZGVmYXVsdHMAAgt3YXJlaG91c2VfegZ1aW50MTYLY29udGFpbmVyX3oGdWludDE2C2VudGl0eV9pbmZvABcEdHlwZQRuYW1lAmlkBnVpbnQ2NAVvd25lcgRuYW1lC2VudGl0eV9uYW1lBnN0cmluZwtjb29yZGluYXRlcwtjb29yZGluYXRlcwdpdGVtX2lkBnVpbnQxNgljYXJnb21hc3MGdWludDMyBWNhcmdvDGNhcmdvX3ZpZXdbXQdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdBmVuZXJneQd1aW50MzI/CGh1bGxtYXNzB3VpbnQzMj8IY2FwYWNpdHkHdWludDMyPwdlbmdpbmVzD21vdmVtZW50X3N0YXRzPwR3YXJwC3dhcnBfc3RhdHM/CWdlbmVyYXRvcg1lbmVyZ3lfc3RhdHM/BmhhdWxlcg1oYXVsZXJfc3RhdHM/DmdhdGhlcmVyX2xhbmVzD2dhdGhlcmVyX2xhbmVbXQ1jcmFmdGVyX2xhbmVzDmNyYWZ0ZXJfbGFuZVtdDWJ1aWxkZXJfbGFuZXMOYnVpbGRlcl9sYW5lW10MbG9hZGVyX2xhbmVzDWxvYWRlcl9sYW5lW10IbGF1bmNoZXIPbGF1bmNoZXJfc3RhdHM/BWxhbmVzBmxhbmVbXQVob2xkcwZob2xkW10NZW50aXR5X2xheW91dAADDmVudGl0eV9pdGVtX2lkBnVpbnQxNgVzbG90cwpzbG90X2RlZltdDWJhc2VfaHVsbG1hc3MGdWludDMyFWVudGl0eV9sYXlvdXRzX3Jlc3VsdAABCGVudGl0aWVzD2VudGl0eV9sYXlvdXRbXQplbnRpdHlfcmVmAAILZW50aXR5X3R5cGUEbmFtZQllbnRpdHlfaWQGdWludDY0CmVudGl0eV9yb3cADAJpZAZ1aW50NjQFb3duZXIEbmFtZQRraW5kBG5hbWUHaXRlbV9pZAZ1aW50MTYEbmFtZQZzdHJpbmcFc3RhdHMGdWludDY0C2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzBmVuZXJneQd1aW50MzI/CWNhcmdvbWFzcwZ1aW50MzIHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQVsYW5lcwZsYW5lW10FaG9sZHMGaG9sZFtdDmVudGl0eV9zZXFfcm93AAEHbmV4dF9pZAZ1aW50NjQOZW50aXR5X3N1bW1hcnkACAR0eXBlBG5hbWUCaWQGdWludDY0BW93bmVyBG5hbWULZW50aXR5X25hbWUGc3RyaW5nC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzB2lzX2lkbGUEYm9vbA5yZXNvbHZlZF9jb3VudAZ1aW50MzINcGVuZGluZ19jb3VudAZ1aW50MzIQZW50aXR5X3Rhc2tfaW5mbwAECWVudGl0eV9pZAZ1aW50NjQLZW50aXR5X3R5cGUEbmFtZQp0YXNrX2NvdW50BnVpbnQzMhBzY2hlZHVsZV9zdGFydGVkCnRpbWVfcG9pbnQPZW50aXR5Z3JvdXBfcm93AAICaWQGdWludDY0DHBhcnRpY2lwYW50cwxlbnRpdHlfcmVmW10LZW51bV9tZW1iZXIAAgV2YWx1ZQV1aW50OARuYW1lBnN0cmluZwtlbnVtX3Jlc3VsdAABB21lbWJlcnMNZW51bV9tZW1iZXJbXQllcG9jaF9yb3cABAVlcG9jaAZ1aW50NjQKb3JhY2xlX2lkcwZuYW1lW10JdGhyZXNob2xkBXVpbnQ4BHNlZWQLY2hlY2tzdW0yNTYMZml4Y2FyZ29tYXNzAAEJZW50aXR5X2lkBnVpbnQ2NApmaXhpdGVtaWRzAAAQZm9vdHByaW50X3Jlc3VsdAABBWNlbGxzC2dyaWRfY2VsbFtdC2ZvcmNlcmV2ZWFsAAEFZXBvY2gGdWludDY0BWZvdW5kAAQGcGxheWVyBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAF4BWludDY0AXkFaW50NjQLZ2FtZV9jb25maWcAAwd2ZXJzaW9uBnVpbnQzMghkZWZhdWx0cw9lbnRpdHlfZGVmYXVsdHMFaXRlbXMKaXRlbV9kZWZbXQZnYXRoZXIABQlzb3VyY2VfaWQGdWludDY0DmRlc3RpbmF0aW9uX2lkBnVpbnQ2NAdzdHJhdHVtBnVpbnQxNghxdWFudGl0eQZ1aW50MzIEc2xvdAZ1aW50OD8NZ2F0aGVyZXJfbGFuZQAFCnNsb3RfaW5kZXgFdWludDgFeWllbGQGdWludDE2BWRyYWluBnVpbnQzMgVkZXB0aAZ1aW50MTYKb3V0cHV0X3BjdAZ1aW50MTYKZ2F0aGVycGxhbgAGCXNvdXJjZV9pZAZ1aW50NjQOZGVzdGluYXRpb25faWQGdWludDY0B3N0cmF0dW0GdWludDE2CHF1YW50aXR5BnVpbnQzMghyZWNoYXJnZQRib29sBXNsb3RzBWJ5dGVzDGdlbmVzaXNmbGVldAABCGVudGl0aWVzDGVudGl0eV9yb3dbXQxnZW5lc2lzd29ybGQABAdmb3VuZGVyBG5hbWUBeAVpbnQ2NAF5BWludDY0CG5vZGVfaWRzCHVpbnQzMltdDGdldGJ1aWxkam9icwABC2J1aWxkaW5nX2lkBnVpbnQ2NApnZXRjaGFydGVyAAIBeAVpbnQ2NAF5BWludDY0DGdldGNoYXJ0dHJlZQAADGdldGNocnRyZWFkeQAACmdldGNsdXN0ZXIAAQZodWJfaWQGdWludDY0CWdldGNvbmZpZwAADGdldGNyYWZ0am9icwABC2J1aWxkaW5nX2lkBnVpbnQ2NAlnZXRkZWNvbXAAAQdpdGVtX2lkBnVpbnQxNglnZXRkZW1hbmQAAgF4BWludDY0AXkFaW50NjQKZ2V0ZGVwb3NpdAACBW93bmVyBG5hbWUIYXNzZXRfaWQGdWludDY0CGdldGRlcG90AAIIZGVwb3RfaWQGdWludDY0BW93bmVyBG5hbWULZ2V0ZGlzdGFuY2UABAJheAVpbnQ2NAJheQVpbnQ2NAJieAVpbnQ2NAJieQVpbnQ2NAtnZXRlbGlnaWJsZQACBmNvb3Jkcwtjb29yZGluYXRlcwdzdHJhdHVtBnVpbnQxNglnZXRlbnRjbHMAAAtnZXRlbnRpdGllcwACBW93bmVyBG5hbWULZW50aXR5X3R5cGUFbmFtZT8JZ2V0ZW50aXR5AAEJZW50aXR5X2lkBnVpbnQ2NAxnZXRmb290cHJpbnQAAQdpdGVtX2lkBnVpbnQxNgtnZXRpbmZkZWNheQACBmFjdGl2ZQZ1aW50NjQGZXBvY2hzBnVpbnQzMgxnZXRpbmZsdWVuY2UAAwVvd25lcgRuYW1lAXgFaW50NjQBeQVpbnQ2NAtnZXRpbmZ2YWx1ZQADBWl0ZW1zDGNhcmdvX2l0ZW1bXQF4BWludDY0AXkFaW50NjQLZ2V0aXRlbWRhdGEAAApnZXRpdGVtaWRzAAAIZ2V0aXRlbXMAAAtnZXRpdGVtdHlwZQABB2l0ZW1faWQGdWludDE2DGdldGl0ZW10eXBlcwAAC2dldGtpbmRtZXRhAAALZ2V0bG9jYXRpb24AAgF4BWludDY0AXkFaW50NjQKZ2V0bG9jZGF0YQACAXgFaW50NjQBeQVpbnQ2NApnZXRtaW50Y2ZnAAAMZ2V0bWludHJlYWR5AAALZ2V0bW9kdHlwZXMAAApnZXRtb2R1bGVzAAAJZ2V0bmVhcmJ5AAIJZW50aXR5X2lkBnVpbnQ2NAhyZWNoYXJnZQRib29sCmdldG5mdGJhc2UAAApnZXRuZnRpbmZvAAAJZ2V0cGxheWVyAAEHYWNjb3VudARuYW1lB2dldHBvb2wAAghjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4CGdldHBvb2xzAAAMZ2V0cHJvanN0YXRlAAIJZW50aXR5X2lkBnVpbnQ2NAp0YXNrX2NvdW50BnVpbnQ4PwlnZXRyZWNpcGUAAQ5vdXRwdXRfaXRlbV9pZAZ1aW50MTYKZ2V0cmVjaXBlcwACC2xvd2VyX2JvdW5kBnVpbnQxNgVsaW1pdAV1aW50OApnZXRyZXNjYXRzAAALZ2V0cmVzZXJ2ZXMAAgF4BWludDY0AXkFaW50NjQMZ2V0cmVzb3VyY2VzAAAIZ2V0c2xvdHMAAApnZXRzdHJhdHVtAAMBeAVpbnQ2NAF5BWludDY0B3N0cmF0dW0GdWludDE2DGdldHN1bW1hcmllcwACBW93bmVyBG5hbWULZW50aXR5X3R5cGUFbmFtZT8MZ2V0dm90ZXJlYWR5AAAIZ2V0dm90ZXMAAwF4BWludDY0AXkFaW50NjQGcGxheWVyBG5hbWULZ2V0d29ybWhvbGUAAgF4BWludDY0AXkFaW50NjQJZ3JpZF9jZWxsAAICZ3gEaW50OAJneQRpbnQ4DGdyb3VwdHJhbnNpdAAFCGVudGl0aWVzDGVudGl0eV9yZWZbXQJheAVpbnQ2NAJheQVpbnQ2NAJieAVpbnQ2NAJieQVpbnQ2NAtncm91cHRyYXZlbAAECGVudGl0aWVzDGVudGl0eV9yZWZbXQF4BWludDY0AXkFaW50NjQIcmVjaGFyZ2UEYm9vbARoYXNoAAEFdmFsdWUGc3RyaW5nB2hhc2g1MTIAAQV2YWx1ZQZzdHJpbmcMaGF1bGVyX3N0YXRzAAQIY2FwYWNpdHkFdWludDgKZWZmaWNpZW5jeQZ1aW50MTYFZHJhaW4GdWludDMyEGNhcGFjaXR5X2J5X3RpZXIRaGF1bGVyX3RpZXJfY2FwW10PaGF1bGVyX3RpZXJfY2FwAAIEdGllcgV1aW50OAhjYXBhY2l0eQV1aW50OARob2xkAAUCaWQGdWludDY0BGtpbmQFdWludDgLY291bnRlcnBhcnQKZW50aXR5X3JlZgV1bnRpbAp0aW1lX3BvaW50DWluY29taW5nX21hc3MGdWludDMyC2ltcG9ydGNhcmdvAAEDcm93CWNhcmdvX3JvdwppbXBvcnRjZWxsAAQEcm9vdAZ1aW50NjQCZ3gEaW50OAJneQRpbnQ4CWVudGl0eV9pZAZ1aW50NjQMaW1wb3J0ZW50aXR5AAEDcm93CmVudGl0eV9yb3cLaW1wb3J0ZXBvY2gAAQNyb3cJZXBvY2hfcm93C2ltcG9ydGdyb3VwAAEDcm93D2VudGl0eWdyb3VwX3JvdwxpbXBvcnRuZnRjZmcAAQNyb3cNbmZ0Y29uZmlnX3JvdwxpbXBvcnRwbGF5ZXIAAQVvd25lcgRuYW1lDWltcG9ydHJlc2VydmUAAgtlcG9jaF9zY29wZQZ1aW50MzIDcm93C3Jlc2VydmVfcm93C2ltcG9ydHN0YXRlAAEDcm93CXN0YXRlX3JvdwtpbmZidXJuX3JvdwABA2JwcwZ1aW50MTYNaW5mZGVtYW5kX3JvdwADBHBlYWsGdWludDY0BGJhc2UGdWludDY0BWZsb29yBnVpbnQ2NBBpbmZsdWVuY2VfdG90YWxzAAsRc3RhbmRpbmdfbGlmZXRpbWUGdWludDY0D3N0YW5kaW5nX2FjdGl2ZQZ1aW50NjQUY2l0aXplbnNoaXBfbGlmZXRpbWUGdWludDY0EmNpdGl6ZW5zaGlwX2FjdGl2ZQZ1aW50NjQRbG9jYXRpb25fbGlmZXRpbWUGdWludDY0D2xvY2F0aW9uX2FjdGl2ZQZ1aW50NjQFc3BlbnQGdWludDY0B21hbmRhdGUGdWludDMyB2ZvdW5kZXIEbmFtZQdmb3VuZGVkBnVpbnQzMgVlcG9jaAZ1aW50MzILaW5mbWludF9yb3cAAwhjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4CXRocmVzaG9sZAZ1aW50NjQLaW5mcG9vbF9yb3cABghjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4BWdyYWRlBXVpbnQ4CHF1YW50aXR5BnVpbnQ2NAVzdGF0cwZ1aW50NjQDYmFyBnVpbnQ2NA5pbmZxdWFsaXR5X3JvdwABAmQxBnVpbnQzMg9pbmZ2YWx1ZV9yZXN1bHQAAgx0b3RhbF9hdG9taWMGdWludDY0D3Blcl9pdGVtX2F0b21pYwh1aW50NjRbXQ1pbmZ3ZWlnaHRfcm93AAMIY2F0ZWdvcnkFdWludDgEdGllcgV1aW50OAl3ZWlnaHRfZnAGdWludDY0CGl0ZW1fZGVmAAUCaWQGdWludDE2BG1hc3MGdWludDMyBHR5cGUFdWludDgHc3VidHlwZQV1aW50OAR0aWVyBXVpbnQ4DGl0ZW1faWRfcGFpcgACAmlkBnVpbnQxNgRuYW1lBnN0cmluZw9pdGVtX2lkc19yZXN1bHQAAQVpdGVtcw5pdGVtX2lkX3BhaXJbXQ9pdGVtZGF0YV9yZXN1bHQAAgVpdGVtcwppdGVtX2RlZltdB3JlY2lwZXMOcmVjaXBlc19yZXN1bHQKaXRlbXNfaW5mbwABBWl0ZW1zCml0ZW1fZGVmW10Lam9iX3JlY2VpcHQAAwZqb2JfaWQGdWludDY0CXN0YXJ0c19hdAp0aW1lX3BvaW50DGNvbXBsZXRlc19hdAp0aW1lX3BvaW50BGpvaW4AAQdhY2NvdW50BG5hbWUQa2luZF9tZXRhX3Jlc3VsdAACBWtpbmRzD2tpbmRfbWV0YV9yb3dbXQl0ZW1wbGF0ZXMTdGVtcGxhdGVfbWV0YV9yb3dbXQ1raW5kX21ldGFfcm93AAUEa2luZARuYW1lDmNsYXNzaWZpY2F0aW9uBXVpbnQ4EGNhcGFiaWxpdHlfZmxhZ3MFdWludDgHel9jb29yZAZ1aW50MzINZGVmYXVsdF9sYWJlbAZzdHJpbmcEbGFuZQACCGxhbmVfa2V5BXVpbnQ4CHNjaGVkdWxlCHNjaGVkdWxlBmxhdW5jaAADC2xhdW5jaGVyX2lkBnVpbnQ2NApjYXRjaGVyX2lkBnVpbnQ2NAVpdGVtcwxjYXJnb19pdGVtW10ObGF1bmNoZXJfc3RhdHMAAwtjaGFyZ2VfcmF0ZQZ1aW50MTYIdmVsb2NpdHkGdWludDE2BWRyYWluBnVpbnQxNgRsb2FkAAMCaWQGdWludDY0B2Zyb21faWQGdWludDY0BWl0ZW1zDGNhcmdvX2l0ZW1bXQtsb2FkZXJfbGFuZQAECnNsb3RfaW5kZXgFdWludDgEbWFzcwZ1aW50MzIGdGhydXN0BnVpbnQxNgpvdXRwdXRfcGN0BnVpbnQxNhBsb2NhdGlvbl9kZXJpdmVkAAIMc3RhdGljX3Byb3BzD2xvY2F0aW9uX3N0YXRpYwRzaXplBnVpbnQxNg1sb2NhdGlvbl9pbmZvAAMGY29vcmRzC2Nvb3JkaW5hdGVzCWlzX3N5c3RlbQRib29sC2lzX3dvcm1ob2xlBGJvb2wPbG9jYXRpb25fc3RhdGljAAUGY29vcmRzC2Nvb3JkaW5hdGVzBHR5cGUNbG9jYXRpb25fdHlwZQdzdWJ0eXBlBXVpbnQ4BXNlZWQwBXVpbnQ4BXNlZWQxBXVpbnQ4CmxvY2tlcl9yb3cAAwhkZXBvdF9pZAZ1aW50NjQLc3RvcmVkX21hc3MGdWludDY0DXJlc2VydmVkX21hc3MGdWludDY0DG1hbmRhdGVzX3JvdwACB25vZGVfaWQGdWludDMyB3JlcGVhdHMGdWludDE2E21pbnRfdGhyZXNob2xkX3ZpZXcAAwhjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4CXRocmVzaG9sZAZ1aW50NjQObWludGNmZ19yZXN1bHQAAgp0aHJlc2hvbGRzFW1pbnRfdGhyZXNob2xkX3ZpZXdbXQhidXJuX2JwcwZ1aW50MTYJbWludHFfcm93AAICaWQGdWludDY0BWdyYWRlBXVpbnQ4CW1pbnRyZWFkeQABCW1heF9taW50cwd1aW50MzI/DG1vZHVsZV9lbnRyeQACBHR5cGUFdWludDgJaW5zdGFsbGVkDnBhY2tlZF9tb2R1bGU/C21vZHVsZV9pbmZvAAQCaWQGdWludDE2BG1hc3MGdWludDMyC21vZHVsZV90eXBlBXVpbnQ4BHRpZXIFdWludDgObW9kdWxlc19yZXN1bHQAAQdtb2R1bGVzDW1vZHVsZV9pbmZvW10ObW92ZW1lbnRfc3RhdHMAAgZ0aHJ1c3QGdWludDMyBWRyYWluBnVpbnQzMghtb3ZldGlsZQAFBmh1Yl9pZAZ1aW50NjQHZnJvbV9neARpbnQ4B2Zyb21fZ3kEaW50OAV0b19neARpbnQ4BXRvX2d5BGludDgKbmF0dXJhbGl6ZQADBnBsYXllcgRuYW1lAXgFaW50NjQBeQVpbnQ2NAtuZWFyYnlfaW5mbwAFCmNhbl90cmF2ZWwEYm9vbAdjdXJyZW50FGVudGl0eV9jdXJyZW50X3N0YXRlCXByb2plY3RlZBRlbnRpdHlfY3VycmVudF9zdGF0ZQptYXhfZW5lcmd5BnVpbnQzMgdzeXN0ZW1zD25lYXJieV9zeXN0ZW1bXQ1uZWFyYnlfc3lzdGVtAAQIZGlzdGFuY2UGdWludDY0C2VuZXJneV9jb3N0BnVpbnQ2NAtmbGlnaHRfdGltZQZ1aW50MzIIbG9jYXRpb24NbG9jYXRpb25faW5mbw5uZnRfY2FyZ29faXRlbQAEB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCHF1YW50aXR5BnVpbnQzMhBuZnRfaXRlbV9wYXlsb2FkAAIEaXRlbQ5uZnRfY2FyZ29faXRlbQhsb2NhdGlvbgxjb29yZGluYXRlcz8ObmZ0X3NjaGVtYV9kZWYAAgtzY2hlbWFfbmFtZQRuYW1lBmZpZWxkcw5zY2hlbWFfZmllbGRbXRBuZnRfdGVtcGxhdGVfZGVmAAMHaXRlbV9pZAZ1aW50MTYLc2NoZW1hX25hbWUEbmFtZQt0ZW1wbGF0ZV9pZAVpbnQzMg1uZnRjb25maWdfcm93AAMHaXRlbV9pZAZ1aW50MTYLdGVtcGxhdGVfaWQFaW50MzILc2NoZW1hX25hbWUEbmFtZQluZnRpbWd1cmwAAgRpdGVtCmNhcmdvX2l0ZW0IbG9jYXRpb24MY29vcmRpbmF0ZXM/Dm5mdGluZm9fcmVzdWx0AAIHc2NoZW1hcxBuZnRfc2NoZW1hX2RlZltdCXRlbXBsYXRlcxJuZnRfdGVtcGxhdGVfZGVmW10Gbm90aWZ5AAEFZXZlbnQKdGFza19ldmVudBFvcmFjbGVfY29uZmlnX3JvdwABCXRocmVzaG9sZAV1aW50OApvcmFjbGVfcm93AAECaWQEbmFtZQ1wYWNrZWRfbW9kdWxlAAIHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0CnBsYWNlY2FyZ28AAwVvd25lcgRuYW1lB2hvc3RfaWQGdWludDY0CGFzc2V0X2lkBnVpbnQ2NAtwbGFjZWVudGl0eQADBW93bmVyBG5hbWUIYXNzZXRfaWQGdWludDY0D3RhcmdldF9uZXh1c19pZAZ1aW50NjQLcGxheWVyX2luZm8AAwVvd25lcgRuYW1lCWlzX3BsYXllcgRib29sDGNvbXBhbnlfbmFtZQZzdHJpbmcKcGxheWVyX3JvdwABBW93bmVyBG5hbWUQcG9vbF9wYWlyX3Jlc3VsdAAJCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgHaXRlbV9pZAZ1aW50MTYRc3RhbmRhcmRfcXVhbnRpdHkGdWludDY0DnN0YW5kYXJkX3N0YXRzBnVpbnQ2NBBwcmVtaXVtX3F1YW50aXR5BnVpbnQ2NA1wcmVtaXVtX3N0YXRzBnVpbnQ2NANiYXIGdWludDY0CXRocmVzaG9sZAZ1aW50NjQJcG9vbF92aWV3AAcIY2F0ZWdvcnkFdWludDgEdGllcgV1aW50OAVncmFkZQV1aW50OAdpdGVtX2lkBnVpbnQxNghxdWFudGl0eQZ1aW50NjQFc3RhdHMGdWludDY0A2JhcgZ1aW50NjQMcG9vbHNfcmVzdWx0AAEFcG9vbHMLcG9vbF92aWV3W10McHJvZ3Jlc3Nfcm93AAIHbm9kZV9pZAZ1aW50MzIGYW1vdW50BnVpbnQ2NA1wcm9ncmVzc192aWV3AAIHbm9kZV9pZAZ1aW50MzIGYW1vdW50BnVpbnQ2NA9wcm9qZWN0ZWRfc3RhdGUAEQVvd25lcgRuYW1lC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzBmVuZXJneQd1aW50MzI/CWNhcmdvbWFzcwZ1aW50MzIFY2FyZ28MY2FyZ29fdmlld1tdCGh1bGxtYXNzB3VpbnQzMj8IY2FwYWNpdHkHdWludDMyPwdlbmdpbmVzD21vdmVtZW50X3N0YXRzPwR3YXJwC3dhcnBfc3RhdHM/CWdlbmVyYXRvcg1lbmVyZ3lfc3RhdHM/BmhhdWxlcg1oYXVsZXJfc3RhdHM/DmdhdGhlcmVyX2xhbmVzD2dhdGhlcmVyX2xhbmVbXQ1jcmFmdGVyX2xhbmVzDmNyYWZ0ZXJfbGFuZVtdDWJ1aWxkZXJfbGFuZXMOYnVpbGRlcl9sYW5lW10MbG9hZGVyX2xhbmVzDWxvYWRlcl9sYW5lW10IbGF1bmNoZXIPbGF1bmNoZXJfc3RhdHM/BHRpZXIFdWludDgIcmVjaGFyZ2UAAQJpZAZ1aW50NjQMcmVjaXBlX2lucHV0AAIHaXRlbV9pZAZ1aW50MTYIcXVhbnRpdHkGdWludDMyEHJlY2lwZV9pdGVtX2luZm8AAgJpZAZ1aW50MTYEbWFzcwZ1aW50MzIPcmVjaXBlX3Jlc3BvbnNlAAgOb3V0cHV0X2l0ZW1faWQGdWludDE2C291dHB1dF9tYXNzBnVpbnQzMgZpbnB1dHMOcmVjaXBlX2lucHV0W10Kc3RhdF9zbG90cxRzdGF0X3Nsb3RfcmVzcG9uc2VbXQ1ibGVuZF93ZWlnaHRzBWJ5dGVzC291dHB1dF9pdGVtEHJlY2lwZV9pdGVtX2luZm8LaW5wdXRfaXRlbXMScmVjaXBlX2l0ZW1faW5mb1tdD3NvdXJjZV9zdWJjbGFzcwd1aW50MTY/DnJlY2lwZXNfcmVzdWx0AAEHcmVjaXBlcxFyZWNpcGVfcmVzcG9uc2VbXQhyZWZpdF9vcAACAm9wBXVpbnQ4BHNsb3QFdWludDgMcmVmcnNoZW50aXR5AAEJZW50aXR5X2lkBnVpbnQ2NAxyZW1vdmVvcmFjbGUAAQlvcmFjbGVfaWQEbmFtZQZyZW5hbWUAAgJpZAZ1aW50NjQEbmFtZQZzdHJpbmcLcmVzZXJ2ZV9yb3cABQJpZAZ1aW50NjQIY29vcmRfaWQGdWludDY0B3N0cmF0dW0GdWludDE2CXJlbWFpbmluZwZ1aW50MzIKbGFzdF9ibG9jaxRibG9ja190aW1lc3RhbXBfdHlwZQdyZXNvbHZlAAICaWQGdWludDY0BWNvdW50B3VpbnQ2ND8PcmVzb2x2ZV9yZXN1bHRzAAYJZW50aXR5X2lkBnVpbnQ2NAtlbnRpdHlfdHlwZQRuYW1lDnJlc29sdmVkX2NvdW50BnVpbnQzMhRuZXdfc2NoZWR1bGVfc3RhcnRlZAt0aW1lX3BvaW50PwtlbnRpdHlncm91cAd1aW50NjQ/DWdyb3VwX21lbWJlcnMWQl92ZWN0b3JfZW50aXR5X3JlZl9FPwpyZXNvbHZlYWxsAAEFb3duZXIEbmFtZRJyZXNvbHZlYWxsX3Jlc3VsdHMAAgdzY2FubmVkBnVpbnQzMghyZXNvbHZlZAZ1aW50MzIMcmVzb2x2ZWVhcmx5AAICaWQGdWludDY0BWNvdW50B3VpbnQ2ND8NcmVzb3VyY2VfaW5mbwAEAmlkBnVpbnQxNgRtYXNzBnVpbnQzMghjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4DnJlc291cmNlX3N0YXRzAAMFc3RhdDEGdWludDE2BXN0YXQyBnVpbnQxNgVzdGF0MwZ1aW50MTYQcmVzb3VyY2VzX3Jlc3VsdAABCXJlc291cmNlcw9yZXNvdXJjZV9pbmZvW10GcmV2ZWFsAAMJb3JhY2xlX2lkBG5hbWUFZXBvY2gGdWludDY0BnJldmVhbAtjaGVja3N1bTI1NgpyZXZlYWxfcm93AAQCaWQGdWludDY0BWVwb2NoBnVpbnQ2NAlvcmFjbGVfaWQEbmFtZQZyZXZlYWwLY2hlY2tzdW0yNTYIcm1tb2R1bGUAAwllbnRpdHlfaWQGdWludDY0DG1vZHVsZV9pbmRleAV1aW50OAp0YXJnZXRfcmVmCmNhcmdvX3JlZj8Icm1uZnRjZmcAAQdpdGVtX2lkBnVpbnQxNg5yb3V0ZV93YXlwb2ludAACAXgFaW50NjQBeQVpbnQ2NAhzY2hlZHVsZQACB3N0YXJ0ZWQKdGltZV9wb2ludAV0YXNrcwZ0YXNrW10Mc2NoZW1hX2ZpZWxkAAIEbmFtZQZzdHJpbmcKZmllbGRfdHlwZQZzdHJpbmcJc2VhdF92aWV3AAQHbm9kZV9pZAZ1aW50MzIEY29zdAZ1aW50NjQIcHJvZ3Jlc3MGdWludDY0A2dhcAZ1aW50NjQIc2V0Y2l2aWMAAQdhY2NvdW50BG5hbWUKc2V0Y2x1c3RlcgABA3JvdwtjbHVzdGVyX3JvdwlzZXRjb29yZHMAAwllbnRpdHlfaWQGdWludDY0AXgFaW50NjQBeQVpbnQ2NApzZXRpbmZidXJuAAEDYnBzBnVpbnQxNghzZXRpbmZkMQABAmQxBnVpbnQzMgxzZXRpbmZkZW1hbmQAAwRwZWFrBnVpbnQ2NARiYXNlBnVpbnQ2NAVmbG9vcgZ1aW50NjQKc2V0aW5mbWludAADCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgJdGhyZXNob2xkBnVpbnQ2NAxzZXRpbmZ3ZWlnaHQAAwhjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4CXdlaWdodF9mcAZ1aW50NjQJc2V0bmV4dGlkAAEHbmV4dF9pZAZ1aW50NjQJc2V0bmZ0Y2ZnAAMHaXRlbV9pZAZ1aW50MTYLdGVtcGxhdGVfaWQFaW50MzILc2NoZW1hX25hbWUEbmFtZQxzZXR0aHJlc2hvbGQAAQl0aHJlc2hvbGQFdWludDgMc2V0dGxlYmFsbG90AAIJYmFsbG90X2lkBnVpbnQ2NAltYXhfcGFnZXMGdWludDMyDHNldHVud3JhcG1pbgABCGFzc2V0X2lkBnVpbnQ2NAtzZXR3cmFwY29zdAADCWl0ZW1fdHlwZQV1aW50OAR0aWVyBXVpbnQ4BmFtb3VudAZ1aW50NjQKc2V0d3JhcGZlZQACB2ZlZV9wY3QGdWludDE2C2ZlZV9hY2NvdW50BG5hbWUHc2h1dHRsZQAEB2NhcnJpZXIGdWludDY0B2Zyb21faWQGdWludDY0BXRvX2lkBnVpbnQ2NAVpdGVtcwxjYXJnb19pdGVtW10Ic2xvdF9kZWYAAwR0eXBlBXVpbnQ4Cm91dHB1dF9wY3QGdWludDE2CG1heF90aWVyBXVpbnQ4DHN0YW5kaW5nX3JvdwAEB2FjY291bnQEbmFtZQhsaWZldGltZQZ1aW50NjQGYWN0aXZlBnVpbnQ2NAxhY3RpdmVfZXBvY2gGdWludDMyEnN0YXRfc2xvdF9yZXNwb25zZQABB3NvdXJjZXMNc3RhdF9zb3VyY2VbXQtzdGF0X3NvdXJjZQACC2lucHV0X2luZGV4BXVpbnQ4EGlucHV0X3N0YXRfaW5kZXgFdWludDgJc3RhdGVfcm93AAMHZW5hYmxlZARib29sBWVwb2NoBnVpbnQzMgRzZWVkC2NoZWNrc3VtMjU2C3N0b3JhZ2Vfcm93AAcCaWQGdWludDY0BW93bmVyBG5hbWUHaXRlbV9pZAZ1aW50NjQIcXVhbnRpdHkGdWludDY0BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdC3NlcXVlbmNlX2lkB3VpbnQ2ND8Jc3Rvd2NhcmdvAAUFb3duZXIEbmFtZQllbnRpdHlfaWQGdWludDY0CG5leHVzX2lkBnVpbnQ2NAhjYXJnb19pZAZ1aW50NjQIcXVhbnRpdHkGdWludDY0CnN0b3dlbnRpdHkAAwVvd25lcgRuYW1lCWVudGl0eV9pZAZ1aW50NjQIbmV4dXNfaWQGdWludDY0DHN0cmF0dW1fZGF0YQACB3N0cmF0dW0Mc3RyYXR1bV9pbmZvBXN0YXRzDnJlc291cmNlX3N0YXRzDHN0cmF0dW1faW5mbwAFB2l0ZW1faWQGdWludDE2BHNlZWQGdWludDY0CHJpY2huZXNzBnVpbnQxNgdyZXNlcnZlBnVpbnQzMgtyZXNlcnZlX21heAZ1aW50MzIRc3RyYXR1bV9yZW1haW5pbmcAAwdzdHJhdHVtBnVpbnQxNglyZW1haW5pbmcGdWludDMyCmxhc3RfYmxvY2sUYmxvY2tfdGltZXN0YW1wX3R5cGUKc3dhcG1vZHVsZQADCWVudGl0eV9pZAZ1aW50NjQMbW9kdWxlX2luZGV4BXVpbnQ4Cm1vZHVsZV9yZWYJY2FyZ29fcmVmCHN3YXB0aWxlAAUGaHViX2lkBnVpbnQ2NARhX2d4BGludDgEYV9neQRpbnQ4BGJfZ3gEaW50OARiX2d5BGludDgEdGFzawAMBHR5cGUFdWludDgIZHVyYXRpb24GdWludDMyCmNhbmNlbGFibGUFdWludDgLY29vcmRpbmF0ZXMMY29vcmRpbmF0ZXM/BWNhcmdvDGNhcmdvX2l0ZW1bXQljb3VwbGluZ3MKY291cGxpbmdbXQdzdWJqZWN0C2VudGl0eV9yZWY/C2VudGl0eWdyb3VwB3VpbnQ2ND8LZW5lcmd5X2Nvc3QHdWludDMyPw50YXJnZXRfaXRlbV9pZAd1aW50MTY/BXJlZml0CXJlZml0X29wPwxjaGFydGVyX25vZGUHdWludDMyPwp0YXNrX2V2ZW50AAoKZXZlbnRfdHlwZQV1aW50OAVvd25lcgRuYW1lC2VudGl0eV90eXBlBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAp0YXNrX2luZGV4BnVpbnQzMgR0YXNrBHRhc2sJc3RhcnRzX2F0CnRpbWVfcG9pbnQMY29tcGxldGVzX2F0CnRpbWVfcG9pbnQKbmV3X2VuZXJneQd1aW50MzI/CGxhbmVfa2V5BXVpbnQ4DHRhc2tfcmVzdWx0cwABCGVudGl0aWVzEmVudGl0eV90YXNrX2luZm9bXRF0ZW1wbGF0ZV9tZXRhX3JvdwADB2l0ZW1faWQGdWludDE2BGtpbmQEbmFtZQ1kaXNwbGF5X2xhYmVsBnN0cmluZwd0cmFuc2l0AAUCaWQGdWludDY0AmF4BWludDY0AmF5BWludDY0AmJ4BWludDY0AmJ5BWludDY0BnRyYXZlbAAEAmlkBnVpbnQ2NAF4BWludDY0AXkFaW50NjQIcmVjaGFyZ2UEYm9vbAp0cmF2ZWxwbGFuAAMIZW50aXRpZXMMZW50aXR5X3JlZltdCXdheXBvaW50cxByb3V0ZV93YXlwb2ludFtdCHJlY2hhcmdlBGJvb2wJdHlwZXNfcm93ABACaWQGdWludDY0E2VudGl0eV9zdW1tYXJ5X3R5cGUOZW50aXR5X3N1bW1hcnkQZ2FtZV9jb25maWdfdHlwZQtnYW1lX2NvbmZpZxZzdHJhdHVtX3JlbWFpbmluZ190eXBlEXN0cmF0dW1fcmVtYWluaW5nFW5mdF9pdGVtX3BheWxvYWRfdHlwZRBuZnRfaXRlbV9wYXlsb2FkEmRlY29tcF9yZXN1bHRfdHlwZQ1kZWNvbXBfcmVzdWx0EmRlbWFuZF9yZXN1bHRfdHlwZQ1kZW1hbmRfcmVzdWx0FGluZnZhbHVlX3Jlc3VsdF90eXBlD2luZnZhbHVlX3Jlc3VsdBVpbmZsdWVuY2VfdG90YWxzX3R5cGUQaW5mbHVlbmNlX3RvdGFscxFwb29sc19yZXN1bHRfdHlwZQxwb29sc19yZXN1bHQVcG9vbF9wYWlyX3Jlc3VsdF90eXBlEHBvb2xfcGFpcl9yZXN1bHQTbWludGNmZ19yZXN1bHRfdHlwZQ5taW50Y2ZnX3Jlc3VsdBNjaGFydGVyX3Jlc3VsdF90eXBlDmNoYXJ0ZXJfcmVzdWx0GGNoYXJ0ZXJyZWFkeV9yZXN1bHRfdHlwZRNjaGFydGVycmVhZHlfcmVzdWx0EHZvdGVfcmVzdWx0X3R5cGULdm90ZV9yZXN1bHQPZGVwb3Rfdmlld190eXBlCmRlcG90X3ZpZXcIdW5kZXBsb3kAAgdob3N0X2lkBnVpbnQ2NAl0YXJnZXRfaWQGdWludDY0BnVubG9hZAADAmlkBnVpbnQ2NAV0b19pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdB3VwZ3JhZGUABQpidWlsZGVyX2lkBnVpbnQ2NAl0YXJnZXRfaWQGdWludDY0DnRhcmdldF9pdGVtX2lkBnVpbnQxNgZpbnB1dHMMY2FyZ29faXRlbVtdBHNsb3QGdWludDg/C3ZvdGVfb3B0aW9uAAUHbm9kZV9pZAZ1aW50MzIEY29zdAZ1aW50NjQEc2VhdAZ1aW50MzIGd2VpZ2h0BnVpbnQ2NARyYW5rBnVpbnQzMgt2b3RlX3Jlc3VsdAAJC2xvY2F0aW9uX2lkBnVpbnQ2NAliYWxsb3RfaWQGdWludDY0BWVwb2NoBnVpbnQzMg1zZXR0bGVkX2Vwb2NoBnVpbnQzMgVzZWF0cwZ1aW50MzIIc2V0dGxpbmcEYm9vbAVxdWV1ZQh1aW50MzJbXQdvcHRpb25zDXZvdGVfb3B0aW9uW10FcGlja3MIdWludDMyW10Jdm90ZXJlYWR5AAEJbWF4X3BhZ2VzBnVpbnQzMgR3YXJwAAMCaWQGdWludDY0AXgFaW50NjQBeQVpbnQ2NAp3YXJwX3N0YXRzAAEFcmFuZ2UGdWludDMyBHdpcGUAAAp3b3JsZHNfcm93AAkLbG9jYXRpb25faWQGdWludDY0CGxpZmV0aW1lBnVpbnQ2NAZhY3RpdmUGdWludDY0DGFjdGl2ZV9lcG9jaAZ1aW50MzIFc3BlbnQGdWludDY0CnVuYXNzaWduZWQGdWludDY0CWJhbGxvdF9pZAZ1aW50NjQHZm91bmRlcgRuYW1lB2ZvdW5kZWQGdWludDMyDXdvcm1ob2xlX2luZm8AAwZjb29yZHMLY29vcmRpbmF0ZXMLaXNfd29ybWhvbGUEYm9vbAtkZXN0aW5hdGlvbgtjb29yZGluYXRlcw53cmFwY29uZmlnX3JvdwADB2ZlZV9wY3QGdWludDE2C2ZlZV9hY2NvdW50BG5hbWUMbWluX2Fzc2V0X2lkBnVpbnQ2NAx3cmFwY29zdF9yb3cAAwlpdGVtX3R5cGUFdWludDgEdGllcgV1aW50OAZhbW91bnQGdWludDY0nAEAMo110jTNMQthYmFuZG9ucGxvdAAAwHE3T4pSMgphZGRjb250cmliAAAAUFEnKlMyCWFkZG1vZHVsZccDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGFkZG1vZHVsZQpzdW1tYXJ5OiAnSW5zdGFsbCBhIG1vZHVsZSBpbnRvIGEgc2xvdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW5zdGFsbCBhIG1vZHVsZSBmcm9tIGNhcmdvIGludG8gYSBtb2R1bGUgc2xvdCBvbiBhIGxpdmUgZW50aXR5IG9yIGEgcGFja2VkIGVudGl0eSBpbiBjYXJnby4gVGhlIGVudGl0eSBtdXN0IGJlIGlkbGUgd2l0aCBubyBzY2hlZHVsZWQgdGFza3MuIFRoZSBtb2R1bGUgdHlwZSBtdXN0IGJlIGNvbXBhdGlibGUgd2l0aCB0aGUgdGFyZ2V0IHNsb3QgdHlwZS4gVGhlIG1vZHVsZSBpdGVtIGlzIHJlbW92ZWQgZnJvbSBjYXJnbyB1cG9uIGluc3RhbGxhdGlvbi4AAABYdzVTMghhZGRuZXh1c6cDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGFkZG5leHVzCnN1bW1hcnk6ICdBZGQgYSBuZXh1cyBsb2NhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ3JlYXRlIGEgbmV3IG5leHVzIGVudGl0eSBhdCB0aGUgZ2l2ZW4gY29vcmRpbmF0ZXMuIE5leHVzZXMgYXJlIG93bmVkIGJ5IHRoZSBjb250cmFjdCBhbmQgc2VydmUgYXMgZml4ZWQgZ2F0aGVyaW5nIHBvaW50cyB3aGVyZSBwbGF5ZXJzIGNhbiB3cmFwLCB1bndyYXAsIGRlcGxveSwgYW5kIG90aGVyd2lzZSBpbnRlcmFjdCB3aXRoIE5GVC1iYWNrZWQgYXNzZXRzLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAABQEZlLUzIJYWRkb3JhY2xlAAAAAACANFU8BWJsZW5k/AItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogYmxlbmQKc3VtbWFyeTogJ0JsZW5kIGNhcmdvIHN0YWNrcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ29tYmluZSBtdWx0aXBsZSBjYXJnbyBzdGFja3Mgb2YgdGhlIHNhbWUgaXRlbSB0eXBlIGludG8gYSBzaW5nbGUgc3RhY2sgd2l0aCBuZXcgYmxlbmRlZCBzdGF0cy4gQWxsIGlucHV0IHN0YWNrcyBtdXN0IHNoYXJlIHRoZSBzYW1lIGl0ZW0gaWQuIFRoZSBvdXRwdXQgc3RhY2sgaGFzIHRoZSBjb21iaW5lZCBxdWFudGl0eSBvZiBhbGwgaW5wdXRzLgAAAIe+FJ0+CGJ1aWxkam9iAAAAyDTWFJ0+CWJ1aWxkcGxvdAAAAAAARIWmQQZjYW5jZWzCAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjYW5jZWwKc3VtbWFyeTogJ0NhbmNlbCBzY2hlZHVsZWQgdGFza3MnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkNhbmNlbCB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiB0YXNrcyBmcm9tIHRoZSBlbmQgb2YgYW4gZW50aXR5J3Mgc2NoZWR1bGUuIFRhc2tzIHRoYXQgYXJlIGltbXV0YWJsZSBhbmQgaW4gcHJvZ3Jlc3MgY2Fubm90IGJlIGNhbmNlbGxlZC4AUnT6RIWmQQtjYW5jZWxidWlsZAAA8jIXRYWmQQtjYW5jZWxjcmFmdAAAQKYxmpOxQQpjYXN0YmFsbG90AOCTUfeqfE1DDGNoYXJ0ZXJyZWFkeQAAQIpOH+lMRApjbGFpbWJ1aWxkAABAXuYi6UxECmNsYWltY3JhZnQAAADINFbpTEQJY2xhaW1wbG90AHBVviZj6UxEDGNsYWltc3RhcnRlcgAAAKgb32lURAljbGVhbnJzdnDsAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjbGVhbnJzdnAKc3VtbWFyeTogJ0NsZWFuIHVwIHBhc3QgZXBvY2ggcmVzZXJ2ZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkVyYXNlIHJlc2VydmUgdGFibGUgcm93cyBmcm9tIGEgcGFzdCBlcG9jaC4gQ2Fubm90IGNsZWFuIHRoZSBjdXJyZW50IG9yIGZ1dHVyZSBlcG9jaHMuIFRoZSBtYXhfcm93cyBwYXJhbWV0ZXIgY2FwcyB0aGUgbnVtYmVyIG9mIHJvd3MgZXJhc2VkIHBlciBjYWxsIHRvIGxpbWl0IENQVSB1c2FnZS4AgIrH5GtURApjbGVhcnRhYmxlvgEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY2xlYXJ0YWJsZQpzdW1tYXJ5OiAnREVCVUc6IGNsZWFydGFibGUgYWN0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tkJe56KqMdUQMY2x1c3RlcmNyYWZ0AAAAAABkJyVFBmNvbW1pdOwBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNvbW1pdApzdW1tYXJ5OiAnU2V0IGNvbW1pdCB2YWx1ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKU2V0IHRoZSBpbml0aWFsIGNvbW1pdCB2YWx1ZSBkdXJpbmcgZ2FtZSBpbml0aWFsaXphdGlvbi4AAGA0MrcmRQljb25maWdsb2fdAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjb25maWdsb2cKc3VtbWFyeTogJ0xvZyBnYW1lIGNvbmZpZ3VyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiB0aGF0IGxvZ3MgdGhlIGN1cnJlbnQgZ2FtZSBjb25maWd1cmF0aW9uLiBDYWxsZWQgaW5saW5lIGFmdGVyIGluaXRpYWxpemF0aW9uIHRvIGJyb2FkY2FzdCBjb25maWcgdmlhIGFjdGlvbiB0cmFjZXMuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AAAAAgLzMRQVjcmFmdMgDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNyYWZ0CnN1bW1hcnk6ICdDcmFmdCBpdGVtcyBmcm9tIGEgcmVjaXBlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUcmFuc2Zvcm0gY2FyZ28gaXRlbXMgaW50byBhIG5ldyBpdGVtIHVzaW5nIGEgcmVjaXBlLiBUaGUgZW50aXR5IG11c3QgaGF2ZSBhIGNyYWZ0ZXIgbW9kdWxlIGluc3RhbGxlZC4gQ29uc3VtZXMgZW5lcmd5IGFuZCBzY2hlZHVsZXMgYSBjcmFmdGluZyB0YXNrIHdpdGggZHVyYXRpb24gYmFzZWQgb24gdG90YWwgaW5wdXQgbWFzcyBhbmQgY3JhZnRlciBzcGVlZC4gSW5wdXQgcXVhbnRpdGllcyBtdXN0IGV4YWN0bHkgbWF0Y2ggdGhlIHJlY2lwZSByZXF1aXJlbWVudHMuAAAAh768zEUIY3JhZnRqb2IAAADILqmL2EkJZGJnY3JlZGl0AACAyiZNI9lJCmRiZ21hbmRhdGUAADCnVzFT2UkLZGJncGFnZXJvd3MAAAAAil1d2UkIZGJncHVyZ2UAAAAAOBuF2UkIZGJnc2VhdHMAAADw2eWpokoJZGVsZW50aXR5AAAAAA27SKVKCGRlbW9saXNo8QMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZGVtb2xpc2gKc3VtbWFyeTogJ0RlbW9saXNoIGEgc3RhdGlvbmFyeSBlbnRpdHknCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkRlY29tbWlzc2lvbiBhbiBlbnRpdHksIGVyYXNpbmcgaXQgZnJvbSB0aGUgZ2FtZS4gVGhlIGVudGl0eSBtdXN0IGJlIGlkbGUsIGhhdmUgZW1wdHkgY2FyZ28sIGFuZCBoYXZlIG5vIGluc3RhbGxlZCBtb2R1bGVzIChyZW1vdmUgZWFjaCB2aWEgcm1tb2R1bGUgZmlyc3QpLiBTY2hlZHVsZXMgYSBkZW1vbGlzaCB0YXNrIHRoYXQgZXJhc2VzIHRoZSBlbnRpdHkgb24gcmVzb2x1dGlvbi4gT25seSB2YWxpZCBmb3IgZW50aXRpZXMgdGhhdCBjYW5ub3QgbW92ZTsgdXNlIHVuZGVwbG95IG9yIHdyYXBlbnRpdHkgZm9yIHRoZSByZXN0LgAAAAB4GqtKBmRlcGxveewCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGRlcGxveQpzdW1tYXJ5OiAnRGVwbG95IGEgcGFja2VkIGVudGl0eScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVW5wYWNrIGEgcGFja2VkIGVudGl0eSBpdGVtIChwYWNrZWQgc2hpcCBvciBwYWNrZWQgY29udGFpbmVyKSBmcm9tIGNhcmdvLCBzY2hlZHVsaW5nIGEgZGVwbG95IHRhc2sgdGhhdCBjcmVhdGVzIHRoZSBuZXcgZW50aXR5IGF0IHRoZSBkZXBsb3lpbmcgZW50aXR5J3MgbG9jYXRpb24gdXBvbiByZXNvbHV0aW9uLgCAujTjTKtKCmRlcG90c3RvcmUAAABQ0ORMq0oJZGVwb3R0YWtlAACAzy5PhbBKCmRlc2NlbnRpdHnJAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBkZXNjZW50aXR5CnN1bW1hcnk6ICdEZXNjcmliZSBhIHBhY2tlZCBlbnRpdHknCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIGEgaHVtYW4tcmVhZGFibGUgZGVzY3JpcHRpb24gc3RyaW5nIGZvciBhIHBhY2tlZCBlbnRpdHksIGRlcml2ZWQgZnJvbSB0aGUgZW50aXR5IGl0ZW0gaWQsIGh1bGwgc3RhdHMsIGFuZCB0aGUgbGlzdCBvZiBpbnN0YWxsZWQgbW9kdWxlIGl0ZW0gaWRzIGFuZCBzdGF0cy4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyBhbmQgTkZUIHJlbmRlcmVycyB0byBkaXNwbGF5IHBhY2tlZCBlbnRpdGllcy4AAAAAqHjMVAZlbmFibGXdAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBlbmFibGUKc3VtbWFyeTogJ1NldCBlbmFibGVkIHN0YXRlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGlzIGdhbWUgb2YgU2hpcGxvYWQugLGRlF2DulsMZml4Y2FyZ29tYXNzkAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZml4Y2FyZ29tYXNzCnN1bW1hcnk6ICdERUJVRzogcmVjb21wdXRlIGVudGl0eSBjYXJnbyBtYXNzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZWNvbXB1dGUgYW5kIHJld3JpdGUgYW4gZW50aXR5J3MgY2FyZ28gbWFzcyBmcm9tIGl0cyBjdXJyZW50IGNhcmdvLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuIEF2YWlsYWJsZSBmb3IgcmVwYWlyaW5nIGRyaWZ0IGJldHdlZW4gY2FjaGVkIGNhcmdvIG1hc3MgYW5kIHRoZSB0cnVlIG1hc3MgZGVyaXZlZCBmcm9tIGNhcmdvIHJvd3MuAABOTqrsulsKZml4aXRlbWlkcwAAolFbXYUuXQtmb3JjZXJldmVhbL4ELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGZvcmNlcmV2ZWFsCnN1bW1hcnk6ICdERUJVRzogZm9yY2UtZmluYWxpemUgYW4gZXBvY2ggZnJvbSBleGlzdGluZyByZXZlYWxzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpGaW5hbGl6ZSBhIHN0dWNrIGVwb2NoIGJ5IGNvbXB1dGluZyBpdHMgc2VlZCBmcm9tIHRoZSByZXZlYWxzIGFscmVhZHkgc3VibWl0dGVkLCB3aXRob3V0IHdhaXRpbmcgZm9yIHRoZSBjb25maWd1cmVkIHRocmVzaG9sZC4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LiBUaGUgc2VlZCBpcyBkZXJpdmVkIHNvbGVseSBmcm9tIHRoZSBwcmUtaW1hZ2UtbG9ja2VkIHJldmVhbHMgYWxyZWFkeSBvbiBjaGFpbjsgbm8gYWRtaW4tc3VwcGxpZWQgZW50cm9weSBpcyBpbnRyb2R1Y2VkLiBVc2VkIHRvIHVuYmxvY2sgZXBvY2ggcHJvZ3Jlc3Npb24gd2hlbiB0aGUgdGhyZXNob2xkIGNhbm5vdCBvdGhlcndpc2UgYmUgbWV0LgAAAACANDVdBWZvdW5kAAAAAABc1bJhBmdhdGhlcpcDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdhdGhlcgpzdW1tYXJ5OiAnR2F0aGVyIHJlc291cmNlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKR2F0aGVyIHJlc291cmNlcyBhdCB0aGUgc2hpcCdzIGN1cnJlbnQgbG9jYXRpb24uIE9ubHkgd29ya3MgYXQgZ2F0aGVyYWJsZSBsb2NhdGlvbiB0eXBlcy4gU2NoZWR1bGVzIGEgZ2F0aGVyIHRhc2sgdGhhdCBjb25zdW1lcyBlbmVyZ3kgYW5kIHlpZWxkcyBjYXJnbyBiYXNlZCBvbiB0aGUgc2hpcCdzIGdhdGhlcmVyIHN0YXRzIGFuZCB0aGUgbG9jYXRpb24ncyByZXNvdXJjZSBjb21wb3NpdGlvbi4AwDSxXtWyYQpnYXRoZXJwbGFuAJCVigs7rKZiDGdlbmVzaXNmbGVldKkELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdlbmVzaXNmbGVldApzdW1tYXJ5OiAnTWludCB0aGUgb25lLXRpbWUgZ2VuZXNpcyBmbGVldCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRW1wbGFjZSB0aGUgb25lLXRpbWUgZ2VuZXNpcyBmbGVldDogYSBjYWxsZXItc3VwcGxpZWQgc2V0IG9mIGVudGl0aWVzIChzaGlwcywgc3RydWN0dXJlcywgYW5kIGNvbnRhaW5lcnMpIHdyaXR0ZW4gdG8gdGhlIHdvcmxkIGFzLWlzLiBWYWxpZCBvbmx5IGR1cmluZyB0aGUgcHJlLWdlbmVzaXMgd2luZG93LCBiZWZvcmUgZXBvY2ggMSBpcyBmaW5hbGl6ZWQuIFRoZSBzdXBwbGllZCBlbnRpdHkgaWRzIGFyZSBob25vcmVkIGFuZCB0aGUgaWQgc2VxdWVuY2UgaXMgYWR2YW5jZWQgcGFzdCB0aGVtOyBpZCAwIGlzIHJlc2VydmVkIGZvciB0aGUgR2VuZXNpcyBOZXh1cy4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LpDipRw7rKZiDGdlbmVzaXN3b3JsZOcHLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdlbmVzaXN3b3JsZApzdW1tYXJ5OiAnRm91bmQgYSB3b3JsZCBhdCBnYW1lIGxhdW5jaCB3aXRoIGl0cyBjaXZpYyBjaGFydGVycyBhbHJlYWR5IGNvbXBsZXRlZCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRm91bmQgYSBwbGFuZXQgYXMgYSB3b3JsZCBkdXJpbmcgdGhlIHByZS1nZW5lc2lzIHdpbmRvdywgYmVmb3JlIGVwb2NoIDEgaXMgZmluYWxpemVkLCB3aXRoIHRoZSBsaXN0ZWQgY2hhcnRlciBub2RlcyBjb21wbGV0ZWQgaW4gb3JkZXIuIFRoZSBmb3VuZGVyIG11c3QgaG9sZCBhIGNvbXBhbnkgb24gdGhlIHBsYXRmb3JtOyB0aGUgZm91bmRlciBpcyBjcmVkaXRlZCB3aXRoIGxpZmV0aW1lIGluZmx1ZW5jZSBlcXVhbCB0byB0aGUgc3VtbWVkIGNvc3Qgb2YgdGhlIGxpc3RlZCBub2RlcywgYW5kIGVhY2ggbm9kZSBpcyB0aGVuIGNvbXBsZXRlZCB0aHJvdWdoIHRoZSBzYW1lIHJ1bGVzIGEgY2hhcnRlciBjcmFuayBhcHBsaWVzOiBwcmVyZXF1aXNpdGVzIG11c3QgYmUgc2F0aXNmaWVkIGJ5IGVhcmxpZXIgbm9kZXMgaW4gdGhlIGxpc3QsIGEgc3Bhd24gbm9kZSBhZG9wdHMgYSBjaXZpYyBlbnRpdHkgb2YgaXRzIGtpbmQgYWxyZWFkeSBzdGFuZGluZyBhdCB0aGUgbG9jYXRpb24gb3Igc3Bhd25zIG9uZSwgYW5kIGEgcmVmaXQgbm9kZSByZWZpdHMgdGhlIGVudGl0eSByZWNvcmRlZCBmb3IgaXRzIHRhcmdldC4gU3BlbnQgYWR2YW5jZXMgYnkgZXZlcnkgbm9kZSdzIGNvc3QsIHNvIHRoZSByZXN1bHRpbmcgd29ybGQgaXMgb25lIGEgc2luZ2xlIGZvdW5kZXIgY291bGQgaGF2ZSBhZHZhbmNlZCBhbG9uZS4gRWFjaCBsb2NhdGlvbiBjYW4gYmUgZm91bmRlZCB0aGlzIHdheSBvbmNlLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkugA99KTp9smIMZ2V0YnVpbGRqb2JzAADAVfmahrJiCmdldGNoYXJ0ZXIAoNTN+ZqGsmIMZ2V0Y2hhcnR0cmVlAOCTUTffhrJiDGdldGNocnRyZWFkeQAAwFUZ64iyYgpnZXRjbHVzdGVyAAAAYG5NirJiCWdldGNvbmZpZ8oCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGNvbmZpZwpzdW1tYXJ5OiAnR2V0IGdhbWUgY29uZmlndXJhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyB0aGUgZ2FtZSBjb25maWd1cmF0aW9uIGluY2x1ZGluZyBkZWZhdWx0IGVudGl0eSBzdGF0cyBmb3Igd2FyZWhvdXNlcyBhbmQgY29udGFpbmVycywgYW5kIHRoZSBmdWxsIGl0ZW0gZGVmaW5pdGlvbnMgdGFibGUugA99eZmLsmIMZ2V0Y3JhZnRqb2JzAAAAqJIilbJiCWdldGRlY29tcAAAAEjTSJWyYglnZXRkZW1hbmQAAEB2mFaVsmIKZ2V0ZGVwb3NpdAAAAACZVpWyYghnZXRkZXBvdAAAFJomY5eyYgtnZXRkaXN0YW5jZQAAVDyOuaiyYgtnZXRlbGlnaWJsZcgDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVsaWdpYmxlCnN1bW1hcnk6ICdHZXQgZWxpZ2libGUgcmVzb3VyY2UgaXRlbSBJRHMgYXQgYSBsb2NhdGlvbiBhbmQgc3RyYXR1bScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGxpc3Qgb2YgcmVzb3VyY2UgaXRlbSBJRHMgZWxpZ2libGUgdG8gYmUgZ2F0aGVyZWQgYXQgdGhlIGdpdmVuIGNvb3JkaW5hdGVzIGFuZCBzdHJhdHVtIGRlcHRoLiBJdGVtcyBhcmUgZ2F0ZWQgYnkgYm90aCB0aGUgbG9jYXRpb24ncyByZXNvdXJjZSBwcm9maWxlIGFuZCB0aGUgZGVwdGggdGhyZXNob2xkIGZvciBlYWNoIHRpZXIuAADAEeWpsmIJZ2V0ZW50Y2xzjAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0ZW50Y2xzCnN1bW1hcnk6ICdHZXQgZW50aXR5IGNsYXNzIGVudW0gdmFsdWVzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgZnVsbCBzZXQgb2YgZW50aXR5IGNsYXNzIGVudW0gdmFsdWVzIGFuZCB0aGVpciBzdHJpbmcgbmFtZXMgKE9yYml0YWxWZXNzZWwsIFBsYW5ldGFyeVN0cnVjdHVyZSkuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGVjb2RlIGVudGl0eSBjbGFzcyBpZGVudGlmaWVycy4AsHLZ5amyYgtnZXRlbnRpdGllc6QCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVudGl0aWVzCnN1bW1hcnk6ICdHZXQgYWxsIGVudGl0aWVzIGZvciBhIHBsYXllcicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmV0dXJucyBmdWxsIGVudGl0eSBpbmZvIGZvciBhbGwgZW50aXRpZXMgb3duZWQgYnkgYSBwbGF5ZXIuIE9wdGlvbmFsbHkgZmlsdGVyIGJ5IGVudGl0eSB0eXBlLgAA8NnlqbJiCWdldGVudGl0eaICLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVudGl0eQpzdW1tYXJ5OiAnR2V0IGVudGl0eSBzdGF0ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmV0dXJucyB0aGUgY3VycmVudCBzdGF0ZSBvZiBhbiBlbnRpdHkgaW5jbHVkaW5nIGlkZW50aXR5LCBjYXJnbywgc2NoZWR1bGUgc3RhdGUsIGFuZCB0eXBlLXNwZWNpZmljIGZpZWxkcy6Qp7s1U7qyYgxnZXRmb290cHJpbnQAALxBKq3psmILZ2V0aW5mZGVjYXkAoNBUOq7psmIMZ2V0aW5mbHVlbmNlAACUjmav6bJiC2dldGluZnZhbHVlAABMNkmq7LJiC2dldGl0ZW1kYXRhqAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0aXRlbWRhdGEKc3VtbWFyeTogJ0dldCBmdWxsIGl0ZW0gY2F0YWxvZycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGNvbXBsZXRlIGl0ZW0gY2F0YWxvZyBhcyB0aGUgY29udHJhY3Qgc2VlcyBpdCwgaW5jbHVkaW5nIHR5cGUsIHN1YnR5cGUsIHRpZXIsIG1hc3MsIGFuZCBvdGhlciBzdGF0aWMgbWV0YWRhdGEuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgYW5kIGNsaWVudHMgdG8gbWlycm9yIHRoZSBjb250cmFjdCdzIGl0ZW0gZGVmaW5pdGlvbnMuAABOTqrssmIKZ2V0aXRlbWlkc4YDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGl0ZW1pZHMKc3VtbWFyeTogJ0dldCBpdGVtIGlkIHRvIG5hbWUgbWFwcGluZ3MnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIG1hcHBpbmcgb2YgaXRlbSBpZCBjb25zdGFudHMgdG8gdGhlaXIgY2Fub25pY2FsIHN0cmluZyBuYW1lcy4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byByZXNvbHZlIG51bWVyaWMgaXRlbSBpZHMgdG8gaHVtYW4tcmVhZGFibGUgaWRlbnRpZmllcnMuAAAAWKrssmIIZ2V0aXRlbXOaAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRpdGVtcwpzdW1tYXJ5OiAnR2V0IGFsbCBhdmFpbGFibGUgaXRlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgYSBsaXN0IG9mIGFsbCBpdGVtcyBpbiB0aGUgZ2FtZSBpbmNsdWRpbmcgdGhlaXIgaWQsIGJhc2UgcHJpY2UsIGFuZCBtYXNzLgBU9Vmq7LJiC2dldGl0ZW10eXBlAIBV9Vmq7LJiDGdldGl0ZW10eXBlc4gDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGl0ZW10eXBlcwpzdW1tYXJ5OiAnR2V0IGl0ZW0gdHlwZSBlbnVtIHZhbHVlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgc2V0IG9mIGl0ZW0gdHlwZSBlbnVtIHZhbHVlcyBhbmQgdGhlaXIgc3RyaW5nIG5hbWVzIChyZXNvdXJjZSwgY29tcG9uZW50LCBtb2R1bGUsIGVudGl0eSkuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGVjb2RlIGl0ZW0gdHlwZSBpZGVudGlmaWVycy4ATFYyTQezYgtnZXRraW5kbWV0YfgDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGtpbmRtZXRhCnN1bW1hcnk6ICdHZXQgZW50aXR5IGtpbmQgbWV0YWRhdGEnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBlbnRpdHkga2luZCByZWdpc3RyeSBhbmQgdGVtcGxhdGUgcmVnaXN0cnksIGluY2x1ZGluZyBlYWNoIGtpbmQncyBjbGFzc2lmaWNhdGlvbiwgY2FwYWJpbGl0eSBmbGFncywgWi1jb29yZGluYXRlLCBhbmQgZGVmYXVsdCBsYWJlbCwgcGx1cyB0aGUgbWFwcGluZyBvZiBlbnRpdHkgaXRlbSBpZHMgdG8ga2luZHMgd2l0aCBkaXNwbGF5IGxhYmVscy4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBpbnRlcnByZXQgZW50aXR5IGtpbmRzIGFuZCBjYXBhYmlsaXRpZXMuACZ12SAas2ILZ2V0bG9jYXRpb27iAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRsb2NhdGlvbgpzdW1tYXJ5OiAnR2V0IGxvY2F0aW9uIGluZm9ybWF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGluZm9ybWF0aW9uIGFib3V0IGEgbG9jYXRpb24gaW5jbHVkaW5nIHdoZXRoZXIgYSBzeXN0ZW0gZXhpc3RzLCBhbmQgZm9yIGVhY2ggaXRlbTogcHJpY2UsIHN1cHBseSwgcmFyaXR5IG11bHRpcGxpZXIsIGFuZCBsb2NhdGlvbiBtdWx0aXBsaWVyLgCAySYhGrNiCmdldGxvY2RhdGH+Ai0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRsb2NkYXRhCnN1bW1hcnk6ICdHZXQgZGVyaXZlZCBsb2NhdGlvbiBkYXRhJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGRlcml2ZWQgbG9jYXRpb24gZGF0YSBpbmNsdWRpbmcgc3RhdGljIHByb3BlcnRpZXMgKHR5cGUsIGRpZmZpY3VsdHksIHNlZWRzKSBmcm9tIHRoZSBnYW1lIHNlZWQgYW5kIGVwb2NoLXNwZWNpZmljIHByb3BlcnRpZXMgKGFjdGl2ZSwgc2VlZHMpIGZyb20gdGhlIGN1cnJlbnQgZXBvY2ggc2VlZC4AAFsoTyezYgpnZXRtaW50Y2ZnAOCTUTdPJ7NiDGdldG1pbnRyZWFkeQAAsKo+JyqzYgtnZXRtb2R0eXBlc9YDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldG1vZHR5cGVzCnN1bW1hcnk6ICdHZXQgbW9kdWxlIHR5cGUgZW51bSB2YWx1ZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBtb2R1bGUgdHlwZSBlbnVtIHZhbHVlcyBhbmQgdGhlaXIgc3RyaW5nIG5hbWVzIChhbnksIGVuZ2luZSwgZ2VuZXJhdG9yLCBnYXRoZXJlciwgbG9hZGVyLCB3YXJwLCBjcmFmdGVyLCBsYXVuY2hlciwgc3RvcmFnZSwgaGF1bGVyKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZWNvZGUgbW9kdWxlIHN1YnR5cGUgaWRlbnRpZmllcnMgYW5kIHNsb3QgY29tcGF0aWJpbGl0eS4AAFZRJyqzYgpnZXRtb2R1bGVzgAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0bW9kdWxlcwpzdW1tYXJ5OiAnR2V0IGFsbCBtb2R1bGUgaXRlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBzdWJzZXQgb2YgaXRlbXMgY2xhc3NpZmllZCBhcyBtb2R1bGVzLCBpbmNsdWRpbmcgZWFjaCBtb2R1bGUncyBpZCwgbWFzcywgc3VidHlwZSwgYW5kIHRpZXIuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZW51bWVyYXRlIGluc3RhbGxhYmxlIGVxdWlwbWVudC4AAPDnGjWzYglnZXRuZWFyYnnKAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRuZWFyYnkKc3VtbWFyeTogJ0dldCBuZWFyYnkgcmVhY2hhYmxlIHN5c3RlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgbmVhcmJ5IHN5c3RlbXMgcmVhY2hhYmxlIGJ5IGFuIGVudGl0eSBmcm9tIGl0cyBwcm9qZWN0ZWQgbG9jYXRpb24uIFJldHVybnMgY3VycmVudCBzdGF0ZSAod2l0aCBjb21wbGV0ZWQgdGFza3MgcmVzb2x2ZWQpLCBwcm9qZWN0ZWQgc3RhdGUgKGFmdGVyIGFsbCBzY2hlZHVsZWQgdGFza3MpLCBhbmQgYSBsaXN0IG9mIHJlYWNoYWJsZSBzeXN0ZW1zIHdpdGggZGlzdGFuY2UsIGVuZXJneSBjb3N0LCBhbmQgZmxpZ2h0IHRpbWUuAIDC5uQ1s2IKZ2V0bmZ0YmFzZQAAAF3T5TWzYgpnZXRuZnRpbmZv8AMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0bmZ0aW5mbwpzdW1tYXJ5OiAnR2V0IE5GVCBzY2hlbWEgYW5kIHRlbXBsYXRlIGNvbmZpZ3VyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBBdG9taWNBc3NldHMgc2NoZW1hcyBhbmQgdGVtcGxhdGVzIHRoZSBnYW1lIGNvbnRyYWN0IGV4cGVjdHMsIHBsdXMgdGhlIGN1cnJlbnQgYGl0ZW1faWQg4oaSICh0ZW1wbGF0ZV9pZCwgc2NoZW1hX25hbWUpYCBtYXBwaW5nIHN0b3JlZCBpbiB0aGUgYG5mdGNvbmZpZ2AgdGFibGUuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gc3luYyBhdG9taWNhc3NldHMgc3RhdGUgd2l0aCB0aGUgY29udHJhY3QuAAC4yptYs2IJZ2V0cGxheWVy/QItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0cGxheWVyCnN1bW1hcnk6ICdHZXQgcGxheWVyIGluZm9ybWF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGluZm9ybWF0aW9uIGFib3V0IGEgcGxheWVyIGluY2x1ZGluZyBiYWxhbmNlLCBkZWJ0LCBuZXR3b3J0aCwgZW50aXR5IGNvdW50cywgYW5kIHByaWNpbmcgZm9yIG5leHQgcHVyY2hhc2VzLiBSZXR1cm5zIGlzX3BsYXllcj1mYWxzZSBpZiB0aGUgYWNjb3VudCBoYXMgbm90IGpvaW5lZCB0aGUgZ2FtZS4AAAAgUlqzYgdnZXRwb29sAAAAADhSWrNiCGdldHBvb2xzAKCyyfjRW7NiDGdldHByb2pzdGF0ZcsDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHByb2pzdGF0ZQpzdW1tYXJ5OiAnR2V0IHByb2plY3RlZCBlbnRpdHkgc3RhdGUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBwcm9qZWN0ZWQgc3RhdGUgb2YgYW4gZW50aXR5IGFmdGVyIGFwcGx5aW5nIHRoZSBuZXh0IHRhc2tfY291bnQgc2NoZWR1bGVkIHRhc2tzIChvciBhbGwgdGFza3MgaWYgdGFza19jb3VudCBpcyBvbWl0dGVkKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBwcmV2aWV3IHRoZSByZXN1bHQgb2YgYW4gZW50aXR5J3Mgc2NoZWR1bGUgd2l0aG91dCByZXNvbHZpbmcgb24tY2hhaW4uAABQ1SF1s2IJZ2V0cmVjaXBlpgMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0cmVjaXBlCnN1bW1hcnk6ICdHZXQgYSBzaW5nbGUgY3JhZnRpbmcgcmVjaXBlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgcmVjaXBlIHdob3NlIG91dHB1dCBtYXRjaGVzIHRoZSBnaXZlbiBpdGVtIGlkLCBpbmNsdWRpbmcgaXRzIGlucHV0cywgYmxlbmQgd2VpZ2h0cywgc3RhdCBzbG90cywgYW5kIHJlc29sdmVkIGl0ZW0gbWFzcyBpbmZvLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGRpc3BsYXkgY3JhZnRpbmcgcmVxdWlyZW1lbnRzLgAAVtUhdbNiCmdldHJlY2lwZXOsAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZWNpcGVzCnN1bW1hcnk6ICdMaXN0IGNyYWZ0aW5nIHJlY2lwZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIGEgcGFnaW5hdGVkIGxpc3Qgb2YgY3JhZnRpbmcgcmVjaXBlcyBzdGFydGluZyBhdCB0aGUgcHJvdmlkZWQgbG93ZXIgYm91bmQgb3V0cHV0IGl0ZW0gaWQsIHVwIHRvIHRoZSBzcGVjaWZpZWQgbGltaXQuIEVhY2ggZW50cnkgaW5jbHVkZXMgaW5wdXRzLCBibGVuZCB3ZWlnaHRzLCBzdGF0IHNsb3RzLCBhbmQgcmVzb2x2ZWQgaXRlbSBtYXNzIGluZm8uAADOBmF1s2IKZ2V0cmVzY2F0c54DLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlc2NhdHMKc3VtbWFyeTogJ0dldCByZXNvdXJjZSBjYXRlZ29yeSBlbnVtIHZhbHVlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgc2V0IG9mIHJlc291cmNlIGNhdGVnb3J5IGVudW0gdmFsdWVzIGFuZCB0aGVpciBzdHJpbmcgbmFtZXMgKG9yZSwgZ2FzLCByZWdvbGl0aCwgYmlvbWFzcywgY3J5c3RhbCkuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGVjb2RlIHJlc291cmNlIHN1YnR5cGUgaWRlbnRpZmllcnMuALDaV2F1s2ILZ2V0cmVzZXJ2ZXP8Ay0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZXNlcnZlcwpzdW1tYXJ5OiAnR2V0IGN1cnJlbnQgcmVzZXJ2ZSBtb2RpZmljYXRpb25zIGF0IGEgbG9jYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgdGhlIGNoYWluJ3MgbW9kaWZpY2F0aW9ucyB0byBkZXJpdmVkIHJlc2VydmVzIGF0IHRoZSBnaXZlbiBjb29yZGluYXRlIGZvciB0aGUgY3VycmVudCBlcG9jaCBhcyBhIGxpc3Qgb2Yge3N0cmF0dW0sIHJlbWFpbmluZ30gcGFpcnMuIFN0cmF0YSBub3QgcHJlc2VudCBpbiB0aGUgcmVzcG9uc2UgdXNlIHRoZWlyIGRlcml2ZWQgaW5pdGlhbCByZXNlcnZlLiBDb21wb3NlIHdpdGggU0RLIGRlcml2YXRpb24gdG8gZ2V0IHRoZSBmdWxsIHBlci1sb2NhdGlvbiBzdHJhdGEgdmlldy6AFbqaYnWzYgxnZXRyZXNvdXJjZXOHAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZXNvdXJjZXMKc3VtbWFyeTogJ0dldCBhbGwgcmVzb3VyY2UgaXRlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBzdWJzZXQgb2YgaXRlbXMgY2xhc3NpZmllZCBhcyByZXNvdXJjZXMsIGluY2x1ZGluZyBlYWNoIHJlc291cmNlJ3MgaWQsIG1hc3MsIHN1YnR5cGUsIGFuZCB0aWVyLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGVudW1lcmF0ZSBnYXRoZXJhYmxlIG1hdGVyaWFscy4AAAA404izYghnZXRzbG90c7sDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHNsb3RzCnN1bW1hcnk6ICdHZXQgZW50aXR5IHNsb3QgbGF5b3V0cycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIG1vZHVsZSBzbG90IGxheW91dCBmb3IgZXZlcnkgZW50aXR5IGl0ZW0gdHlwZSwgbGlzdGluZyB0aGUgb3JkZXJlZCBzbG90IHR5cGVzIGF2YWlsYWJsZSBmb3IgbW9kdWxlIGluc3RhbGxhdGlvbi4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZXRlcm1pbmUgd2hpY2ggbW9kdWxlIHR5cGVzIGFyZSBjb21wYXRpYmxlIHdpdGggYSBnaXZlbiBlbnRpdHkgaHVsbC4AgNTZ3IyzYgpnZXRzdHJhdHVt0gItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0c3RyYXR1bQpzdW1tYXJ5OiAnR2V0IHJlc291cmNlIHN0cmF0dW0gZGF0YScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyByZXNvdXJjZSBzdHJhdHVtIGRhdGEgZm9yIGEgc3BlY2lmaWMgZGVwdGggbGF5ZXIgYXQgYSBjb29yZGluYXRlLCBpbmNsdWRpbmcgdGhlIHN0cmF0dW0gc2VlZCBpbmZvIGFuZCBkZXJpdmVkIHJlc291cmNlIHN0YXRzLoCVu0ZKjbNiDGdldHN1bW1hcmllc+gCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHN1bW1hcmllcwpzdW1tYXJ5OiAnR2V0IGVudGl0eSBzdW1tYXJpZXMgZm9yIGEgcGxheWVyJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZXR1cm5zIGxpZ2h0d2VpZ2h0IHN1bW1hcmllcyBvZiBhbGwgZW50aXRpZXMgb3duZWQgYnkgYSBwbGF5ZXIgaW5jbHVkaW5nIHR5cGUsIGlkLCBvd25lciwgbmFtZSwgbG9jYXRpb24sIGFuZCBpZGxlIHN0YXR1cy4gT3B0aW9uYWxseSBmaWx0ZXIgYnkgZW50aXR5IHR5cGUu4JNRV2W6s2IMZ2V0dm90ZXJlYWR5AAAAAFhlurNiCGdldHZvdGVzAABUpE1eyrNiC2dldHdvcm1ob2xlAJAdnubmqullDGdyb3VwdHJhbnNpdAAAotrm5qrpZQtncm91cHRyYXZlbJoELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdyb3VwdHJhdmVsCnN1bW1hcnk6ICdNb3ZlIG11bHRpcGxlIGVudGl0aWVzIHRvZ2V0aGVyJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbml0aWF0ZSBncm91cCB0cmF2ZWwgZm9yIG11bHRpcGxlIGVudGl0aWVzIHRvIGEgZGVzdGluYXRpb24uIEFsbCBlbnRpdGllcyBtdXN0IGJlIGF0IHRoZSBzYW1lIGxvY2F0aW9uIGFuZCBvd25lZCBieSB0aGUgY2FsbGVyLiBBdCBsZWFzdCBvbmUgZW50aXR5IHdpdGggZW5naW5lcyBpcyByZXF1aXJlZCB0byBwcm92aWRlIHRocnVzdC4gRmxpZ2h0IGR1cmF0aW9uIGlzIGNhbGN1bGF0ZWQgZnJvbSBjb21iaW5lZCB0aHJ1c3QgYW5kIHRvdGFsIG1hc3Mgb2YgYWxsIGVudGl0aWVzLiBDcmVhdGVzIGFuIGVudGl0eWdyb3VwIGZvciBhdG9taWMgcmVzb2x1dGlvbiBhbmQgY2FuY2VsbGF0aW9uLgAAAAAA0LBpBGhhc2j4AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBoYXNoCnN1bW1hcnk6ICdDYWxjdWxhdGUgc2hhMjU2IGhhc2gnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkNhbGN1bGF0ZXMgdGhlIHNoYTI1NiBoYXNoIG9mIGEgc3RyaW5nIGJhc2VkIHVzaW5nIHRoZSBnYW1lIHNlZWQuAAAAQITSsGkHaGFzaDUxMvsBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGhhc2g1MTIKc3VtbWFyeTogJ0NhbGN1bGF0ZSBzaGE1MTIgaGFzaCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ2FsY3VsYXRlcyB0aGUgc2hhNTEyIGhhc2ggb2YgYSBzdHJpbmcgYmFzZWQgdXNpbmcgdGhlIGdhbWUgc2VlZC4AKLsG5UurdAtpbXBvcnRjYXJnbwAAQIwK5UurdAppbXBvcnRjZWxsAOCzy1PlS6t0DGltcG9ydGVudGl0eQAAGqJV5UurdAtpbXBvcnRlcG9jaAAAqqaX5UurdAtpbXBvcnRncm91cADAFspr5kurdAxpbXBvcnRuZnRjZmcAcJU3seZLq3QMaW1wb3J0cGxheWVyALqvwurmS6t0DWltcG9ydHJlc2VydmUAAFQ2GedLq3QLaW1wb3J0c3RhdGUAAAAAAAAwHX0Eam9pbsQBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGpvaW4Kc3VtbWFyeTogJ0pvaW4gYSBnYW1lJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpKb2luIGEgZ2FtZSBvZiBTaGlwbG9hZAAAAAA0NLWJBmxhdW5jaAAAAAAAAJAMjQRsb2FkAAAA8Mmom6eTCW1pbnRyZWFkeQAAAAAquqw2lQhtb3ZldGlsZQAAgPoumquzmQpuYXR1cmFsaXplAAAAiFcz6fKaCW5mdGltZ3VybLIDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IG5mdGltZ3VybApzdW1tYXJ5OiAnR2V0IE5GVCBpbWFnZSBVUkwgZm9yIGEgY2FyZ28gaXRlbScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGltYWdlIFVSTCB0aGUgY29udHJhY3QgZW1pdHMgZm9yIGEgZ2l2ZW4gY2FyZ28gaXRlbSwgb3B0aW9uYWxseSBzY29wZWQgdG8gYSBsb2NhdGlvbi4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyBhbmQgTkZUIHJlbmRlcmVycyB0byBmZXRjaCB0aGUgY2Fub25pY2FsIGFydHdvcmsgZm9yIGFuIGl0ZW0gb3IgcGFja2VkIGVudGl0eS4AAAAA+OUynQZub3RpZnmKAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBub3RpZnkKc3VtbWFyeTogJ1Rhc2sgbGlmZWN5Y2xlIG5vdGlmaWNhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW50ZXJuYWwgYWN0aW9uIHRoYXQgbm90aWZpZXMgZW50aXR5IG93bmVycyBvZiB0YXNrIGxpZmVjeWNsZSBldmVudHMgKHJlc29sdmVkLCBjYW5jZWxsZWQpLiBDYWxsZWQgaW5saW5lIHdoZW4gdGFza3MgY2hhbmdlIHN0YXRlLiBVc2VzIHJlcXVpcmVfcmVjaXBpZW50IHRvIGVuYWJsZSBvZmYtY2hhaW4gbW9uaXRvcmluZyB2aWEgYWN0aW9uIHRyYWNlcy4AAGXXIIVMrApwbGFjZWNhcmdvyQQtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcGxhY2VjYXJnbwpzdW1tYXJ5OiAnUmVzdG9yZSBORlQgY2FyZ28gb250byBhIGhvc3QgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gY2FsbGVkIGlubGluZSBieSB0aGUgcGxhdGZvcm0gY29udHJhY3Qgb25seS4gUmVzdG9yZXMgdGhlIGNhcmdvIHJlY29yZGVkIGluIGFuIHVud3JhcHBlZCBORlQgb250byBhIGhvc3QgZW50aXR5LiBWYWxpZGF0ZXMgaG9zdCBvd25lcnNoaXAsIGxvYWRlcnMsIGFuZCByZW1haW5pbmcgY2FwYWNpdHksIGRlc2VyaWFsaXplcyB0aGUgTkZUJ3MgaXRlbSBkYXRhLCBhbmQgYXBwZW5kcyBhbiB1bndyYXAgdGFzayB0byBkZWxpdmVyIHRoZSBjYXJnbyB0byB0aGUgaG9zdC4gVGhlIHBsYXRmb3JtIGNvbnRyYWN0IGNyZWRpdHMgdGhlIGRlcG9zaXQgcmVmdW5kIGFuZCBidXJucyB0aGUgYXNzZXQuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AfHZ5KoVMrAtwbGFjZWVudGl0ecAELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHBsYWNlZW50aXR5CnN1bW1hcnk6ICdNYXRlcmlhbGl6ZSBhIHBhY2tlZC1lbnRpdHkgTkZUIGFzIGEgbGl2ZSBlbnRpdHknCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiBjYWxsZWQgaW5saW5lIGJ5IHRoZSBwbGF0Zm9ybSBjb250cmFjdCBvbmx5LiBFbXBsYWNlcyBhIGxpdmUgb3JiaXRhbCB2ZXNzZWwgKHNoaXAgb3IgY29udGFpbmVyKSBmcm9tIGl0cyBwYWNrZWQtZW50aXR5IE5GVCBkYXRhIGF0IHRoZSByZWNvcmRlZCB3cmFwIG9yaWdpbiwgdGhlbiBxdWV1ZXMgdHJhdmVsIGFuZCByZWNoYXJnZSB0YXNrcyB0byBkZWxpdmVyIGl0IHRvIHRoZSB0YXJnZXQgbmV4dXMgYXQgZnVsbCBlbmVyZ3kuIFRoZSBwbGF0Zm9ybSBjb250cmFjdCBjcmVkaXRzIHRoZSBkZXBvc2l0IHJlZnVuZCBhbmQgYnVybnMgdGhlIGFzc2V0LiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAAAAil3TkLoIcmVjaGFyZ2XNAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiByZWNoYXJnZQpzdW1tYXJ5OiAnUmVjaGFyZ2Ugc2hpcCBlbmVyZ3knCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClNjaGVkdWxlIGEgcmVjaGFyZ2UgdGFzayBmb3IgYW4gZW50aXR5IHRvIHJlc3RvcmUgZW5lcmd5IHRvIGZ1bGwgY2FwYWNpdHkuIFRoZSByZWNoYXJnZSBkdXJhdGlvbiBkZXBlbmRzIG9uIGN1cnJlbnQgZW5lcmd5IGxldmVsIGFuZCByZWNoYXJnZSByYXRlLuCzy1M1fJe6DHJlZnJzaGVudGl0ebgDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHJlZnJzaGVudGl0eQpzdW1tYXJ5OiAnUmVmcmVzaCBkZXJpdmVkIGVudGl0eSBzdGF0ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmVjb21wdXRlIGRlcml2ZWQgZmllbGRzIG9uIGFuIGVudGl0eSBmcm9tIGl0cyBjdXJyZW50IGNhcmdvIGFuZCBtb2R1bGVzLCByZWZyZXNoaW5nIGNhcGFiaWxpdHkgc3RhdHMgYW5kIGNhcmdvIG1hc3MuIFRoZSBlbnRpdHkgbXVzdCBiZSBpZGxlIHdpdGggbm8gc2NoZWR1bGVkIHRhc2tzLiBVc2VkIHRvIHJlY29uY2lsZSBkZXJpdmVkIHN0YXRlIGFmdGVyIGRhdGEgbWlncmF0aW9ucyBvciBjb250cmFjdCB1cGdyYWRlcy6gIjKXqk2lugxyZW1vdmVvcmFjbGUAAAAAAChpproGcmVuYW1lAAAAAEDtSLG6B3Jlc29sdmXQAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiByZXNvbHZlCnN1bW1hcnk6ICdDb21wbGV0ZSBzY2hlZHVsZWQgdGFza3MnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlc29sdmUgY29tcGxldGVkIHRhc2tzIGluIGFuIGVudGl0eSdzIHNjaGVkdWxlLCBhcHBseWluZyB0aGVpciBlZmZlY3RzIChyZWNoYXJnZSBlbmVyZ3ksIHVwZGF0ZSBsb2NhdGlvbiwgbG9hZC91bmxvYWQgY2FyZ28pLiBJZiBjb3VudCBpcyBzcGVjaWZpZWQsIHJlc29sdmUgZXhhY3RseSB0aGF0IG1hbnkgdGFza3M7IG90aGVyd2lzZSByZXNvbHZlIGFsbCBjb21wbGV0ZWQgdGFza3MuIEZhaWxzIGlmIGNvdW50IGV4Y2VlZHMgdGhlIG51bWJlciBvZiBjb21wbGV0ZWQgdGFza3MuAECMRu1IsboKcmVzb2x2ZWFsbADg4zVK7UixugxyZXNvbHZlZWFybHkAAAAAAESjtroGcmV2ZWFsAAAAACrqRKW8CHJtbW9kdWxlvAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcm1tb2R1bGUKc3VtbWFyeTogJ1JlbW92ZSBhIG1vZHVsZSBmcm9tIGEgc2xvdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmVtb3ZlIGFuIGluc3RhbGxlZCBtb2R1bGUgZnJvbSBhIHNsb3Qgb24gYSBsaXZlIGVudGl0eSBvciBhIHBhY2tlZCBlbnRpdHkgaW4gY2FyZ28uIFRoZSBlbnRpdHkgbXVzdCBiZSBpZGxlIHdpdGggbm8gc2NoZWR1bGVkIHRhc2tzLiBUaGUgbW9kdWxlIGlzIHJldHVybmVkIHRvIGNhcmdvLiBGYWlscyBpZiB0aGUgZW50aXR5IGRvZXMgbm90IGhhdmUgZW5vdWdoIGNhcmdvIGNhcGFjaXR5IHRvIGhvbGQgdGhlIHJldHVybmVkIG1vZHVsZS4AAABsobymvAhybW5mdGNmZ6EDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHJtbmZ0Y2ZnCnN1bW1hcnk6ICdSZW1vdmUgTkZUIHRlbXBsYXRlIG1hcHBpbmcgZm9yIGFuIGl0ZW0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlbW92ZSB0aGUgQXRvbWljQXNzZXRzIHRlbXBsYXRlIG1hcHBpbmcgZm9yIHRoZSBzcGVjaWZpZWQgaXRlbSBpZCBmcm9tIHRoZSBgbmZ0Y29uZmlnYCB0YWJsZS4gQWZ0ZXIgcmVtb3ZhbCB0aGUgaXRlbSBjYW4gbm8gbG9uZ2VyIGJlIHdyYXBwZWQgb3IgdW53cmFwcGVkIHVudGlsIGEgbmV3IG1hcHBpbmcgaXMgc2V0LiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAAAAyG2HssIIc2V0Y2l2aWMAAMBVGeuIssIKc2V0Y2x1c3RlcgAAAMDpUoqywglzZXRjb29yZHMAAMC8+qzpssIKc2V0aW5mYnVybgAAAAAhremywghzZXRpbmZkMQCQppEqremywgxzZXRpbmZkZW1hbmQAAECeTq7pssIKc2V0aW5mbWludACQG3OKr+mywgxzZXRpbmZ3ZWlnaHQAAABILnc1s8IJc2V0bmV4dGlkAAAAYAvlNbPCCXNldG5mdGNmZ8QDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHNldG5mdGNmZwpzdW1tYXJ5OiAnU2V0IE5GVCB0ZW1wbGF0ZSBtYXBwaW5nIGZvciBhbiBpdGVtJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpCaW5kIGFuIGl0ZW0gaWQgdG8gYW4gQXRvbWljQXNzZXRzIHRlbXBsYXRlIGlkIGFuZCBzY2hlbWEgbmFtZS4gVXNlZCB0byBjb25maWd1cmUgaG93IHRoZSBjb250cmFjdCBtaW50cyBhbmQgcmVjb2duaXplcyBORlRzIGZvciBhIGdpdmVuIGl0ZW0uIEluc2VydHMgYSBuZXcgbWFwcGluZyBpZiBvbmUgZG9lcyBub3QgZXhpc3QsIG9yIHVwZGF0ZXMgdGhlIGV4aXN0aW5nIG1hcHBpbmcuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS6QIm1Y3ZazwgxzZXR0aHJlc2hvbGQAkGmM5qiYs8IMc2V0dGxlYmFsbG90ADCdrObyqbPCDHNldHVud3JhcG1pbgAAMqaomsuzwgtzZXR3cmFwY29zdAAAgFKrmsuzwgpzZXR3cmFwZmVlAAAAAEDFnHXDB3NodXR0bGUAAACg7BrEacYJc3Rvd2Nhcmdv1QUtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogc3Rvd2NhcmdvCnN1bW1hcnk6ICdSZXNlcnZlIGEgY2FyZ28gc3RhY2sgZm9yIHdyYXBwaW5nIGludG8gYW4gTkZUJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gY2FsbGVkIGlubGluZSBieSB0aGUgcGxhdGZvcm0gY29udHJhY3Qgb25seS4gUmVzZXJ2ZXMgYW5kIGNvbnN1bWVzIGEgY2FyZ28gc3RhY2sgb24gYSBsaXZlIGVudGl0eSBmb3Igd3JhcHBpbmcgaW50byBhbiBORlQuIFZhbGlkYXRlcyBlbnRpdHkgb3duZXJzaGlwLCBsb2FkZXJzLCBhbmQgcHJlc2VuY2UgYXQgdGhlIG5leHVzLCBhbmQgY29uZmlybXMgdGhlIHRhcmdldCBjYXJnbyBzdGFjayBpcyBhdmFpbGFibGUgYW5kIG5vdCByZXNlcnZlZCBieSBhIHBlbmRpbmcgdGFzay4gQ29tcHV0ZXMgdGhlIHdyYXAgY29zdCBhbmQgZmVlLCBkZWJpdHMgdGhlbSBmcm9tIHRoZSBvd25lcidzIHBsYXRmb3JtIGRlcG9zaXQgYmFsYW5jZSwgZGVyaXZlcyB0aGUgTkZUJ3MgaW1tdXRhYmxlIGRhdGEsIGFuZCBtaW50cyB0aGUgTkZUIGlubGluZSBhcyB0aGUgZ2FtZSBjb250cmFjdCBiZWZvcmUgY29uc3VtaW5nIHRoZSBjYXJnby4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LgCAzy5PxWnGCnN0b3dlbnRpdHmZBS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzdG93ZW50aXR5CnN1bW1hcnk6ICdSZXNlcnZlIGFuIGVudGl0eSBmb3Igd3JhcHBpbmcgaW50byBhbiBORlQnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiBjYWxsZWQgaW5saW5lIGJ5IHRoZSBwbGF0Zm9ybSBjb250cmFjdCBvbmx5LiBSZXNlcnZlcyBhIHdob2xlIGVudGl0eSAoc2hpcCwgY29udGFpbmVyLCBvciBwbGFuZXRhcnkgc3RydWN0dXJlKSBmb3Igd3JhcHBpbmcgaW50byBhbiBORlQuIFRoZSBlbnRpdHkgbXVzdCBiZSBpZGxlIHdpdGggZW1wdHkgY2FyZ28gYW5kIG5vIHNjaGVkdWxlZCB0YXNrcy4gQ29tcHV0ZXMgdGhlIHdyYXAgY29zdCBhbmQgZmVlLCBkZWJpdHMgdGhlbSBmcm9tIHRoZSBvd25lcidzIHBsYXRmb3JtIGRlcG9zaXQgYmFsYW5jZSwgZGVyaXZlcyB0aGUgZW50aXR5IE5GVCdzIGltbXV0YWJsZSBkYXRhLCBtaW50cyB0aGUgTkZUIGlubGluZSBhcyB0aGUgZ2FtZSBjb250cmFjdCwgYW5kIGVyYXNlcyB0aGUgZW50aXR5IGZyb20gdGhlIHdvcmxkLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAICKOlFZDccKc3dhcG1vZHVsZQAAAAAqulwNxwhzd2FwdGlsZQAAAAAgOzzNzQd0cmFuc2l0AAAAAABEtc3NBnRyYXZlbPsBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHRyYXZlbApzdW1tYXJ5OiAnTW92ZSBhIHNoaXAnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkluaXRpYXRlIHRyYXZlbCBvZiBhbiBlbnRpdHkgZnJvbSBpdHMgY3VycmVudCBsb2NhdGlvbiB0byBhIG5ldyBkZXN0aW5hdGlvbi4AwDSxRrXNzQp0cmF2ZWxwbGFuAAAAAJ7GqtLUCHVuZGVwbG955wQtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogdW5kZXBsb3kKc3VtbWFyeTogJ1BhY2sgYSBkZXBsb3llZCBlbnRpdHkgaW50byBhIGhvc3QnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClBhY2sgYW4gZW50aXR5IGludG8gYSBob3N0IGVudGl0eSdzIGNhcmdvIGFzIGEgcGFja2VkLWVudGl0eSBpdGVtLiBIb3N0IGFuZCB0YXJnZXQgbXVzdCBzaGFyZSB0aGUgc2FtZSBvd25lciBhbmQgY29vcmRpbmF0ZXMsIHRoZSBob3N0IG11c3QgaGF2ZSBsb2FkZXJzIGFuZCBlbm91Z2ggY2FwYWNpdHkgZm9yIHRoZSBwYWNrZWQgbWFzcywgYW5kIHRoZSB0YXJnZXQgbXVzdCBiZSBpZGxlIHdpdGggZW1wdHkgY2FyZ28uIENyZWF0ZXMgYW4gZW50aXR5Z3JvdXAgYW5kIHNjaGVkdWxlcyB1bmRlcGxveSB0YXNrcyBvbiBib3RoIGVudGl0aWVzOyBvbiByZXNvbHV0aW9uIHRoZSB0YXJnZXQgaXMgZXJhc2VkIGFuZCB0aGUgcGFja2VkIGVudGl0eSBpcyBhZGRlZCB0byB0aGUgaG9zdCdzIGNhcmdvLiBJbnZlcnNlIG9mIGRlcGxveS4AAAAAJEPj1AZ1bmxvYWQAAAAAQCVzWdUHdXBncmFkZQAAAPDJqKsy3Ql2b3RlcmVhZHkAAAAAAABQr+EEd2FycJ8DLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHdhcnAKc3VtbWFyeTogJ1dhcnAgdG8gYSBkZXN0aW5hdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW5zdGFudGx5IHRlbGVwb3J0IGFuIGVudGl0eSB0byBhIGRlc3RpbmF0aW9uIHN5c3RlbS4gUmVxdWlyZXMgd2FycCBjYXBhYmlsaXR5LCBmdWxsIGVuZXJneSwgZW1wdHkgY2FyZ28sIGFuZCBhbiBlbXB0eSBzY2hlZHVsZS4gVGhlIGRlc3RpbmF0aW9uIG11c3QgYmUgYSB2YWxpZCBzeXN0ZW0gd2l0aGluIHdhcnAgcmFuZ2UuIFJlc29sdmVzIGltbWVkaWF0ZWx5IGFzIGEgemVyby1kdXJhdGlvbiB0YXNrLgAAAAAAoKrjBHdpcGWyAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB3aXBlCnN1bW1hcnk6ICdERUJVRzogd2lwZSBhY3Rpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0oAAAAAGQaozkDaTY0AAAKYmFsbG90X3JvdwAwRK5mGqM5A2k2NAAAD2JhbGxvdHBpY2tzX3JvdwAAsApnGqM5A2k2NAAADmJhbGxvdF9zZXFfcm93oGLOCmcaozkDaTY0AAAQYmFsbG90c2V0dGxlX3JvdwAAwGy6FJ0+A2k2NAAADWJ1aWxkaW5nc19yb3cAAMCHvhSdPgNpNjQAAAxidWlsZGpvYl9yb3cAAAAAAMquQQNpNjQAAAljYXJnb19yb3cAqmt4qu+yQwNpNjQAAA9jaXRpemVuc2hpcF9yb3cAmFuTIuS2QwNpNjQAAA9jaXZpY2NvbmZpZ19yb3cAAAAAYOlMRANpNjQAAAljbGFpbV9yb3cAAADgqox1RANpNjQAAAtjbHVzdGVyX3JvdwAAAABkJyVFA2k2NAAACmNvbW1pdF9yb3cAAMCHvrzMRQNpNjQAAAxjcmFmdGpvYl9yb3cAAAAA+OzyVANpNjQAAAplbnRpdHlfcm93AKqml/ns8lQDaTY0AAAPZW50aXR5Z3JvdXBfcm93AACwCvvs8lQDaTY0AAAOZW50aXR5X3NlcV9yb3cAAAAAgIZoVQNpNjQAAAllcG9jaF9yb3cAAABgXn3WdANpNjQAAAtpbmZidXJuX3JvdwAASNNIldZ0A2k2NAAADWluZmRlbWFuZF9yb3cAAAAgTyfXdANpNjQAAAtpbmZtaW50X3JvdwAAACBSWtd0A2k2NAAAC2luZnBvb2xfcm93AIDPLhpt13QDaTY0AAAOaW5mcXVhbGl0eV9yb3cAAMiNOcXXdANpNjQAAA1pbmZ3ZWlnaHRfcm93AAAAAF8FEY0DaTY0AAAKbG9ja2VyX3JvdwAAAFhlk6aRA2k2NAAADG1hbmRhdGVzX3JvdwAAAAAAm6eTA2k2NAAACW1pbnRxX3JvdwAAYG5NivKaA2k2NAAADW5mdGNvbmZpZ19yb3cAAGALqYjMpQNpNjQAABFvcmFjbGVfY29uZmlnX3JvdwAAAACriMylA2k2NAAACm9yYWNsZV9yb3cAAAAAXOVNrANpNjQAAApwbGF5ZXJfcm93AAAAGKvL6K0DaTY0AAAMcHJvZ3Jlc3Nfcm93AAAAQO2rsLoDaTY0AAALcmVzZXJ2ZV9yb3cAAAAARKO2ugNpNjQAAApyZXZlYWxfcm93AAAAbLo0TcYDaTY0AAAMc3RhbmRpbmdfcm93AAAAAACVTcYDaTY0AAAJc3RhdGVfcm93AAAAQDFzacYDaTY0AAALc3RvcmFnZV9yb3cAAAAAAKyqzwNpNjQAAAl0eXBlc19yb3cAAAAA4BQv5QNpNjQAAAp3b3JsZHNfcm93AABza1JUzeUDaTY0AAAOd3JhcGNvbmZpZ19yb3cAAAAZU1TN5QNpNjQAAAx3cmFwY29zdF9yb3cBEVNoaXBsb2FkIChTZXJ2ZXIpEVNoaXBsb2FkIChTZXJ2ZXIpAAAAWwAyjXXSNM0xDHRhc2tfcmVzdWx0cwDAcTdPilIyDHRhc2tfcmVzdWx0cwAAAIe+FJ0+C2pvYl9yZWNlaXB0AADINNYUnT4MdGFza19yZXN1bHRzAAAAAESFpkEOY2FuY2VsX3Jlc3VsdHMAAMg0VulMRAx0YXNrX3Jlc3VsdHOQl7noqox1RAx0YXNrX3Jlc3VsdHMAAAAAgLzMRQx0YXNrX3Jlc3VsdHMAAACHvrzMRQtqb2JfcmVjZWlwdAAAAA27SKVKDHRhc2tfcmVzdWx0cwAAAAB4GqtKDHRhc2tfcmVzdWx0cwCAujTjTKtKDHRhc2tfcmVzdWx0cwAAUNDkTKtKDHRhc2tfcmVzdWx0cwCAzy5PhbBKBnN0cmluZwAAAABc1bJhDHRhc2tfcmVzdWx0cwDANLFe1bJhDHRhc2tfcmVzdWx0c4APfSk6fbJiEGJ1aWxkam9ic19yZXN1bHQAwFX5moayYg5jaGFydGVyX3Jlc3VsdKDUzfmahrJiE2NoYXJ0ZXJfdHJlZV9yZXN1bHTgk1E334ayYhNjaGFydGVycmVhZHlfcmVzdWx0AMBVGeuIsmILY2x1c3Rlcl9yb3cAAGBuTYqyYgtnYW1lX2NvbmZpZ4APfXmZi7JiEGNyYWZ0am9ic19yZXN1bHQAAKiSIpWyYg1kZWNvbXBfcmVzdWx0AABI00iVsmINZGVtYW5kX3Jlc3VsdABAdphWlbJiDmV4dGVuZGVkX2Fzc2V0AAAAmVaVsmIKZGVwb3RfdmlldwAUmiZjl7JiBnVpbnQ2NABUPI65qLJiCHVpbnQxNltdAADAEeWpsmILZW51bV9yZXN1bHQAsHLZ5amyYg1lbnRpdHlfaW5mb1tdAADw2eWpsmILZW50aXR5X2luZm+Qp7s1U7qyYhBmb290cHJpbnRfcmVzdWx0ALxBKq3psmIGdWludDY0oNBUOq7psmIQaW5mbHVlbmNlX3RvdGFscwCUjmav6bJiD2luZnZhbHVlX3Jlc3VsdABMNkmq7LJiD2l0ZW1kYXRhX3Jlc3VsdAAATk6q7LJiD2l0ZW1faWRzX3Jlc3VsdAAAAFiq7LJiCml0ZW1zX2luZm8AVPVZquyyYgV1aW50OIBV9Vmq7LJiC2VudW1fcmVzdWx0AExWMk0Hs2IQa2luZF9tZXRhX3Jlc3VsdAAmddkgGrNiDWxvY2F0aW9uX2luZm8AgMkmIRqzYhBsb2NhdGlvbl9kZXJpdmVkAABbKE8ns2IObWludGNmZ19yZXN1bHTgk1E3TyezYgZ1aW50MzIAsKo+JyqzYgtlbnVtX3Jlc3VsdAAAVlEnKrNiDm1vZHVsZXNfcmVzdWx0AADw5xo1s2ILbmVhcmJ5X2luZm8AgMLm5DWzYghzdHJpbmdbXQAAXdPlNbNiDm5mdGluZm9fcmVzdWx0AAC4yptYs2ILcGxheWVyX2luZm8AAAAgUlqzYhBwb29sX3BhaXJfcmVzdWx0AAAAOFJas2IMcG9vbHNfcmVzdWx0oLLJ+NFbs2IPcHJvamVjdGVkX3N0YXRlAABQ1SF1s2IOcmVjaXBlc19yZXN1bHQAAFbVIXWzYg5yZWNpcGVzX3Jlc3VsdAAAzgZhdbNiC2VudW1fcmVzdWx0ALDaV2F1s2ITc3RyYXR1bV9yZW1haW5pbmdbXYAVuppidbNiEHJlc291cmNlc19yZXN1bHQAAAA404izYhVlbnRpdHlfbGF5b3V0c19yZXN1bHQAgNTZ3IyzYgxzdHJhdHVtX2RhdGGAlbtGSo2zYhBlbnRpdHlfc3VtbWFyeVtd4JNRV2W6s2IGdWludDMyAAAAWGW6s2ILdm90ZV9yZXN1bHQAVKRNXsqzYg13b3JtaG9sZV9pbmZvkB2e5uaq6WUMdGFza19yZXN1bHRzAKLa5uaq6WUMdGFza19yZXN1bHRzAAAAAADQsGkLY2hlY2tzdW0yNTYAAABAhNKwaQtjaGVja3N1bTUxMgAAAAA0NLWJDHRhc2tfcmVzdWx0cwAAAAAAkAyNDHRhc2tfcmVzdWx0cwAAACq6rDaVDHRhc2tfcmVzdWx0cwAAiFcz6fKaBnN0cmluZwAAZdcghUysDHRhc2tfcmVzdWx0cwB8dnkqhUysDHRhc2tfcmVzdWx0cwAAAIpd05C6DHRhc2tfcmVzdWx0cwAAAEDtSLG6D3Jlc29sdmVfcmVzdWx0cwBAjEbtSLG6EnJlc29sdmVhbGxfcmVzdWx0c+DjNUrtSLG6D3Jlc29sdmVfcmVzdWx0cwAAAEDFnHXDDHRhc2tfcmVzdWx0cwAAoOwaxGnGDHRhc2tfcmVzdWx0cwCAzy5PxWnGDHRhc2tfcmVzdWx0cwAAACq6XA3HDHRhc2tfcmVzdWx0cwAAACA7PM3NDHRhc2tfcmVzdWx0cwAAAABEtc3NDHRhc2tfcmVzdWx0cwDANLFGtc3NDHRhc2tfcmVzdWx0cwAAAJ7GqtLUDHRhc2tfcmVzdWx0cwAAAAAkQ+PUDHRhc2tfcmVzdWx0cwAAAEAlc1nVDHRhc2tfcmVzdWx0cwAAAAAAUK/hDHRhc2tfcmVzdWx0cw==');
695
822
  ABI.from(abiBlob$1);
696
823
  var Types$1;
697
824
  (function (Types) {
@@ -830,6 +957,108 @@ var Types$1;
830
957
  Struct.type('addoracle')
831
958
  ], addoracle);
832
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;
833
1062
  let blend = class blend extends Struct {
834
1063
  };
835
1064
  __decorate([
@@ -860,6 +1089,99 @@ var Types$1;
860
1089
  Struct.type('builder_lane')
861
1090
  ], builder_lane);
862
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;
863
1185
  let buildplot = class buildplot extends Struct {
864
1186
  };
865
1187
  __decorate([
@@ -923,27 +1245,27 @@ var Types$1;
923
1245
  Struct.type('cancel_results')
924
1246
  ], cancel_results);
925
1247
  Types.cancel_results = cancel_results;
926
- let canceljob = class canceljob extends Struct {
1248
+ let cancelbuild = class cancelbuild extends Struct {
927
1249
  };
928
1250
  __decorate([
929
1251
  Struct.field(UInt64)
930
- ], canceljob.prototype, "job_id", void 0);
1252
+ ], cancelbuild.prototype, "job_id", void 0);
1253
+ cancelbuild = __decorate([
1254
+ Struct.type('cancelbuild')
1255
+ ], cancelbuild);
1256
+ Types.cancelbuild = cancelbuild;
1257
+ let cancelcraft = class cancelcraft extends Struct {
1258
+ };
931
1259
  __decorate([
932
1260
  Struct.field(UInt64)
933
- ], canceljob.prototype, "ship_id", void 0);
934
- canceljob = __decorate([
935
- Struct.type('canceljob')
936
- ], canceljob);
937
- Types.canceljob = canceljob;
938
- let cancelupgrade = class cancelupgrade extends Struct {
939
- };
1261
+ ], cancelcraft.prototype, "job_id", void 0);
940
1262
  __decorate([
941
1263
  Struct.field(UInt64)
942
- ], cancelupgrade.prototype, "job_id", void 0);
943
- cancelupgrade = __decorate([
944
- Struct.type('cancelupgrade')
945
- ], cancelupgrade);
946
- Types.cancelupgrade = cancelupgrade;
1264
+ ], cancelcraft.prototype, "ship_id", void 0);
1265
+ cancelcraft = __decorate([
1266
+ Struct.type('cancelcraft')
1267
+ ], cancelcraft);
1268
+ Types.cancelcraft = cancelcraft;
947
1269
  let cargo_row = class cargo_row extends Struct {
948
1270
  };
949
1271
  __decorate([
@@ -995,27 +1317,39 @@ var Types$1;
995
1317
  Struct.type('cargo_view')
996
1318
  ], cargo_view);
997
1319
  Types.cargo_view = cargo_view;
998
- let charter_effect = class charter_effect extends Struct {
1320
+ let castballot = class castballot extends Struct {
999
1321
  };
1000
1322
  __decorate([
1001
- Struct.field(UInt8)
1002
- ], charter_effect.prototype, "kind", void 0);
1323
+ Struct.field(Name)
1324
+ ], castballot.prototype, "player", void 0);
1003
1325
  __decorate([
1004
- Struct.field(UInt16)
1005
- ], charter_effect.prototype, "item_id", void 0);
1326
+ Struct.field(UInt64)
1327
+ ], castballot.prototype, "ballot_id", void 0);
1006
1328
  __decorate([
1007
- Struct.field(UInt16)
1008
- ], charter_effect.prototype, "target_item_id", void 0);
1329
+ Struct.field(UInt32, { array: true })
1330
+ ], castballot.prototype, "picks", void 0);
1331
+ castballot = __decorate([
1332
+ Struct.type('castballot')
1333
+ ], castballot);
1334
+ Types.castballot = castballot;
1335
+ let civic_grant = class civic_grant extends Struct {
1336
+ };
1009
1337
  __decorate([
1010
- Struct.field(UInt16)
1011
- ], charter_effect.prototype, "slot_mask", void 0);
1338
+ Struct.field(UInt8)
1339
+ ], civic_grant.prototype, "kind", void 0);
1340
+ __decorate([
1341
+ Struct.field(UInt8)
1342
+ ], civic_grant.prototype, "building", void 0);
1343
+ __decorate([
1344
+ Struct.field(UInt8)
1345
+ ], civic_grant.prototype, "stat", void 0);
1012
1346
  __decorate([
1013
1347
  Struct.field(UInt16)
1014
- ], charter_effect.prototype, "stat", void 0);
1015
- charter_effect = __decorate([
1016
- Struct.type('charter_effect')
1017
- ], charter_effect);
1018
- Types.charter_effect = charter_effect;
1348
+ ], civic_grant.prototype, "value", void 0);
1349
+ civic_grant = __decorate([
1350
+ Struct.type('civic_grant')
1351
+ ], civic_grant);
1352
+ Types.civic_grant = civic_grant;
1019
1353
  let charter_node_def = class charter_node_def extends Struct {
1020
1354
  };
1021
1355
  __decorate([
@@ -1028,27 +1362,75 @@ var Types$1;
1028
1362
  Struct.field(UInt32, { array: true })
1029
1363
  ], charter_node_def.prototype, "prereqs", void 0);
1030
1364
  __decorate([
1031
- Struct.field(charter_effect)
1032
- ], charter_node_def.prototype, "effect", void 0);
1365
+ Struct.field(civic_grant, { array: true })
1366
+ ], charter_node_def.prototype, "grants", void 0);
1367
+ __decorate([
1368
+ Struct.field(UInt16)
1369
+ ], charter_node_def.prototype, "exclusion_group", void 0);
1370
+ __decorate([
1371
+ Struct.field(UInt8)
1372
+ ], charter_node_def.prototype, "repeat_cap", void 0);
1033
1373
  charter_node_def = __decorate([
1034
1374
  Struct.type('charter_node_def')
1035
1375
  ], charter_node_def);
1036
1376
  Types.charter_node_def = charter_node_def;
1037
- let charter_view = class charter_view extends Struct {
1377
+ let charter_ready_view = class charter_ready_view extends Struct {
1038
1378
  };
1379
+ __decorate([
1380
+ Struct.field(Int64)
1381
+ ], charter_ready_view.prototype, "x", void 0);
1382
+ __decorate([
1383
+ Struct.field(Int64)
1384
+ ], charter_ready_view.prototype, "y", void 0);
1039
1385
  __decorate([
1040
1386
  Struct.field(UInt32)
1041
- ], charter_view.prototype, "node_id", void 0);
1387
+ ], charter_ready_view.prototype, "mandate", void 0);
1388
+ charter_ready_view = __decorate([
1389
+ Struct.type('charter_ready_view')
1390
+ ], charter_ready_view);
1391
+ Types.charter_ready_view = charter_ready_view;
1392
+ let charter_view = class charter_view extends Struct {
1393
+ };
1042
1394
  __decorate([
1043
1395
  Struct.field(UInt32)
1044
- ], charter_view.prototype, "completed_epoch", void 0);
1396
+ ], charter_view.prototype, "node_id", void 0);
1045
1397
  __decorate([
1046
- Struct.field(UInt64)
1047
- ], charter_view.prototype, "entity_id", void 0);
1398
+ Struct.field(UInt16)
1399
+ ], charter_view.prototype, "repeats", void 0);
1048
1400
  charter_view = __decorate([
1049
1401
  Struct.type('charter_view')
1050
1402
  ], charter_view);
1051
1403
  Types.charter_view = charter_view;
1404
+ let seat_view = class seat_view extends Struct {
1405
+ };
1406
+ __decorate([
1407
+ Struct.field(UInt32)
1408
+ ], seat_view.prototype, "node_id", void 0);
1409
+ __decorate([
1410
+ Struct.field(UInt64)
1411
+ ], seat_view.prototype, "cost", void 0);
1412
+ __decorate([
1413
+ Struct.field(UInt64)
1414
+ ], seat_view.prototype, "progress", void 0);
1415
+ __decorate([
1416
+ Struct.field(UInt64)
1417
+ ], seat_view.prototype, "gap", void 0);
1418
+ seat_view = __decorate([
1419
+ Struct.type('seat_view')
1420
+ ], seat_view);
1421
+ Types.seat_view = seat_view;
1422
+ let progress_view = class progress_view extends Struct {
1423
+ };
1424
+ __decorate([
1425
+ Struct.field(UInt32)
1426
+ ], progress_view.prototype, "node_id", void 0);
1427
+ __decorate([
1428
+ Struct.field(UInt64)
1429
+ ], progress_view.prototype, "amount", void 0);
1430
+ progress_view = __decorate([
1431
+ Struct.type('progress_view')
1432
+ ], progress_view);
1433
+ Types.progress_view = progress_view;
1052
1434
  let charter_result = class charter_result extends Struct {
1053
1435
  };
1054
1436
  __decorate([
@@ -1059,10 +1441,10 @@ var Types$1;
1059
1441
  ], charter_result.prototype, "lifetime", void 0);
1060
1442
  __decorate([
1061
1443
  Struct.field(UInt64)
1062
- ], charter_result.prototype, "watermark", void 0);
1444
+ ], charter_result.prototype, "spent", void 0);
1063
1445
  __decorate([
1064
1446
  Struct.field(UInt64)
1065
- ], charter_result.prototype, "surplus", void 0);
1447
+ ], charter_result.prototype, "unassigned", void 0);
1066
1448
  __decorate([
1067
1449
  Struct.field(UInt32)
1068
1450
  ], charter_result.prototype, "mandate", void 0);
@@ -1081,6 +1463,18 @@ var Types$1;
1081
1463
  __decorate([
1082
1464
  Struct.field(charter_view, { array: true })
1083
1465
  ], charter_result.prototype, "built", void 0);
1466
+ __decorate([
1467
+ Struct.field(UInt64)
1468
+ ], charter_result.prototype, "ballot_id", void 0);
1469
+ __decorate([
1470
+ Struct.field('bool')
1471
+ ], charter_result.prototype, "settling", void 0);
1472
+ __decorate([
1473
+ Struct.field(seat_view, { array: true })
1474
+ ], charter_result.prototype, "queue", void 0);
1475
+ __decorate([
1476
+ Struct.field(progress_view, { array: true })
1477
+ ], charter_result.prototype, "progress", void 0);
1084
1478
  charter_result = __decorate([
1085
1479
  Struct.type('charter_result')
1086
1480
  ], charter_result);
@@ -1106,21 +1500,33 @@ var Types$1;
1106
1500
  Struct.type('charterready')
1107
1501
  ], charterready);
1108
1502
  Types.charterready = charterready;
1109
- let charters_row = class charters_row extends Struct {
1503
+ let charterready_result = class charterready_result extends Struct {
1110
1504
  };
1111
1505
  __decorate([
1112
- Struct.field(UInt32)
1113
- ], charters_row.prototype, "node_id", void 0);
1506
+ Struct.field(charter_ready_view, { array: true })
1507
+ ], charterready_result.prototype, "worlds", void 0);
1508
+ charterready_result = __decorate([
1509
+ Struct.type('charterready_result')
1510
+ ], charterready_result);
1511
+ Types.charterready_result = charterready_result;
1512
+ let citizenship_row = class citizenship_row extends Struct {
1513
+ };
1114
1514
  __decorate([
1115
- Struct.field(UInt32)
1116
- ], charters_row.prototype, "completed_epoch", void 0);
1515
+ Struct.field(UInt64)
1516
+ ], citizenship_row.prototype, "location_id", void 0);
1517
+ __decorate([
1518
+ Struct.field(UInt64)
1519
+ ], citizenship_row.prototype, "lifetime", void 0);
1117
1520
  __decorate([
1118
1521
  Struct.field(UInt64)
1119
- ], charters_row.prototype, "entity_id", void 0);
1120
- charters_row = __decorate([
1121
- Struct.type('charters_row')
1122
- ], charters_row);
1123
- Types.charters_row = charters_row;
1522
+ ], citizenship_row.prototype, "active", void 0);
1523
+ __decorate([
1524
+ Struct.field(UInt32)
1525
+ ], citizenship_row.prototype, "active_epoch", void 0);
1526
+ citizenship_row = __decorate([
1527
+ Struct.type('citizenship_row')
1528
+ ], citizenship_row);
1529
+ Types.citizenship_row = citizenship_row;
1124
1530
  let civicconfig_row = class civicconfig_row extends Struct {
1125
1531
  };
1126
1532
  __decorate([
@@ -1139,18 +1545,27 @@ var Types$1;
1139
1545
  Struct.type('claim_row')
1140
1546
  ], claim_row);
1141
1547
  Types.claim_row = claim_row;
1142
- let claimjob = class claimjob extends Struct {
1548
+ let claimbuild = class claimbuild extends Struct {
1549
+ };
1550
+ __decorate([
1551
+ Struct.field(UInt64)
1552
+ ], claimbuild.prototype, "job_id", void 0);
1553
+ claimbuild = __decorate([
1554
+ Struct.type('claimbuild')
1555
+ ], claimbuild);
1556
+ Types.claimbuild = claimbuild;
1557
+ let claimcraft = class claimcraft extends Struct {
1143
1558
  };
1144
1559
  __decorate([
1145
1560
  Struct.field(UInt64)
1146
- ], claimjob.prototype, "job_id", void 0);
1561
+ ], claimcraft.prototype, "job_id", void 0);
1147
1562
  __decorate([
1148
1563
  Struct.field(UInt64)
1149
- ], claimjob.prototype, "ship_id", void 0);
1150
- claimjob = __decorate([
1151
- Struct.type('claimjob')
1152
- ], claimjob);
1153
- Types.claimjob = claimjob;
1564
+ ], claimcraft.prototype, "ship_id", void 0);
1565
+ claimcraft = __decorate([
1566
+ Struct.type('claimcraft')
1567
+ ], claimcraft);
1568
+ Types.claimcraft = claimcraft;
1154
1569
  let cluster_slot = class cluster_slot extends Struct {
1155
1570
  };
1156
1571
  __decorate([
@@ -1190,15 +1605,6 @@ var Types$1;
1190
1605
  Struct.type('claimstarter')
1191
1606
  ], claimstarter);
1192
1607
  Types.claimstarter = claimstarter;
1193
- let claimupgrade = class claimupgrade extends Struct {
1194
- };
1195
- __decorate([
1196
- Struct.field(UInt64)
1197
- ], claimupgrade.prototype, "job_id", void 0);
1198
- claimupgrade = __decorate([
1199
- Struct.type('claimupgrade')
1200
- ], claimupgrade);
1201
- Types.claimupgrade = claimupgrade;
1202
1608
  let cleanrsvp = class cleanrsvp extends Struct {
1203
1609
  };
1204
1610
  __decorate([
@@ -1379,21 +1785,6 @@ var Types$1;
1379
1785
  Struct.type('configlog')
1380
1786
  ], configlog);
1381
1787
  Types.configlog = configlog;
1382
- let coordinates = class coordinates extends Struct {
1383
- };
1384
- __decorate([
1385
- Struct.field(Int64)
1386
- ], coordinates.prototype, "x", void 0);
1387
- __decorate([
1388
- Struct.field(Int64)
1389
- ], coordinates.prototype, "y", void 0);
1390
- __decorate([
1391
- Struct.field(UInt16, { optional: true })
1392
- ], coordinates.prototype, "z", void 0);
1393
- coordinates = __decorate([
1394
- Struct.type('coordinates')
1395
- ], coordinates);
1396
- Types.coordinates = coordinates;
1397
1788
  let coupling = class coupling extends Struct {
1398
1789
  };
1399
1790
  __decorate([
@@ -1475,6 +1866,57 @@ var Types$1;
1475
1866
  Struct.type('craftjob')
1476
1867
  ], craftjob);
1477
1868
  Types.craftjob = craftjob;
1869
+ let craftjob_row = class craftjob_row extends Struct {
1870
+ };
1871
+ __decorate([
1872
+ Struct.field(UInt64)
1873
+ ], craftjob_row.prototype, "id", void 0);
1874
+ __decorate([
1875
+ Struct.field(UInt64)
1876
+ ], craftjob_row.prototype, "building", void 0);
1877
+ __decorate([
1878
+ Struct.field(UInt8)
1879
+ ], craftjob_row.prototype, "socket", void 0);
1880
+ __decorate([
1881
+ Struct.field(Name)
1882
+ ], craftjob_row.prototype, "owner", void 0);
1883
+ __decorate([
1884
+ Struct.field(UInt64)
1885
+ ], craftjob_row.prototype, "ship_id", void 0);
1886
+ __decorate([
1887
+ Struct.field(coordinates)
1888
+ ], craftjob_row.prototype, "coords", void 0);
1889
+ __decorate([
1890
+ Struct.field(TimePoint)
1891
+ ], craftjob_row.prototype, "starts_at", void 0);
1892
+ __decorate([
1893
+ Struct.field(TimePoint)
1894
+ ], craftjob_row.prototype, "completes_at", void 0);
1895
+ __decorate([
1896
+ Struct.field(UInt16)
1897
+ ], craftjob_row.prototype, "recipe_id", void 0);
1898
+ __decorate([
1899
+ Struct.field(UInt32)
1900
+ ], craftjob_row.prototype, "quantity", void 0);
1901
+ __decorate([
1902
+ Struct.field(UInt32)
1903
+ ], craftjob_row.prototype, "energy_paid", void 0);
1904
+ __decorate([
1905
+ Struct.field(cargo_item, { array: true })
1906
+ ], craftjob_row.prototype, "cargo", void 0);
1907
+ craftjob_row = __decorate([
1908
+ Struct.type('craftjob_row')
1909
+ ], craftjob_row);
1910
+ Types.craftjob_row = craftjob_row;
1911
+ let craftjobs_result = class craftjobs_result extends Struct {
1912
+ };
1913
+ __decorate([
1914
+ Struct.field(craftjob_row, { array: true })
1915
+ ], craftjobs_result.prototype, "jobs", void 0);
1916
+ craftjobs_result = __decorate([
1917
+ Struct.type('craftjobs_result')
1918
+ ], craftjobs_result);
1919
+ Types.craftjobs_result = craftjobs_result;
1478
1920
  let dbgcredit = class dbgcredit extends Struct {
1479
1921
  };
1480
1922
  __decorate([
@@ -1489,6 +1931,9 @@ var Types$1;
1489
1931
  __decorate([
1490
1932
  Struct.field(UInt64)
1491
1933
  ], dbgcredit.prototype, "amount_atomic", void 0);
1934
+ __decorate([
1935
+ Struct.field(UInt32, { optional: true })
1936
+ ], dbgcredit.prototype, "node", void 0);
1492
1937
  dbgcredit = __decorate([
1493
1938
  Struct.type('dbgcredit')
1494
1939
  ], dbgcredit);
@@ -1508,6 +1953,42 @@ var Types$1;
1508
1953
  Struct.type('dbgmandate')
1509
1954
  ], dbgmandate);
1510
1955
  Types.dbgmandate = dbgmandate;
1956
+ let dbgpagerows = class dbgpagerows extends Struct {
1957
+ };
1958
+ __decorate([
1959
+ Struct.field(UInt32)
1960
+ ], dbgpagerows.prototype, "rows", void 0);
1961
+ dbgpagerows = __decorate([
1962
+ Struct.type('dbgpagerows')
1963
+ ], dbgpagerows);
1964
+ Types.dbgpagerows = dbgpagerows;
1965
+ let dbgpurge = class dbgpurge extends Struct {
1966
+ };
1967
+ __decorate([
1968
+ Struct.field(Name)
1969
+ ], dbgpurge.prototype, "table_name", void 0);
1970
+ __decorate([
1971
+ Struct.field(Name, { optional: true })
1972
+ ], dbgpurge.prototype, "scope", void 0);
1973
+ dbgpurge = __decorate([
1974
+ Struct.type('dbgpurge')
1975
+ ], dbgpurge);
1976
+ Types.dbgpurge = dbgpurge;
1977
+ let dbgseats = class dbgseats extends Struct {
1978
+ };
1979
+ __decorate([
1980
+ Struct.field(Int64)
1981
+ ], dbgseats.prototype, "x", void 0);
1982
+ __decorate([
1983
+ Struct.field(Int64)
1984
+ ], dbgseats.prototype, "y", void 0);
1985
+ __decorate([
1986
+ Struct.field(UInt32)
1987
+ ], dbgseats.prototype, "seats", void 0);
1988
+ dbgseats = __decorate([
1989
+ Struct.type('dbgseats')
1990
+ ], dbgseats);
1991
+ Types.dbgseats = dbgseats;
1511
1992
  let decomp_bucket = class decomp_bucket extends Struct {
1512
1993
  };
1513
1994
  __decorate([
@@ -1518,7 +1999,7 @@ var Types$1;
1518
1999
  ], decomp_bucket.prototype, "tier", void 0);
1519
2000
  __decorate([
1520
2001
  Struct.field(UInt32)
1521
- ], decomp_bucket.prototype, "raw_kg", void 0);
2002
+ ], decomp_bucket.prototype, "raw_mass", void 0);
1522
2003
  decomp_bucket = __decorate([
1523
2004
  Struct.type('decomp_bucket')
1524
2005
  ], decomp_bucket);
@@ -1530,7 +2011,7 @@ var Types$1;
1530
2011
  ], decomp_result.prototype, "item_id", void 0);
1531
2012
  __decorate([
1532
2013
  Struct.field(UInt64)
1533
- ], decomp_result.prototype, "processed_kg", void 0);
2014
+ ], decomp_result.prototype, "processed_mass", void 0);
1534
2015
  __decorate([
1535
2016
  Struct.field(decomp_bucket, { array: true })
1536
2017
  ], decomp_result.prototype, "buckets", void 0);
@@ -1592,33 +2073,33 @@ var Types$1;
1592
2073
  Struct.type('deploy')
1593
2074
  ], deploy);
1594
2075
  Types.deploy = deploy;
1595
- let depot_row = class depot_row extends Struct {
2076
+ let storage_row = class storage_row extends Struct {
1596
2077
  };
1597
2078
  __decorate([
1598
2079
  Struct.field(UInt64)
1599
- ], depot_row.prototype, "id", void 0);
2080
+ ], storage_row.prototype, "id", void 0);
1600
2081
  __decorate([
1601
2082
  Struct.field(Name)
1602
- ], depot_row.prototype, "owner", void 0);
2083
+ ], storage_row.prototype, "owner", void 0);
1603
2084
  __decorate([
1604
2085
  Struct.field(UInt64)
1605
- ], depot_row.prototype, "item_id", void 0);
2086
+ ], storage_row.prototype, "item_id", void 0);
1606
2087
  __decorate([
1607
2088
  Struct.field(UInt64)
1608
- ], depot_row.prototype, "quantity", void 0);
2089
+ ], storage_row.prototype, "quantity", void 0);
1609
2090
  __decorate([
1610
2091
  Struct.field(UInt64)
1611
- ], depot_row.prototype, "stats", void 0);
2092
+ ], storage_row.prototype, "stats", void 0);
1612
2093
  __decorate([
1613
2094
  Struct.field(module_entry, { array: true })
1614
- ], depot_row.prototype, "modules", void 0);
2095
+ ], storage_row.prototype, "modules", void 0);
1615
2096
  __decorate([
1616
2097
  Struct.field(UInt64, { optional: true })
1617
- ], depot_row.prototype, "sequence_id", void 0);
1618
- depot_row = __decorate([
1619
- Struct.type('depot_row')
1620
- ], depot_row);
1621
- Types.depot_row = depot_row;
2098
+ ], storage_row.prototype, "sequence_id", void 0);
2099
+ storage_row = __decorate([
2100
+ Struct.type('storage_row')
2101
+ ], storage_row);
2102
+ Types.storage_row = storage_row;
1622
2103
  let depot_view = class depot_view extends Struct {
1623
2104
  };
1624
2105
  __decorate([
@@ -1631,27 +2112,12 @@ var Types$1;
1631
2112
  Struct.field(UInt64)
1632
2113
  ], depot_view.prototype, "reserved_mass", void 0);
1633
2114
  __decorate([
1634
- Struct.field(depot_row, { array: true })
2115
+ Struct.field(storage_row, { array: true })
1635
2116
  ], depot_view.prototype, "rows", void 0);
1636
2117
  depot_view = __decorate([
1637
2118
  Struct.type('depot_view')
1638
2119
  ], depot_view);
1639
2120
  Types.depot_view = depot_view;
1640
- let depotacct_row = class depotacct_row extends Struct {
1641
- };
1642
- __decorate([
1643
- Struct.field(Name)
1644
- ], depotacct_row.prototype, "owner", void 0);
1645
- __decorate([
1646
- Struct.field(UInt64)
1647
- ], depotacct_row.prototype, "stored_mass", void 0);
1648
- __decorate([
1649
- Struct.field(UInt64)
1650
- ], depotacct_row.prototype, "reserved_mass", void 0);
1651
- depotacct_row = __decorate([
1652
- Struct.type('depotacct_row')
1653
- ], depotacct_row);
1654
- Types.depotacct_row = depotacct_row;
1655
2121
  let depotstore = class depotstore extends Struct {
1656
2122
  };
1657
2123
  __decorate([
@@ -1885,6 +2351,9 @@ var Types$1;
1885
2351
  __decorate([
1886
2352
  Struct.field(refit_op, { optional: true })
1887
2353
  ], task.prototype, "refit", void 0);
2354
+ __decorate([
2355
+ Struct.field(UInt32, { optional: true })
2356
+ ], task.prototype, "charter_node", void 0);
1888
2357
  task = __decorate([
1889
2358
  Struct.type('task')
1890
2359
  ], task);
@@ -2315,6 +2784,33 @@ var Types$1;
2315
2784
  Struct.type('genesisfleet')
2316
2785
  ], genesisfleet);
2317
2786
  Types.genesisfleet = genesisfleet;
2787
+ let genesisworld = class genesisworld extends Struct {
2788
+ };
2789
+ __decorate([
2790
+ Struct.field(Name)
2791
+ ], genesisworld.prototype, "founder", void 0);
2792
+ __decorate([
2793
+ Struct.field(Int64)
2794
+ ], genesisworld.prototype, "x", void 0);
2795
+ __decorate([
2796
+ Struct.field(Int64)
2797
+ ], genesisworld.prototype, "y", void 0);
2798
+ __decorate([
2799
+ Struct.field(UInt32, { array: true })
2800
+ ], genesisworld.prototype, "node_ids", void 0);
2801
+ genesisworld = __decorate([
2802
+ Struct.type('genesisworld')
2803
+ ], genesisworld);
2804
+ Types.genesisworld = genesisworld;
2805
+ let getbuildjobs = class getbuildjobs extends Struct {
2806
+ };
2807
+ __decorate([
2808
+ Struct.field(UInt64)
2809
+ ], getbuildjobs.prototype, "building_id", void 0);
2810
+ getbuildjobs = __decorate([
2811
+ Struct.type('getbuildjobs')
2812
+ ], getbuildjobs);
2813
+ Types.getbuildjobs = getbuildjobs;
2318
2814
  let getcharter = class getcharter extends Struct {
2319
2815
  };
2320
2816
  __decorate([
@@ -2333,6 +2829,12 @@ var Types$1;
2333
2829
  Struct.type('getcharttree')
2334
2830
  ], getcharttree);
2335
2831
  Types.getcharttree = getcharttree;
2832
+ let getchrtready = class getchrtready extends Struct {
2833
+ };
2834
+ getchrtready = __decorate([
2835
+ Struct.type('getchrtready')
2836
+ ], getchrtready);
2837
+ Types.getchrtready = getchrtready;
2336
2838
  let getcluster = class getcluster extends Struct {
2337
2839
  };
2338
2840
  __decorate([
@@ -2348,6 +2850,15 @@ var Types$1;
2348
2850
  Struct.type('getconfig')
2349
2851
  ], getconfig);
2350
2852
  Types.getconfig = getconfig;
2853
+ let getcraftjobs = class getcraftjobs extends Struct {
2854
+ };
2855
+ __decorate([
2856
+ Struct.field(UInt64)
2857
+ ], getcraftjobs.prototype, "building_id", void 0);
2858
+ getcraftjobs = __decorate([
2859
+ Struct.type('getcraftjobs')
2860
+ ], getcraftjobs);
2861
+ Types.getcraftjobs = getcraftjobs;
2351
2862
  let getdecomp = class getdecomp extends Struct {
2352
2863
  };
2353
2864
  __decorate([
@@ -2534,15 +3045,6 @@ var Types$1;
2534
3045
  Struct.type('getitemtypes')
2535
3046
  ], getitemtypes);
2536
3047
  Types.getitemtypes = getitemtypes;
2537
- let getjobs = class getjobs extends Struct {
2538
- };
2539
- __decorate([
2540
- Struct.field(UInt64)
2541
- ], getjobs.prototype, "workshop_id", void 0);
2542
- getjobs = __decorate([
2543
- Struct.type('getjobs')
2544
- ], getjobs);
2545
- Types.getjobs = getjobs;
2546
3048
  let getkindmeta = class getkindmeta extends Struct {
2547
3049
  };
2548
3050
  getkindmeta = __decorate([
@@ -2579,6 +3081,12 @@ var Types$1;
2579
3081
  Struct.type('getmintcfg')
2580
3082
  ], getmintcfg);
2581
3083
  Types.getmintcfg = getmintcfg;
3084
+ let getmintready = class getmintready extends Struct {
3085
+ };
3086
+ getmintready = __decorate([
3087
+ Struct.type('getmintready')
3088
+ ], getmintready);
3089
+ Types.getmintready = getmintready;
2582
3090
  let getmodtypes = class getmodtypes extends Struct {
2583
3091
  };
2584
3092
  getmodtypes = __decorate([
@@ -2699,15 +3207,6 @@ var Types$1;
2699
3207
  Struct.type('getresources')
2700
3208
  ], getresources);
2701
3209
  Types.getresources = getresources;
2702
- let getservice = class getservice extends Struct {
2703
- };
2704
- __decorate([
2705
- Struct.field(UInt64)
2706
- ], getservice.prototype, "workshop_id", void 0);
2707
- getservice = __decorate([
2708
- Struct.type('getservice')
2709
- ], getservice);
2710
- Types.getservice = getservice;
2711
3210
  let getslots = class getslots extends Struct {
2712
3211
  };
2713
3212
  getslots = __decorate([
@@ -2741,15 +3240,12 @@ var Types$1;
2741
3240
  Struct.type('getsummaries')
2742
3241
  ], getsummaries);
2743
3242
  Types.getsummaries = getsummaries;
2744
- let getupgjobs = class getupgjobs extends Struct {
3243
+ let getvoteready = class getvoteready extends Struct {
2745
3244
  };
2746
- __decorate([
2747
- Struct.field(UInt64)
2748
- ], getupgjobs.prototype, "dock_id", void 0);
2749
- getupgjobs = __decorate([
2750
- Struct.type('getupgjobs')
2751
- ], getupgjobs);
2752
- Types.getupgjobs = getupgjobs;
3245
+ getvoteready = __decorate([
3246
+ Struct.type('getvoteready')
3247
+ ], getvoteready);
3248
+ Types.getvoteready = getvoteready;
2753
3249
  let getvotes = class getvotes extends Struct {
2754
3250
  };
2755
3251
  __decorate([
@@ -2758,6 +3254,9 @@ var Types$1;
2758
3254
  __decorate([
2759
3255
  Struct.field(Int64)
2760
3256
  ], getvotes.prototype, "y", void 0);
3257
+ __decorate([
3258
+ Struct.field(Name)
3259
+ ], getvotes.prototype, "player", void 0);
2761
3260
  getvotes = __decorate([
2762
3261
  Struct.type('getvotes')
2763
3262
  ], getvotes);
@@ -2975,18 +3474,6 @@ var Types$1;
2975
3474
  Struct.type('importstate')
2976
3475
  ], importstate);
2977
3476
  Types.importstate = importstate;
2978
- let infballot_row = class infballot_row extends Struct {
2979
- };
2980
- __decorate([
2981
- Struct.field(UInt64)
2982
- ], infballot_row.prototype, "location_id", void 0);
2983
- __decorate([
2984
- Struct.field(UInt32)
2985
- ], infballot_row.prototype, "epoch", void 0);
2986
- infballot_row = __decorate([
2987
- Struct.type('infballot_row')
2988
- ], infballot_row);
2989
- Types.infballot_row = infballot_row;
2990
3477
  let infburn_row = class infburn_row extends Struct {
2991
3478
  };
2992
3479
  __decorate([
@@ -3011,53 +3498,20 @@ var Types$1;
3011
3498
  Struct.type('infdemand_row')
3012
3499
  ], infdemand_row);
3013
3500
  Types.infdemand_row = infdemand_row;
3014
- let infloc_row = class infloc_row extends Struct {
3015
- };
3016
- __decorate([
3017
- Struct.field(UInt64)
3018
- ], infloc_row.prototype, "location_id", void 0);
3019
- __decorate([
3020
- Struct.field(UInt64)
3021
- ], infloc_row.prototype, "lifetime", void 0);
3022
- __decorate([
3023
- Struct.field(UInt64)
3024
- ], infloc_row.prototype, "active", void 0);
3025
- __decorate([
3026
- Struct.field(UInt32)
3027
- ], infloc_row.prototype, "last_update_epoch", void 0);
3028
- __decorate([
3029
- Struct.field(UInt64)
3030
- ], infloc_row.prototype, "watermark", void 0);
3031
- __decorate([
3032
- Struct.field(UInt32)
3033
- ], infloc_row.prototype, "chosen", void 0);
3034
- __decorate([
3035
- Struct.field(UInt32)
3036
- ], infloc_row.prototype, "chosen_epoch", void 0);
3037
- __decorate([
3038
- Struct.field(Name)
3039
- ], infloc_row.prototype, "founder", void 0);
3040
- __decorate([
3041
- Struct.field(UInt32)
3042
- ], infloc_row.prototype, "founded", void 0);
3043
- infloc_row = __decorate([
3044
- Struct.type('infloc_row')
3045
- ], infloc_row);
3046
- Types.infloc_row = infloc_row;
3047
3501
  let influence_totals = class influence_totals extends Struct {
3048
3502
  };
3049
3503
  __decorate([
3050
3504
  Struct.field(UInt64)
3051
- ], influence_totals.prototype, "player_lifetime", void 0);
3505
+ ], influence_totals.prototype, "standing_lifetime", void 0);
3052
3506
  __decorate([
3053
3507
  Struct.field(UInt64)
3054
- ], influence_totals.prototype, "player_active", void 0);
3508
+ ], influence_totals.prototype, "standing_active", void 0);
3055
3509
  __decorate([
3056
3510
  Struct.field(UInt64)
3057
- ], influence_totals.prototype, "standing_lifetime", void 0);
3511
+ ], influence_totals.prototype, "citizenship_lifetime", void 0);
3058
3512
  __decorate([
3059
3513
  Struct.field(UInt64)
3060
- ], influence_totals.prototype, "standing_active", void 0);
3514
+ ], influence_totals.prototype, "citizenship_active", void 0);
3061
3515
  __decorate([
3062
3516
  Struct.field(UInt64)
3063
3517
  ], influence_totals.prototype, "location_lifetime", void 0);
@@ -3066,7 +3520,7 @@ var Types$1;
3066
3520
  ], influence_totals.prototype, "location_active", void 0);
3067
3521
  __decorate([
3068
3522
  Struct.field(UInt64)
3069
- ], influence_totals.prototype, "watermark", void 0);
3523
+ ], influence_totals.prototype, "spent", void 0);
3070
3524
  __decorate([
3071
3525
  Struct.field(UInt32)
3072
3526
  ], influence_totals.prototype, "mandate", void 0);
@@ -3098,42 +3552,6 @@ var Types$1;
3098
3552
  Struct.type('infmint_row')
3099
3553
  ], infmint_row);
3100
3554
  Types.infmint_row = infmint_row;
3101
- let infplayer_row = class infplayer_row extends Struct {
3102
- };
3103
- __decorate([
3104
- Struct.field(Name)
3105
- ], infplayer_row.prototype, "account", void 0);
3106
- __decorate([
3107
- Struct.field(UInt64)
3108
- ], infplayer_row.prototype, "lifetime", void 0);
3109
- __decorate([
3110
- Struct.field(UInt64)
3111
- ], infplayer_row.prototype, "active", void 0);
3112
- __decorate([
3113
- Struct.field(UInt32)
3114
- ], infplayer_row.prototype, "last_update_epoch", void 0);
3115
- infplayer_row = __decorate([
3116
- Struct.type('infplayer_row')
3117
- ], infplayer_row);
3118
- Types.infplayer_row = infplayer_row;
3119
- let infplayerloc_row = class infplayerloc_row extends Struct {
3120
- };
3121
- __decorate([
3122
- Struct.field(UInt64)
3123
- ], infplayerloc_row.prototype, "location_id", void 0);
3124
- __decorate([
3125
- Struct.field(UInt64)
3126
- ], infplayerloc_row.prototype, "lifetime", void 0);
3127
- __decorate([
3128
- Struct.field(UInt64)
3129
- ], infplayerloc_row.prototype, "active", void 0);
3130
- __decorate([
3131
- Struct.field(UInt32)
3132
- ], infplayerloc_row.prototype, "last_update_epoch", void 0);
3133
- infplayerloc_row = __decorate([
3134
- Struct.type('infplayerloc_row')
3135
- ], infplayerloc_row);
3136
- Types.infplayerloc_row = infplayerloc_row;
3137
3555
  let infpool_row = class infpool_row extends Struct {
3138
3556
  };
3139
3557
  __decorate([
@@ -3167,18 +3585,6 @@ var Types$1;
3167
3585
  Struct.type('infquality_row')
3168
3586
  ], infquality_row);
3169
3587
  Types.infquality_row = infquality_row;
3170
- let inftally_row = class inftally_row extends Struct {
3171
- };
3172
- __decorate([
3173
- Struct.field(UInt64)
3174
- ], inftally_row.prototype, "node_id", void 0);
3175
- __decorate([
3176
- Struct.field(UInt64)
3177
- ], inftally_row.prototype, "total", void 0);
3178
- inftally_row = __decorate([
3179
- Struct.type('inftally_row')
3180
- ], inftally_row);
3181
- Types.inftally_row = inftally_row;
3182
3588
  let infvalue_result = class infvalue_result extends Struct {
3183
3589
  };
3184
3590
  __decorate([
@@ -3191,24 +3597,6 @@ var Types$1;
3191
3597
  Struct.type('infvalue_result')
3192
3598
  ], infvalue_result);
3193
3599
  Types.infvalue_result = infvalue_result;
3194
- let infvote_row = class infvote_row extends Struct {
3195
- };
3196
- __decorate([
3197
- Struct.field(Name)
3198
- ], infvote_row.prototype, "account", void 0);
3199
- __decorate([
3200
- Struct.field(UInt32)
3201
- ], infvote_row.prototype, "epoch", void 0);
3202
- __decorate([
3203
- Struct.field(UInt32)
3204
- ], infvote_row.prototype, "node_id", void 0);
3205
- __decorate([
3206
- Struct.field(UInt64)
3207
- ], infvote_row.prototype, "weight", void 0);
3208
- infvote_row = __decorate([
3209
- Struct.type('infvote_row')
3210
- ], infvote_row);
3211
- Types.infvote_row = infvote_row;
3212
3600
  let infweight_row = class infweight_row extends Struct {
3213
3601
  };
3214
3602
  __decorate([
@@ -3365,57 +3753,6 @@ var Types$1;
3365
3753
  Struct.type('job_receipt')
3366
3754
  ], job_receipt);
3367
3755
  Types.job_receipt = job_receipt;
3368
- let job_row = class job_row extends Struct {
3369
- };
3370
- __decorate([
3371
- Struct.field(UInt64)
3372
- ], job_row.prototype, "id", void 0);
3373
- __decorate([
3374
- Struct.field(UInt64)
3375
- ], job_row.prototype, "workshop", void 0);
3376
- __decorate([
3377
- Struct.field(UInt8)
3378
- ], job_row.prototype, "socket", void 0);
3379
- __decorate([
3380
- Struct.field(Name)
3381
- ], job_row.prototype, "owner", void 0);
3382
- __decorate([
3383
- Struct.field(UInt64)
3384
- ], job_row.prototype, "ship_id", void 0);
3385
- __decorate([
3386
- Struct.field(coordinates)
3387
- ], job_row.prototype, "coords", void 0);
3388
- __decorate([
3389
- Struct.field(TimePoint)
3390
- ], job_row.prototype, "starts_at", void 0);
3391
- __decorate([
3392
- Struct.field(TimePoint)
3393
- ], job_row.prototype, "completes_at", void 0);
3394
- __decorate([
3395
- Struct.field(UInt16)
3396
- ], job_row.prototype, "recipe_id", void 0);
3397
- __decorate([
3398
- Struct.field(UInt32)
3399
- ], job_row.prototype, "quantity", void 0);
3400
- __decorate([
3401
- Struct.field(UInt32)
3402
- ], job_row.prototype, "energy_paid", void 0);
3403
- __decorate([
3404
- Struct.field(cargo_item, { array: true })
3405
- ], job_row.prototype, "cargo", void 0);
3406
- job_row = __decorate([
3407
- Struct.type('job_row')
3408
- ], job_row);
3409
- Types.job_row = job_row;
3410
- let jobs_result = class jobs_result extends Struct {
3411
- };
3412
- __decorate([
3413
- Struct.field(job_row, { array: true })
3414
- ], jobs_result.prototype, "jobs", void 0);
3415
- jobs_result = __decorate([
3416
- Struct.type('jobs_result')
3417
- ], jobs_result);
3418
- Types.jobs_result = jobs_result;
3419
3756
  let join = class join extends Struct {
3420
3757
  };
3421
3758
  __decorate([
@@ -3551,6 +3888,33 @@ var Types$1;
3551
3888
  Struct.type('location_info')
3552
3889
  ], location_info);
3553
3890
  Types.location_info = location_info;
3891
+ let locker_row = class locker_row extends Struct {
3892
+ };
3893
+ __decorate([
3894
+ Struct.field(UInt64)
3895
+ ], locker_row.prototype, "depot_id", void 0);
3896
+ __decorate([
3897
+ Struct.field(UInt64)
3898
+ ], locker_row.prototype, "stored_mass", void 0);
3899
+ __decorate([
3900
+ Struct.field(UInt64)
3901
+ ], locker_row.prototype, "reserved_mass", void 0);
3902
+ locker_row = __decorate([
3903
+ Struct.type('locker_row')
3904
+ ], locker_row);
3905
+ Types.locker_row = locker_row;
3906
+ let mandates_row = class mandates_row extends Struct {
3907
+ };
3908
+ __decorate([
3909
+ Struct.field(UInt32)
3910
+ ], mandates_row.prototype, "node_id", void 0);
3911
+ __decorate([
3912
+ Struct.field(UInt16)
3913
+ ], mandates_row.prototype, "repeats", void 0);
3914
+ mandates_row = __decorate([
3915
+ Struct.type('mandates_row')
3916
+ ], mandates_row);
3917
+ Types.mandates_row = mandates_row;
3554
3918
  let mint_threshold_view = class mint_threshold_view extends Struct {
3555
3919
  };
3556
3920
  __decorate([
@@ -3980,6 +4344,18 @@ var Types$1;
3980
4344
  Struct.type('pools_result')
3981
4345
  ], pools_result);
3982
4346
  Types.pools_result = pools_result;
4347
+ let progress_row = class progress_row extends Struct {
4348
+ };
4349
+ __decorate([
4350
+ Struct.field(UInt32)
4351
+ ], progress_row.prototype, "node_id", void 0);
4352
+ __decorate([
4353
+ Struct.field(UInt64)
4354
+ ], progress_row.prototype, "amount", void 0);
4355
+ progress_row = __decorate([
4356
+ Struct.type('progress_row')
4357
+ ], progress_row);
4358
+ Types.progress_row = progress_row;
3983
4359
  let projected_state = class projected_state extends Struct {
3984
4360
  };
3985
4361
  __decorate([
@@ -4256,27 +4632,6 @@ var Types$1;
4256
4632
  Struct.type('route_waypoint')
4257
4633
  ], route_waypoint);
4258
4634
  Types.route_waypoint = route_waypoint;
4259
- let service_socket = class service_socket extends Struct {
4260
- };
4261
- __decorate([
4262
- Struct.field('bool')
4263
- ], service_socket.prototype, "open", void 0);
4264
- service_socket = __decorate([
4265
- Struct.type('service_socket')
4266
- ], service_socket);
4267
- Types.service_socket = service_socket;
4268
- let service_row = class service_row extends Struct {
4269
- };
4270
- __decorate([
4271
- Struct.field(UInt64)
4272
- ], service_row.prototype, "entity", void 0);
4273
- __decorate([
4274
- Struct.field(service_socket, { array: true })
4275
- ], service_row.prototype, "sockets", void 0);
4276
- service_row = __decorate([
4277
- Struct.type('service_row')
4278
- ], service_row);
4279
- Types.service_row = service_row;
4280
4635
  let setcivic = class setcivic extends Struct {
4281
4636
  };
4282
4637
  __decorate([
@@ -4397,21 +4752,6 @@ var Types$1;
4397
4752
  Struct.type('setnftcfg')
4398
4753
  ], setnftcfg);
4399
4754
  Types.setnftcfg = setnftcfg;
4400
- let setsocket = class setsocket extends Struct {
4401
- };
4402
- __decorate([
4403
- Struct.field(UInt64)
4404
- ], setsocket.prototype, "workshop_id", void 0);
4405
- __decorate([
4406
- Struct.field(UInt8)
4407
- ], setsocket.prototype, "slot", void 0);
4408
- __decorate([
4409
- Struct.field('bool')
4410
- ], setsocket.prototype, "open", void 0);
4411
- setsocket = __decorate([
4412
- Struct.type('setsocket')
4413
- ], setsocket);
4414
- Types.setsocket = setsocket;
4415
4755
  let setthreshold = class setthreshold extends Struct {
4416
4756
  };
4417
4757
  __decorate([
@@ -4421,6 +4761,27 @@ var Types$1;
4421
4761
  Struct.type('setthreshold')
4422
4762
  ], setthreshold);
4423
4763
  Types.setthreshold = setthreshold;
4764
+ let settleballot = class settleballot extends Struct {
4765
+ };
4766
+ __decorate([
4767
+ Struct.field(UInt64)
4768
+ ], settleballot.prototype, "ballot_id", void 0);
4769
+ __decorate([
4770
+ Struct.field(UInt32)
4771
+ ], settleballot.prototype, "max_pages", void 0);
4772
+ settleballot = __decorate([
4773
+ Struct.type('settleballot')
4774
+ ], settleballot);
4775
+ Types.settleballot = settleballot;
4776
+ let setunwrapmin = class setunwrapmin extends Struct {
4777
+ };
4778
+ __decorate([
4779
+ Struct.field(UInt64)
4780
+ ], setunwrapmin.prototype, "asset_id", void 0);
4781
+ setunwrapmin = __decorate([
4782
+ Struct.type('setunwrapmin')
4783
+ ], setunwrapmin);
4784
+ Types.setunwrapmin = setunwrapmin;
4424
4785
  let setwrapcost = class setwrapcost extends Struct {
4425
4786
  };
4426
4787
  __decorate([
@@ -4466,6 +4827,24 @@ var Types$1;
4466
4827
  Struct.type('shuttle')
4467
4828
  ], shuttle);
4468
4829
  Types.shuttle = shuttle;
4830
+ let standing_row = class standing_row extends Struct {
4831
+ };
4832
+ __decorate([
4833
+ Struct.field(Name)
4834
+ ], standing_row.prototype, "account", void 0);
4835
+ __decorate([
4836
+ Struct.field(UInt64)
4837
+ ], standing_row.prototype, "lifetime", void 0);
4838
+ __decorate([
4839
+ Struct.field(UInt64)
4840
+ ], standing_row.prototype, "active", void 0);
4841
+ __decorate([
4842
+ Struct.field(UInt32)
4843
+ ], standing_row.prototype, "active_epoch", void 0);
4844
+ standing_row = __decorate([
4845
+ Struct.type('standing_row')
4846
+ ], standing_row);
4847
+ Types.standing_row = standing_row;
4469
4848
  let stowcargo = class stowcargo extends Struct {
4470
4849
  };
4471
4850
  __decorate([
@@ -4657,12 +5036,15 @@ var Types$1;
4657
5036
  __decorate([
4658
5037
  Struct.field(UInt64)
4659
5038
  ], vote_option.prototype, "cost", void 0);
5039
+ __decorate([
5040
+ Struct.field(UInt32)
5041
+ ], vote_option.prototype, "seat", void 0);
4660
5042
  __decorate([
4661
5043
  Struct.field(UInt64)
4662
- ], vote_option.prototype, "total", void 0);
5044
+ ], vote_option.prototype, "weight", void 0);
4663
5045
  __decorate([
4664
- Struct.field('bool')
4665
- ], vote_option.prototype, "eligible", void 0);
5046
+ Struct.field(UInt32)
5047
+ ], vote_option.prototype, "rank", void 0);
4666
5048
  vote_option = __decorate([
4667
5049
  Struct.type('vote_option')
4668
5050
  ], vote_option);
@@ -4672,24 +5054,30 @@ var Types$1;
4672
5054
  __decorate([
4673
5055
  Struct.field(UInt64)
4674
5056
  ], vote_result.prototype, "location_id", void 0);
5057
+ __decorate([
5058
+ Struct.field(UInt64)
5059
+ ], vote_result.prototype, "ballot_id", void 0);
4675
5060
  __decorate([
4676
5061
  Struct.field(UInt32)
4677
5062
  ], vote_result.prototype, "epoch", void 0);
4678
5063
  __decorate([
4679
5064
  Struct.field(UInt32)
4680
- ], vote_result.prototype, "ballot_epoch", void 0);
5065
+ ], vote_result.prototype, "settled_epoch", void 0);
4681
5066
  __decorate([
4682
5067
  Struct.field(UInt32)
4683
- ], vote_result.prototype, "chosen", void 0);
5068
+ ], vote_result.prototype, "seats", void 0);
4684
5069
  __decorate([
4685
- Struct.field(UInt32)
4686
- ], vote_result.prototype, "chosen_epoch", void 0);
5070
+ Struct.field('bool')
5071
+ ], vote_result.prototype, "settling", void 0);
4687
5072
  __decorate([
4688
- Struct.field(UInt32)
4689
- ], vote_result.prototype, "effective", void 0);
5073
+ Struct.field(UInt32, { array: true })
5074
+ ], vote_result.prototype, "queue", void 0);
4690
5075
  __decorate([
4691
5076
  Struct.field(vote_option, { array: true })
4692
5077
  ], vote_result.prototype, "options", void 0);
5078
+ __decorate([
5079
+ Struct.field(UInt32, { array: true })
5080
+ ], vote_result.prototype, "picks", void 0);
4693
5081
  vote_result = __decorate([
4694
5082
  Struct.type('vote_result')
4695
5083
  ], vote_result);
@@ -4735,6 +5123,9 @@ var Types$1;
4735
5123
  __decorate([
4736
5124
  Struct.field(charter_result)
4737
5125
  ], types_row.prototype, "charter_result_type", void 0);
5126
+ __decorate([
5127
+ Struct.field(charterready_result)
5128
+ ], types_row.prototype, "charterready_result_type", void 0);
4738
5129
  __decorate([
4739
5130
  Struct.field(vote_result)
4740
5131
  ], types_row.prototype, "vote_result_type", void 0);
@@ -4772,48 +5163,6 @@ var Types$1;
4772
5163
  Struct.type('unload')
4773
5164
  ], unload);
4774
5165
  Types.unload = unload;
4775
- let upgjob_row = class upgjob_row extends Struct {
4776
- };
4777
- __decorate([
4778
- Struct.field(UInt64)
4779
- ], upgjob_row.prototype, "id", void 0);
4780
- __decorate([
4781
- Struct.field(UInt64)
4782
- ], upgjob_row.prototype, "dock", void 0);
4783
- __decorate([
4784
- Struct.field(UInt64)
4785
- ], upgjob_row.prototype, "target", void 0);
4786
- __decorate([
4787
- Struct.field(Name)
4788
- ], upgjob_row.prototype, "owner", void 0);
4789
- __decorate([
4790
- Struct.field(coordinates)
4791
- ], upgjob_row.prototype, "coords", void 0);
4792
- __decorate([
4793
- Struct.field(TimePoint)
4794
- ], upgjob_row.prototype, "starts_at", void 0);
4795
- __decorate([
4796
- Struct.field(TimePoint)
4797
- ], upgjob_row.prototype, "completes_at", void 0);
4798
- __decorate([
4799
- Struct.field(UInt16)
4800
- ], upgjob_row.prototype, "target_item_id", void 0);
4801
- __decorate([
4802
- Struct.field(cargo_item, { array: true })
4803
- ], upgjob_row.prototype, "cargo", void 0);
4804
- upgjob_row = __decorate([
4805
- Struct.type('upgjob_row')
4806
- ], upgjob_row);
4807
- Types.upgjob_row = upgjob_row;
4808
- let upgjobs_result = class upgjobs_result extends Struct {
4809
- };
4810
- __decorate([
4811
- Struct.field(upgjob_row, { array: true })
4812
- ], upgjobs_result.prototype, "jobs", void 0);
4813
- upgjobs_result = __decorate([
4814
- Struct.type('upgjobs_result')
4815
- ], upgjobs_result);
4816
- Types.upgjobs_result = upgjobs_result;
4817
5166
  let upgrade = class upgrade extends Struct {
4818
5167
  };
4819
5168
  __decorate([
@@ -4835,47 +5184,11 @@ var Types$1;
4835
5184
  Struct.type('upgrade')
4836
5185
  ], upgrade);
4837
5186
  Types.upgrade = upgrade;
4838
- let upgradejob = class upgradejob extends Struct {
4839
- };
4840
- __decorate([
4841
- Struct.field(UInt64)
4842
- ], upgradejob.prototype, "target_id", void 0);
4843
- __decorate([
4844
- Struct.field(UInt64)
4845
- ], upgradejob.prototype, "dock_id", void 0);
4846
- __decorate([
4847
- Struct.field(UInt16)
4848
- ], upgradejob.prototype, "target_item_id", void 0);
4849
- __decorate([
4850
- Struct.field(cargo_item, { array: true })
4851
- ], upgradejob.prototype, "inputs", void 0);
4852
- upgradejob = __decorate([
4853
- Struct.type('upgradejob')
4854
- ], upgradejob);
4855
- Types.upgradejob = upgradejob;
4856
- let votecharter = class votecharter extends Struct {
4857
- };
4858
- __decorate([
4859
- Struct.field(Name)
4860
- ], votecharter.prototype, "player", void 0);
4861
- __decorate([
4862
- Struct.field(Int64)
4863
- ], votecharter.prototype, "x", void 0);
4864
- __decorate([
4865
- Struct.field(Int64)
4866
- ], votecharter.prototype, "y", void 0);
4867
- __decorate([
4868
- Struct.field(UInt32)
4869
- ], votecharter.prototype, "node_id", void 0);
4870
- votecharter = __decorate([
4871
- Struct.type('votecharter')
4872
- ], votecharter);
4873
- Types.votecharter = votecharter;
4874
5187
  let voteready = class voteready extends Struct {
4875
5188
  };
4876
5189
  __decorate([
4877
5190
  Struct.field(UInt32)
4878
- ], voteready.prototype, "max_ballots", void 0);
5191
+ ], voteready.prototype, "max_pages", void 0);
4879
5192
  voteready = __decorate([
4880
5193
  Struct.type('voteready')
4881
5194
  ], voteready);
@@ -4901,6 +5214,39 @@ var Types$1;
4901
5214
  Struct.type('wipe')
4902
5215
  ], wipe);
4903
5216
  Types.wipe = wipe;
5217
+ let worlds_row = class worlds_row extends Struct {
5218
+ };
5219
+ __decorate([
5220
+ Struct.field(UInt64)
5221
+ ], worlds_row.prototype, "location_id", void 0);
5222
+ __decorate([
5223
+ Struct.field(UInt64)
5224
+ ], worlds_row.prototype, "lifetime", void 0);
5225
+ __decorate([
5226
+ Struct.field(UInt64)
5227
+ ], worlds_row.prototype, "active", void 0);
5228
+ __decorate([
5229
+ Struct.field(UInt32)
5230
+ ], worlds_row.prototype, "active_epoch", void 0);
5231
+ __decorate([
5232
+ Struct.field(UInt64)
5233
+ ], worlds_row.prototype, "spent", void 0);
5234
+ __decorate([
5235
+ Struct.field(UInt64)
5236
+ ], worlds_row.prototype, "unassigned", void 0);
5237
+ __decorate([
5238
+ Struct.field(UInt64)
5239
+ ], worlds_row.prototype, "ballot_id", void 0);
5240
+ __decorate([
5241
+ Struct.field(Name)
5242
+ ], worlds_row.prototype, "founder", void 0);
5243
+ __decorate([
5244
+ Struct.field(UInt32)
5245
+ ], worlds_row.prototype, "founded", void 0);
5246
+ worlds_row = __decorate([
5247
+ Struct.type('worlds_row')
5248
+ ], worlds_row);
5249
+ Types.worlds_row = worlds_row;
4904
5250
  let wormhole_info = class wormhole_info extends Struct {
4905
5251
  };
4906
5252
  __decorate([
@@ -4924,6 +5270,9 @@ var Types$1;
4924
5270
  __decorate([
4925
5271
  Struct.field(Name)
4926
5272
  ], wrapconfig_row.prototype, "fee_account", void 0);
5273
+ __decorate([
5274
+ Struct.field(UInt64)
5275
+ ], wrapconfig_row.prototype, "min_asset_id", void 0);
4927
5276
  wrapconfig_row = __decorate([
4928
5277
  Struct.type('wrapconfig_row')
4929
5278
  ], wrapconfig_row);
@@ -4945,42 +5294,44 @@ var Types$1;
4945
5294
  Types.wrapcost_row = wrapcost_row;
4946
5295
  })(Types$1 || (Types$1 = {}));
4947
5296
  ({
5297
+ ballot: Types$1.ballot_row,
5298
+ ballotpicks: Types$1.ballotpicks_row,
5299
+ ballotseq: Types$1.ballot_seq_row,
5300
+ ballotsettle: Types$1.ballotsettle_row,
5301
+ buildings: Types$1.buildings_row,
5302
+ buildjobs: Types$1.buildjob_row,
4948
5303
  cargo: Types$1.cargo_row,
4949
- charters: Types$1.charters_row,
5304
+ citizenship: Types$1.citizenship_row,
4950
5305
  civicconfig: Types$1.civicconfig_row,
4951
5306
  claims: Types$1.claim_row,
4952
5307
  cluster: Types$1.cluster_row,
4953
5308
  commit: Types$1.commit_row,
4954
- depot: Types$1.depot_row,
4955
- depotacct: Types$1.depotacct_row,
5309
+ craftjobs: Types$1.craftjob_row,
4956
5310
  entity: Types$1.entity_row,
4957
5311
  entitygroup: Types$1.entitygroup_row,
4958
5312
  entityseq: Types$1.entity_seq_row,
4959
5313
  epoch: Types$1.epoch_row,
4960
- infballot: Types$1.infballot_row,
4961
5314
  infburn: Types$1.infburn_row,
4962
5315
  infdemand: Types$1.infdemand_row,
4963
- infloc: Types$1.infloc_row,
4964
5316
  infmint: Types$1.infmint_row,
4965
- infplayer: Types$1.infplayer_row,
4966
- infplayerloc: Types$1.infplayerloc_row,
4967
5317
  infpool: Types$1.infpool_row,
4968
5318
  infquality: Types$1.infquality_row,
4969
- inftally: Types$1.inftally_row,
4970
- infvote: Types$1.infvote_row,
4971
5319
  infweight: Types$1.infweight_row,
4972
- jobs: Types$1.job_row,
5320
+ lockers: Types$1.locker_row,
5321
+ mandates: Types$1.mandates_row,
4973
5322
  mintq: Types$1.mintq_row,
4974
5323
  nftconfig: Types$1.nftconfig_row,
4975
5324
  oraclecfg: Types$1.oracle_config_row,
4976
5325
  oracles: Types$1.oracle_row,
4977
5326
  player: Types$1.player_row,
5327
+ progress: Types$1.progress_row,
4978
5328
  reserve: Types$1.reserve_row,
4979
5329
  reveal: Types$1.reveal_row,
4980
- service: Types$1.service_row,
5330
+ standing: Types$1.standing_row,
4981
5331
  state: Types$1.state_row,
5332
+ storage: Types$1.storage_row,
4982
5333
  types: Types$1.types_row,
4983
- upgjobs: Types$1.upgjob_row,
5334
+ worlds: Types$1.worlds_row,
4984
5335
  wrapconfig: Types$1.wrapconfig_row,
4985
5336
  wrapcost: Types$1.wrapcost_row,
4986
5337
  });
@@ -5133,756 +5484,756 @@ var Types;
5133
5484
  var items = [
5134
5485
  {
5135
5486
  id: 101,
5136
- mass: 1000,
5487
+ mass: 10,
5137
5488
  type: "resource",
5138
5489
  tier: 1,
5139
5490
  category: "ore"
5140
5491
  },
5141
5492
  {
5142
5493
  id: 102,
5143
- mass: 1000,
5494
+ mass: 10,
5144
5495
  type: "resource",
5145
5496
  tier: 2,
5146
5497
  category: "ore"
5147
5498
  },
5148
5499
  {
5149
5500
  id: 103,
5150
- mass: 1000,
5501
+ mass: 10,
5151
5502
  type: "resource",
5152
5503
  tier: 3,
5153
5504
  category: "ore"
5154
5505
  },
5155
5506
  {
5156
5507
  id: 104,
5157
- mass: 1000,
5508
+ mass: 10,
5158
5509
  type: "resource",
5159
5510
  tier: 4,
5160
5511
  category: "ore"
5161
5512
  },
5162
5513
  {
5163
5514
  id: 105,
5164
- mass: 1000,
5515
+ mass: 10,
5165
5516
  type: "resource",
5166
5517
  tier: 5,
5167
5518
  category: "ore"
5168
5519
  },
5169
5520
  {
5170
5521
  id: 106,
5171
- mass: 1000,
5522
+ mass: 10,
5172
5523
  type: "resource",
5173
5524
  tier: 6,
5174
5525
  category: "ore"
5175
5526
  },
5176
5527
  {
5177
5528
  id: 107,
5178
- mass: 1000,
5529
+ mass: 10,
5179
5530
  type: "resource",
5180
5531
  tier: 7,
5181
5532
  category: "ore"
5182
5533
  },
5183
5534
  {
5184
5535
  id: 108,
5185
- mass: 1000,
5536
+ mass: 10,
5186
5537
  type: "resource",
5187
5538
  tier: 8,
5188
5539
  category: "ore"
5189
5540
  },
5190
5541
  {
5191
5542
  id: 109,
5192
- mass: 1000,
5543
+ mass: 10,
5193
5544
  type: "resource",
5194
5545
  tier: 9,
5195
5546
  category: "ore"
5196
5547
  },
5197
5548
  {
5198
5549
  id: 110,
5199
- mass: 1000,
5550
+ mass: 10,
5200
5551
  type: "resource",
5201
5552
  tier: 10,
5202
5553
  category: "ore"
5203
5554
  },
5204
5555
  {
5205
5556
  id: 201,
5206
- mass: 1000,
5557
+ mass: 10,
5207
5558
  type: "resource",
5208
5559
  tier: 1,
5209
5560
  category: "crystal"
5210
5561
  },
5211
5562
  {
5212
5563
  id: 202,
5213
- mass: 1000,
5564
+ mass: 10,
5214
5565
  type: "resource",
5215
5566
  tier: 2,
5216
5567
  category: "crystal"
5217
5568
  },
5218
5569
  {
5219
5570
  id: 203,
5220
- mass: 1000,
5571
+ mass: 10,
5221
5572
  type: "resource",
5222
5573
  tier: 3,
5223
5574
  category: "crystal"
5224
5575
  },
5225
5576
  {
5226
5577
  id: 204,
5227
- mass: 1000,
5578
+ mass: 10,
5228
5579
  type: "resource",
5229
5580
  tier: 4,
5230
5581
  category: "crystal"
5231
5582
  },
5232
5583
  {
5233
5584
  id: 205,
5234
- mass: 1000,
5585
+ mass: 10,
5235
5586
  type: "resource",
5236
5587
  tier: 5,
5237
5588
  category: "crystal"
5238
5589
  },
5239
5590
  {
5240
5591
  id: 206,
5241
- mass: 1000,
5592
+ mass: 10,
5242
5593
  type: "resource",
5243
5594
  tier: 6,
5244
5595
  category: "crystal"
5245
5596
  },
5246
5597
  {
5247
5598
  id: 207,
5248
- mass: 1000,
5599
+ mass: 10,
5249
5600
  type: "resource",
5250
5601
  tier: 7,
5251
5602
  category: "crystal"
5252
5603
  },
5253
5604
  {
5254
5605
  id: 208,
5255
- mass: 1000,
5606
+ mass: 10,
5256
5607
  type: "resource",
5257
5608
  tier: 8,
5258
5609
  category: "crystal"
5259
5610
  },
5260
5611
  {
5261
5612
  id: 209,
5262
- mass: 1000,
5613
+ mass: 10,
5263
5614
  type: "resource",
5264
5615
  tier: 9,
5265
5616
  category: "crystal"
5266
5617
  },
5267
5618
  {
5268
5619
  id: 210,
5269
- mass: 1000,
5620
+ mass: 10,
5270
5621
  type: "resource",
5271
5622
  tier: 10,
5272
5623
  category: "crystal"
5273
5624
  },
5274
5625
  {
5275
5626
  id: 301,
5276
- mass: 1000,
5627
+ mass: 10,
5277
5628
  type: "resource",
5278
5629
  tier: 1,
5279
5630
  category: "gas"
5280
5631
  },
5281
5632
  {
5282
5633
  id: 302,
5283
- mass: 1000,
5634
+ mass: 10,
5284
5635
  type: "resource",
5285
5636
  tier: 2,
5286
5637
  category: "gas"
5287
5638
  },
5288
5639
  {
5289
5640
  id: 303,
5290
- mass: 1000,
5641
+ mass: 10,
5291
5642
  type: "resource",
5292
5643
  tier: 3,
5293
5644
  category: "gas"
5294
5645
  },
5295
5646
  {
5296
5647
  id: 304,
5297
- mass: 1000,
5648
+ mass: 10,
5298
5649
  type: "resource",
5299
5650
  tier: 4,
5300
5651
  category: "gas"
5301
5652
  },
5302
5653
  {
5303
5654
  id: 305,
5304
- mass: 1000,
5655
+ mass: 10,
5305
5656
  type: "resource",
5306
5657
  tier: 5,
5307
5658
  category: "gas"
5308
5659
  },
5309
5660
  {
5310
5661
  id: 306,
5311
- mass: 1000,
5662
+ mass: 10,
5312
5663
  type: "resource",
5313
5664
  tier: 6,
5314
5665
  category: "gas"
5315
5666
  },
5316
5667
  {
5317
5668
  id: 307,
5318
- mass: 1000,
5669
+ mass: 10,
5319
5670
  type: "resource",
5320
5671
  tier: 7,
5321
5672
  category: "gas"
5322
5673
  },
5323
5674
  {
5324
5675
  id: 308,
5325
- mass: 1000,
5676
+ mass: 10,
5326
5677
  type: "resource",
5327
5678
  tier: 8,
5328
5679
  category: "gas"
5329
5680
  },
5330
5681
  {
5331
5682
  id: 309,
5332
- mass: 1000,
5683
+ mass: 10,
5333
5684
  type: "resource",
5334
5685
  tier: 9,
5335
5686
  category: "gas"
5336
5687
  },
5337
5688
  {
5338
5689
  id: 310,
5339
- mass: 1000,
5690
+ mass: 10,
5340
5691
  type: "resource",
5341
5692
  tier: 10,
5342
5693
  category: "gas"
5343
5694
  },
5344
5695
  {
5345
5696
  id: 401,
5346
- mass: 1000,
5697
+ mass: 10,
5347
5698
  type: "resource",
5348
5699
  tier: 1,
5349
5700
  category: "regolith"
5350
5701
  },
5351
5702
  {
5352
5703
  id: 402,
5353
- mass: 1000,
5704
+ mass: 10,
5354
5705
  type: "resource",
5355
5706
  tier: 2,
5356
5707
  category: "regolith"
5357
5708
  },
5358
5709
  {
5359
5710
  id: 403,
5360
- mass: 1000,
5711
+ mass: 10,
5361
5712
  type: "resource",
5362
5713
  tier: 3,
5363
5714
  category: "regolith"
5364
5715
  },
5365
5716
  {
5366
5717
  id: 404,
5367
- mass: 1000,
5718
+ mass: 10,
5368
5719
  type: "resource",
5369
5720
  tier: 4,
5370
5721
  category: "regolith"
5371
5722
  },
5372
5723
  {
5373
5724
  id: 405,
5374
- mass: 1000,
5725
+ mass: 10,
5375
5726
  type: "resource",
5376
5727
  tier: 5,
5377
5728
  category: "regolith"
5378
5729
  },
5379
5730
  {
5380
5731
  id: 406,
5381
- mass: 1000,
5732
+ mass: 10,
5382
5733
  type: "resource",
5383
5734
  tier: 6,
5384
5735
  category: "regolith"
5385
5736
  },
5386
5737
  {
5387
5738
  id: 407,
5388
- mass: 1000,
5739
+ mass: 10,
5389
5740
  type: "resource",
5390
5741
  tier: 7,
5391
5742
  category: "regolith"
5392
5743
  },
5393
5744
  {
5394
5745
  id: 408,
5395
- mass: 1000,
5746
+ mass: 10,
5396
5747
  type: "resource",
5397
5748
  tier: 8,
5398
5749
  category: "regolith"
5399
5750
  },
5400
5751
  {
5401
5752
  id: 409,
5402
- mass: 1000,
5753
+ mass: 10,
5403
5754
  type: "resource",
5404
5755
  tier: 9,
5405
5756
  category: "regolith"
5406
5757
  },
5407
5758
  {
5408
5759
  id: 410,
5409
- mass: 1000,
5760
+ mass: 10,
5410
5761
  type: "resource",
5411
5762
  tier: 10,
5412
5763
  category: "regolith"
5413
5764
  },
5414
5765
  {
5415
5766
  id: 501,
5416
- mass: 1000,
5767
+ mass: 10,
5417
5768
  type: "resource",
5418
5769
  tier: 1,
5419
5770
  category: "biomass"
5420
5771
  },
5421
5772
  {
5422
5773
  id: 502,
5423
- mass: 1000,
5774
+ mass: 10,
5424
5775
  type: "resource",
5425
5776
  tier: 2,
5426
5777
  category: "biomass"
5427
5778
  },
5428
5779
  {
5429
5780
  id: 503,
5430
- mass: 1000,
5781
+ mass: 10,
5431
5782
  type: "resource",
5432
5783
  tier: 3,
5433
5784
  category: "biomass"
5434
5785
  },
5435
5786
  {
5436
5787
  id: 504,
5437
- mass: 1000,
5788
+ mass: 10,
5438
5789
  type: "resource",
5439
5790
  tier: 4,
5440
5791
  category: "biomass"
5441
5792
  },
5442
5793
  {
5443
5794
  id: 505,
5444
- mass: 1000,
5795
+ mass: 10,
5445
5796
  type: "resource",
5446
5797
  tier: 5,
5447
5798
  category: "biomass"
5448
5799
  },
5449
5800
  {
5450
5801
  id: 506,
5451
- mass: 1000,
5802
+ mass: 10,
5452
5803
  type: "resource",
5453
5804
  tier: 6,
5454
5805
  category: "biomass"
5455
5806
  },
5456
5807
  {
5457
5808
  id: 507,
5458
- mass: 1000,
5809
+ mass: 10,
5459
5810
  type: "resource",
5460
5811
  tier: 7,
5461
5812
  category: "biomass"
5462
5813
  },
5463
5814
  {
5464
5815
  id: 508,
5465
- mass: 1000,
5816
+ mass: 10,
5466
5817
  type: "resource",
5467
5818
  tier: 8,
5468
5819
  category: "biomass"
5469
5820
  },
5470
5821
  {
5471
5822
  id: 509,
5472
- mass: 1000,
5823
+ mass: 10,
5473
5824
  type: "resource",
5474
5825
  tier: 9,
5475
5826
  category: "biomass"
5476
5827
  },
5477
5828
  {
5478
5829
  id: 510,
5479
- mass: 1000,
5830
+ mass: 10,
5480
5831
  type: "resource",
5481
5832
  tier: 10,
5482
5833
  category: "biomass"
5483
5834
  },
5484
5835
  {
5485
5836
  id: 10001,
5486
- mass: 4000,
5837
+ mass: 40,
5487
5838
  type: "component",
5488
5839
  tier: 1
5489
5840
  },
5490
5841
  {
5491
5842
  id: 10002,
5492
- mass: 4000,
5843
+ mass: 40,
5493
5844
  type: "component",
5494
5845
  tier: 1
5495
5846
  },
5496
5847
  {
5497
5848
  id: 10003,
5498
- mass: 4000,
5849
+ mass: 40,
5499
5850
  type: "component",
5500
5851
  tier: 1
5501
5852
  },
5502
5853
  {
5503
5854
  id: 10004,
5504
- mass: 4000,
5855
+ mass: 40,
5505
5856
  type: "component",
5506
5857
  tier: 1
5507
5858
  },
5508
5859
  {
5509
5860
  id: 10005,
5510
- mass: 4000,
5861
+ mass: 40,
5511
5862
  type: "component",
5512
5863
  tier: 1
5513
5864
  },
5514
5865
  {
5515
5866
  id: 10006,
5516
- mass: 4000,
5867
+ mass: 40,
5517
5868
  type: "component",
5518
5869
  tier: 1
5519
5870
  },
5520
5871
  {
5521
5872
  id: 10007,
5522
- mass: 4000,
5873
+ mass: 40,
5523
5874
  type: "component",
5524
5875
  tier: 1
5525
5876
  },
5526
5877
  {
5527
5878
  id: 10008,
5528
- mass: 4000,
5879
+ mass: 40,
5529
5880
  type: "component",
5530
5881
  tier: 1
5531
5882
  },
5532
5883
  {
5533
5884
  id: 10009,
5534
- mass: 4000,
5885
+ mass: 40,
5535
5886
  type: "component",
5536
5887
  tier: 1
5537
5888
  },
5538
5889
  {
5539
5890
  id: 10010,
5540
- mass: 4000,
5891
+ mass: 40,
5541
5892
  type: "component",
5542
5893
  tier: 1
5543
5894
  },
5544
5895
  {
5545
5896
  id: 10100,
5546
- mass: 960000,
5897
+ mass: 9600,
5547
5898
  type: "module",
5548
5899
  tier: 1,
5549
5900
  subtype: "engine"
5550
5901
  },
5551
5902
  {
5552
5903
  id: 10101,
5553
- mass: 960000,
5904
+ mass: 9600,
5554
5905
  type: "module",
5555
5906
  tier: 1,
5556
5907
  subtype: "generator"
5557
5908
  },
5558
5909
  {
5559
5910
  id: 10102,
5560
- mass: 960000,
5911
+ mass: 9600,
5561
5912
  type: "module",
5562
5913
  tier: 1,
5563
5914
  subtype: "gatherer"
5564
5915
  },
5565
5916
  {
5566
5917
  id: 10103,
5567
- mass: 960000,
5918
+ mass: 9600,
5568
5919
  type: "module",
5569
5920
  tier: 1,
5570
5921
  subtype: "loader"
5571
5922
  },
5572
5923
  {
5573
5924
  id: 10104,
5574
- mass: 960000,
5925
+ mass: 9600,
5575
5926
  type: "module",
5576
5927
  tier: 1,
5577
5928
  subtype: "crafter"
5578
5929
  },
5579
5930
  {
5580
5931
  id: 10105,
5581
- mass: 960000,
5932
+ mass: 9600,
5582
5933
  type: "module",
5583
5934
  tier: 1,
5584
5935
  subtype: "storage"
5585
5936
  },
5586
5937
  {
5587
5938
  id: 10106,
5588
- mass: 960000,
5939
+ mass: 9600,
5589
5940
  type: "module",
5590
5941
  tier: 1,
5591
5942
  subtype: "hauler"
5592
5943
  },
5593
5944
  {
5594
5945
  id: 10107,
5595
- mass: 960000,
5946
+ mass: 9600,
5596
5947
  type: "module",
5597
5948
  tier: 1,
5598
5949
  subtype: "warp"
5599
5950
  },
5600
5951
  {
5601
5952
  id: 10108,
5602
- mass: 960000,
5953
+ mass: 9600,
5603
5954
  type: "module",
5604
5955
  tier: 1,
5605
5956
  subtype: "battery"
5606
5957
  },
5607
5958
  {
5608
5959
  id: 10109,
5609
- mass: 1000000,
5960
+ mass: 10000,
5610
5961
  type: "module",
5611
5962
  tier: 1,
5612
5963
  subtype: "launcher"
5613
5964
  },
5614
5965
  {
5615
5966
  id: 10110,
5616
- mass: 960000,
5967
+ mass: 9600,
5617
5968
  type: "module",
5618
5969
  tier: 1,
5619
5970
  subtype: "builder"
5620
5971
  },
5621
5972
  {
5622
5973
  id: 10200,
5623
- mass: 1900000,
5974
+ mass: 19000,
5624
5975
  type: "entity",
5625
5976
  tier: 1
5626
5977
  },
5627
5978
  {
5628
5979
  id: 10201,
5629
- mass: 2400000,
5980
+ mass: 24000,
5630
5981
  type: "entity",
5631
5982
  tier: 1
5632
5983
  },
5633
5984
  {
5634
5985
  id: 10202,
5635
- mass: 3200000,
5986
+ mass: 32000,
5636
5987
  type: "entity",
5637
5988
  tier: 1
5638
5989
  },
5639
5990
  {
5640
5991
  id: 10203,
5641
- mass: 1900000,
5992
+ mass: 19000,
5642
5993
  type: "entity",
5643
5994
  tier: 1
5644
5995
  },
5645
5996
  {
5646
5997
  id: 10204,
5647
- mass: 1900000,
5998
+ mass: 19000,
5648
5999
  type: "entity",
5649
6000
  tier: 1
5650
6001
  },
5651
6002
  {
5652
6003
  id: 10205,
5653
- mass: 8000000,
6004
+ mass: 80000,
5654
6005
  type: "entity",
5655
6006
  tier: 1
5656
6007
  },
5657
6008
  {
5658
6009
  id: 10206,
5659
- mass: 8000000,
6010
+ mass: 80000,
5660
6011
  type: "entity",
5661
6012
  tier: 1
5662
6013
  },
5663
6014
  {
5664
6015
  id: 10207,
5665
- mass: 2400000,
6016
+ mass: 24000,
5666
6017
  type: "entity",
5667
6018
  tier: 1
5668
6019
  },
5669
6020
  {
5670
6021
  id: 10208,
5671
- mass: 4800000,
6022
+ mass: 48000,
5672
6023
  type: "entity",
5673
6024
  tier: 1
5674
6025
  },
5675
6026
  {
5676
6027
  id: 10209,
5677
- mass: 1900000,
6028
+ mass: 19000,
5678
6029
  type: "entity",
5679
6030
  tier: 1
5680
6031
  },
5681
6032
  {
5682
6033
  id: 10210,
5683
- mass: 1600000,
6034
+ mass: 16000,
5684
6035
  type: "entity",
5685
6036
  tier: 1
5686
6037
  },
5687
6038
  {
5688
6039
  id: 10211,
5689
- mass: 2400000,
6040
+ mass: 24000,
5690
6041
  type: "entity",
5691
6042
  tier: 1
5692
6043
  },
5693
6044
  {
5694
6045
  id: 10212,
5695
- mass: 2400000,
6046
+ mass: 24000,
5696
6047
  type: "entity",
5697
6048
  tier: 1
5698
6049
  },
5699
6050
  {
5700
6051
  id: 10213,
5701
- mass: 2400000,
6052
+ mass: 24000,
5702
6053
  type: "entity",
5703
6054
  tier: 1
5704
6055
  },
5705
6056
  {
5706
6057
  id: 10214,
5707
- mass: 2400000,
6058
+ mass: 24000,
5708
6059
  type: "entity",
5709
6060
  tier: 1
5710
6061
  },
5711
6062
  {
5712
6063
  id: 10215,
5713
- mass: 2400000,
6064
+ mass: 24000,
5714
6065
  type: "entity",
5715
6066
  tier: 1
5716
6067
  },
5717
6068
  {
5718
6069
  id: 10216,
5719
- mass: 4800000,
6070
+ mass: 48000,
5720
6071
  type: "entity",
5721
6072
  tier: 1
5722
6073
  },
5723
6074
  {
5724
6075
  id: 10218,
5725
- mass: 2400000,
6076
+ mass: 24000,
5726
6077
  type: "entity",
5727
6078
  tier: 1
5728
6079
  },
5729
6080
  {
5730
6081
  id: 10219,
5731
- mass: 4800000,
6082
+ mass: 48000,
5732
6083
  type: "entity",
5733
6084
  tier: 1
5734
6085
  },
5735
6086
  {
5736
6087
  id: 11001,
5737
- mass: 4800,
6088
+ mass: 48,
5738
6089
  type: "component",
5739
6090
  tier: 2
5740
6091
  },
5741
6092
  {
5742
6093
  id: 11002,
5743
- mass: 4800,
6094
+ mass: 48,
5744
6095
  type: "component",
5745
6096
  tier: 2
5746
6097
  },
5747
6098
  {
5748
6099
  id: 11003,
5749
- mass: 4800,
6100
+ mass: 48,
5750
6101
  type: "component",
5751
6102
  tier: 2
5752
6103
  },
5753
6104
  {
5754
6105
  id: 11004,
5755
- mass: 4800,
6106
+ mass: 48,
5756
6107
  type: "component",
5757
6108
  tier: 2
5758
6109
  },
5759
6110
  {
5760
6111
  id: 11005,
5761
- mass: 4800,
6112
+ mass: 48,
5762
6113
  type: "component",
5763
6114
  tier: 2
5764
6115
  },
5765
6116
  {
5766
6117
  id: 11006,
5767
- mass: 4800,
6118
+ mass: 48,
5768
6119
  type: "component",
5769
6120
  tier: 2
5770
6121
  },
5771
6122
  {
5772
6123
  id: 11007,
5773
- mass: 4800,
6124
+ mass: 48,
5774
6125
  type: "component",
5775
6126
  tier: 2
5776
6127
  },
5777
6128
  {
5778
6129
  id: 11008,
5779
- mass: 4800,
6130
+ mass: 48,
5780
6131
  type: "component",
5781
6132
  tier: 2
5782
6133
  },
5783
6134
  {
5784
6135
  id: 11009,
5785
- mass: 4800,
6136
+ mass: 48,
5786
6137
  type: "component",
5787
6138
  tier: 2
5788
6139
  },
5789
6140
  {
5790
6141
  id: 11010,
5791
- mass: 4800,
6142
+ mass: 48,
5792
6143
  type: "component",
5793
6144
  tier: 2
5794
6145
  },
5795
6146
  {
5796
6147
  id: 11100,
5797
- mass: 1536000,
6148
+ mass: 15360,
5798
6149
  type: "module",
5799
6150
  tier: 2,
5800
6151
  subtype: "engine"
5801
6152
  },
5802
6153
  {
5803
6154
  id: 11101,
5804
- mass: 1536000,
6155
+ mass: 15360,
5805
6156
  type: "module",
5806
6157
  tier: 2,
5807
6158
  subtype: "generator"
5808
6159
  },
5809
6160
  {
5810
6161
  id: 11102,
5811
- mass: 1536000,
6162
+ mass: 15360,
5812
6163
  type: "module",
5813
6164
  tier: 2,
5814
6165
  subtype: "gatherer"
5815
6166
  },
5816
6167
  {
5817
6168
  id: 11103,
5818
- mass: 1536000,
6169
+ mass: 15360,
5819
6170
  type: "module",
5820
6171
  tier: 2,
5821
6172
  subtype: "loader"
5822
6173
  },
5823
6174
  {
5824
6175
  id: 11104,
5825
- mass: 1536000,
6176
+ mass: 15360,
5826
6177
  type: "module",
5827
6178
  tier: 2,
5828
6179
  subtype: "crafter"
5829
6180
  },
5830
6181
  {
5831
6182
  id: 11105,
5832
- mass: 1536000,
6183
+ mass: 15360,
5833
6184
  type: "module",
5834
6185
  tier: 2,
5835
6186
  subtype: "storage"
5836
6187
  },
5837
6188
  {
5838
6189
  id: 11106,
5839
- mass: 1536000,
6190
+ mass: 15360,
5840
6191
  type: "module",
5841
6192
  tier: 2,
5842
6193
  subtype: "hauler"
5843
6194
  },
5844
6195
  {
5845
6196
  id: 11107,
5846
- mass: 1536000,
6197
+ mass: 15360,
5847
6198
  type: "module",
5848
6199
  tier: 2,
5849
6200
  subtype: "warp"
5850
6201
  },
5851
6202
  {
5852
6203
  id: 11108,
5853
- mass: 1536000,
6204
+ mass: 15360,
5854
6205
  type: "module",
5855
6206
  tier: 2,
5856
6207
  subtype: "battery"
5857
6208
  },
5858
6209
  {
5859
6210
  id: 11110,
5860
- mass: 1536000,
6211
+ mass: 15360,
5861
6212
  type: "module",
5862
6213
  tier: 2,
5863
6214
  subtype: "builder"
5864
6215
  },
5865
6216
  {
5866
6217
  id: 11200,
5867
- mass: 3100000,
6218
+ mass: 31000,
5868
6219
  type: "entity",
5869
6220
  tier: 2
5870
6221
  },
5871
6222
  {
5872
6223
  id: 11212,
5873
- mass: 4320000,
6224
+ mass: 43200,
5874
6225
  type: "entity",
5875
6226
  tier: 2
5876
6227
  },
5877
6228
  {
5878
6229
  id: 11213,
5879
- mass: 5760000,
6230
+ mass: 57600,
5880
6231
  type: "entity",
5881
6232
  tier: 2
5882
6233
  },
5883
6234
  {
5884
6235
  id: 11214,
5885
- mass: 5760000,
6236
+ mass: 57600,
5886
6237
  type: "entity",
5887
6238
  tier: 2
5888
6239
  }
@@ -6326,6 +6677,8 @@ var TaskType;
6326
6677
  TaskType[TaskType["SHUTTLE"] = 18] = "SHUTTLE";
6327
6678
  TaskType[TaskType["REFIT"] = 19] = "REFIT";
6328
6679
  TaskType[TaskType["CONTRIBUTE"] = 20] = "CONTRIBUTE";
6680
+ TaskType[TaskType["DEPOT_STORE"] = 21] = "DEPOT_STORE";
6681
+ TaskType[TaskType["DEPOT_TAKE"] = 22] = "DEPOT_TAKE";
6329
6682
  })(TaskType || (TaskType = {}));
6330
6683
  var RefitOp;
6331
6684
  (function (RefitOp) {