@shipload/sdk 1.0.0-next.11 → 1.0.0-next.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/shipload.d.ts +779 -984
- package/lib/shipload.js +2203 -2738
- package/lib/shipload.js.map +1 -1
- package/lib/shipload.m.js +2186 -2712
- package/lib/shipload.m.js.map +1 -1
- package/lib/testing.d.ts +713 -0
- package/lib/testing.js +3065 -0
- package/lib/testing.js.map +1 -0
- package/lib/testing.m.js +3059 -0
- package/lib/testing.m.js.map +1 -0
- package/package.json +14 -1
- package/src/data/kind-registry.json +78 -0
- package/src/data/kind-registry.ts +133 -0
- package/src/derivation/capabilities.ts +397 -0
- package/src/derivation/crafting.ts +1 -1
- package/src/entities/entity.ts +98 -0
- package/src/entities/makers.ts +75 -228
- package/src/index-module.ts +30 -34
- package/src/managers/entities.ts +18 -114
- package/src/managers/index.ts +1 -1
- package/src/nft/atomicdata.ts +2 -0
- package/src/nft/description.ts +1 -1
- package/src/resolution/resolve-item.ts +3 -2
- package/src/subscriptions/manager.ts +2 -5
- package/src/subscriptions/mappers.ts +3 -12
- package/src/testing/catalog-hash.ts +19 -0
- package/src/testing/index.ts +2 -0
- package/src/testing/projection-parity.ts +143 -0
- package/src/types/index.ts +0 -1
- package/src/types.ts +0 -9
- package/src/entities/container.ts +0 -123
- package/src/entities/extractor.ts +0 -144
- package/src/entities/factory.ts +0 -135
- package/src/entities/nexus.ts +0 -29
- package/src/entities/ship-deploy.ts +0 -316
- package/src/entities/ship.ts +0 -221
- package/src/entities/warehouse.ts +0 -136
- package/src/types/entity-traits.ts +0 -171
package/lib/testing.m.js
ADDED
|
@@ -0,0 +1,3059 @@
|
|
|
1
|
+
import { createHash } from 'node:crypto';
|
|
2
|
+
import { readFileSync } from 'node:fs';
|
|
3
|
+
import { Blob, ABI, Struct, Name, UInt64, Checksum256, UInt32, TimePointSec, UInt16, UInt8, Int64, TimePoint, Bytes, Int32 } from '@wharfkit/antelope';
|
|
4
|
+
import { __decorate } from 'tslib';
|
|
5
|
+
import '@wharfkit/contract';
|
|
6
|
+
|
|
7
|
+
const CATALOG_FILES_REL = [
|
|
8
|
+
'items.json',
|
|
9
|
+
'recipes.json',
|
|
10
|
+
'entities.json',
|
|
11
|
+
'kind-registry.json',
|
|
12
|
+
'item-ids.ts',
|
|
13
|
+
];
|
|
14
|
+
function computeCatalogHash(filePaths) {
|
|
15
|
+
const hash = createHash('sha256');
|
|
16
|
+
for (const p of filePaths) {
|
|
17
|
+
hash.update(readFileSync(p));
|
|
18
|
+
hash.update('\0');
|
|
19
|
+
}
|
|
20
|
+
return hash.digest('hex');
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
const abiBlob$1 = Blob.from('DmVvc2lvOjphYmkvMS4yAA4KY2xlYXJ0YWJsZQADCnRhYmxlX25hbWUEbmFtZQVzY29wZQVuYW1lPwhtYXhfcm93cwd1aW50NjQ/C2NvbXBhbnlfcm93AAIHYWNjb3VudARuYW1lBG5hbWUGc3RyaW5nBmVuYWJsZQABB2VuYWJsZWQEYm9vbAplbmFibGVnYW1lAAIIY29udHJhY3QEbmFtZQdlbmFibGVkBGJvb2wMZm91bmRjb21wYW55AAIHYWNjb3VudARuYW1lBG5hbWUGc3RyaW5nC2dhbWVfY29uZmlnAAQEc2VlZAtjaGVja3N1bTI1NgllcG9jaHRpbWUGdWludDMyBXN0YXJ0DnRpbWVfcG9pbnRfc2VjA2VuZA50aW1lX3BvaW50X3NlYwlnYW1lX21ldGEABARuYW1lBnN0cmluZwtkZXNjcmlwdGlvbgZzdHJpbmcDdXJsBnN0cmluZwd2ZXJzaW9uBnN0cmluZwhnYW1lX3JvdwAECGNvbnRyYWN0BG5hbWUGY29uZmlnC2dhbWVfY29uZmlnBG1ldGEJZ2FtZV9tZXRhBXN0YXRlCmdhbWVfc3RhdGUKZ2FtZV9zdGF0ZQABB2VuYWJsZWQEYm9vbAxzZXRlcG9jaHRpbWUAAghjb250cmFjdARuYW1lCWVwb2NodGltZQZ1aW50MzIJc3RhcnRnYW1lAAQIY29udHJhY3QEbmFtZQZjb25maWcLZ2FtZV9jb25maWcEbWV0YQlnYW1lX21ldGEFc3RhdGUKZ2FtZV9zdGF0ZQlzdGF0ZV9yb3cAAQdlbmFibGVkBGJvb2wKdXBkYXRlZ2FtZQACCGNvbnRyYWN0BG5hbWUEbWV0YQlnYW1lX21ldGEEd2lwZQAACACAisfka1RECmNsZWFydGFibGW+AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjbGVhcnRhYmxlCnN1bW1hcnk6ICdERUJVRzogY2xlYXJ0YWJsZSBhY3Rpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0AAAAAqHjMVAZlbmFibGXzAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBlbmFibGUKc3VtbWFyeTogJ0VuYWJsZS9kaXNhYmxlIHBsYXRmb3JtJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKRW5hYmxlIG9yIGRpc2FibGUgdGhlIHBsYXRmb3JtIGNvbnRyYWN0LgCAkoapeMxUCmVuYWJsZWdhbWX8AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBlbmFibGVnYW1lCnN1bW1hcnk6ICdFbmFibGUvZGlzYmFibGUgYSBnYW1lJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKRW5hYmxlIG9yIGRpc2FibGUgdGhlIHNwZWNpZmllZCBnYW1lIGNvbnRyYWN0LuCnqZKiNDVdDGZvdW5kY29tcGFueYMCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGZvdW5kY29tcGFueQpzdW1tYXJ5OiAnRm91bmQgYSBuZXcgY29tcGFueScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KCkZvdW5kIGEgbmV3IGNvbXBhbnkgaW4gdGhlIFNoaXBsb2FkIHBsYXRmb3JtIGNvbnRyYWN0LqCkyw3RqrLCDHNldGVwb2NodGltZQAAAFDSsHxNxglzdGFydGdhbWX/AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzdGFydGdhbWUKc3VtbWFyeTogJ1N0YXJ0IGEgbmV3IGdhbWUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpTdGFydCBhIG5ldyBnYW1lIG9mIFNoaXBsb2FkIGRlcGxveWVkIHRvIGEgbmV3IGNvbnRyYWN0LgCAkoapbFLVCnVwZGF0ZWdhbWWNAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1cGRhdGVnYW1lCnN1bW1hcnk6ICdVcGRhdGUgZ2FtZSBpbmZvcm1hdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KClVwZGF0ZSB0aGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNwZWNpZmllZCBnYW1lIGNvbnRyYWN0LgoKLS0tAAAAAACgquMEd2lwZbIBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHdpcGUKc3VtbWFyeTogJ0RFQlVHOiB3aXBlIGFjdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQMAAADAT1MlRQNpNjQAAAtjb21wYW55X3JvdwAAAAAArKRhA2k2NAAACGdhbWVfcm93AAAAAACVTcYDaTY0AAAJc3RhdGVfcm93ARNTaGlwbG9hZCAoUGxhdGZvcm0pE1NoaXBsb2FkIChQbGF0Zm9ybSkAAAAA');
|
|
24
|
+
ABI.from(abiBlob$1);
|
|
25
|
+
var Types$1;
|
|
26
|
+
(function (Types) {
|
|
27
|
+
let cleartable = class cleartable extends Struct {
|
|
28
|
+
};
|
|
29
|
+
__decorate([
|
|
30
|
+
Struct.field(Name)
|
|
31
|
+
], cleartable.prototype, "table_name", void 0);
|
|
32
|
+
__decorate([
|
|
33
|
+
Struct.field(Name, { optional: true })
|
|
34
|
+
], cleartable.prototype, "scope", void 0);
|
|
35
|
+
__decorate([
|
|
36
|
+
Struct.field(UInt64, { optional: true })
|
|
37
|
+
], cleartable.prototype, "max_rows", void 0);
|
|
38
|
+
cleartable = __decorate([
|
|
39
|
+
Struct.type('cleartable')
|
|
40
|
+
], cleartable);
|
|
41
|
+
Types.cleartable = cleartable;
|
|
42
|
+
let company_row = class company_row extends Struct {
|
|
43
|
+
};
|
|
44
|
+
__decorate([
|
|
45
|
+
Struct.field(Name)
|
|
46
|
+
], company_row.prototype, "account", void 0);
|
|
47
|
+
__decorate([
|
|
48
|
+
Struct.field('string')
|
|
49
|
+
], company_row.prototype, "name", void 0);
|
|
50
|
+
company_row = __decorate([
|
|
51
|
+
Struct.type('company_row')
|
|
52
|
+
], company_row);
|
|
53
|
+
Types.company_row = company_row;
|
|
54
|
+
let enable = class enable extends Struct {
|
|
55
|
+
};
|
|
56
|
+
__decorate([
|
|
57
|
+
Struct.field('bool')
|
|
58
|
+
], enable.prototype, "enabled", void 0);
|
|
59
|
+
enable = __decorate([
|
|
60
|
+
Struct.type('enable')
|
|
61
|
+
], enable);
|
|
62
|
+
Types.enable = enable;
|
|
63
|
+
let enablegame = class enablegame extends Struct {
|
|
64
|
+
};
|
|
65
|
+
__decorate([
|
|
66
|
+
Struct.field(Name)
|
|
67
|
+
], enablegame.prototype, "contract", void 0);
|
|
68
|
+
__decorate([
|
|
69
|
+
Struct.field('bool')
|
|
70
|
+
], enablegame.prototype, "enabled", void 0);
|
|
71
|
+
enablegame = __decorate([
|
|
72
|
+
Struct.type('enablegame')
|
|
73
|
+
], enablegame);
|
|
74
|
+
Types.enablegame = enablegame;
|
|
75
|
+
let foundcompany = class foundcompany extends Struct {
|
|
76
|
+
};
|
|
77
|
+
__decorate([
|
|
78
|
+
Struct.field(Name)
|
|
79
|
+
], foundcompany.prototype, "account", void 0);
|
|
80
|
+
__decorate([
|
|
81
|
+
Struct.field('string')
|
|
82
|
+
], foundcompany.prototype, "name", void 0);
|
|
83
|
+
foundcompany = __decorate([
|
|
84
|
+
Struct.type('foundcompany')
|
|
85
|
+
], foundcompany);
|
|
86
|
+
Types.foundcompany = foundcompany;
|
|
87
|
+
let game_config = class game_config extends Struct {
|
|
88
|
+
};
|
|
89
|
+
__decorate([
|
|
90
|
+
Struct.field(Checksum256)
|
|
91
|
+
], game_config.prototype, "seed", void 0);
|
|
92
|
+
__decorate([
|
|
93
|
+
Struct.field(UInt32)
|
|
94
|
+
], game_config.prototype, "epochtime", void 0);
|
|
95
|
+
__decorate([
|
|
96
|
+
Struct.field(TimePointSec)
|
|
97
|
+
], game_config.prototype, "start", void 0);
|
|
98
|
+
__decorate([
|
|
99
|
+
Struct.field(TimePointSec)
|
|
100
|
+
], game_config.prototype, "end", void 0);
|
|
101
|
+
game_config = __decorate([
|
|
102
|
+
Struct.type('game_config')
|
|
103
|
+
], game_config);
|
|
104
|
+
Types.game_config = game_config;
|
|
105
|
+
let game_meta = class game_meta extends Struct {
|
|
106
|
+
};
|
|
107
|
+
__decorate([
|
|
108
|
+
Struct.field('string')
|
|
109
|
+
], game_meta.prototype, "name", void 0);
|
|
110
|
+
__decorate([
|
|
111
|
+
Struct.field('string')
|
|
112
|
+
], game_meta.prototype, "description", void 0);
|
|
113
|
+
__decorate([
|
|
114
|
+
Struct.field('string')
|
|
115
|
+
], game_meta.prototype, "url", void 0);
|
|
116
|
+
__decorate([
|
|
117
|
+
Struct.field('string')
|
|
118
|
+
], game_meta.prototype, "version", void 0);
|
|
119
|
+
game_meta = __decorate([
|
|
120
|
+
Struct.type('game_meta')
|
|
121
|
+
], game_meta);
|
|
122
|
+
Types.game_meta = game_meta;
|
|
123
|
+
let game_state = class game_state extends Struct {
|
|
124
|
+
};
|
|
125
|
+
__decorate([
|
|
126
|
+
Struct.field('bool')
|
|
127
|
+
], game_state.prototype, "enabled", void 0);
|
|
128
|
+
game_state = __decorate([
|
|
129
|
+
Struct.type('game_state')
|
|
130
|
+
], game_state);
|
|
131
|
+
Types.game_state = game_state;
|
|
132
|
+
let game_row = class game_row extends Struct {
|
|
133
|
+
};
|
|
134
|
+
__decorate([
|
|
135
|
+
Struct.field(Name)
|
|
136
|
+
], game_row.prototype, "contract", void 0);
|
|
137
|
+
__decorate([
|
|
138
|
+
Struct.field(game_config)
|
|
139
|
+
], game_row.prototype, "config", void 0);
|
|
140
|
+
__decorate([
|
|
141
|
+
Struct.field(game_meta)
|
|
142
|
+
], game_row.prototype, "meta", void 0);
|
|
143
|
+
__decorate([
|
|
144
|
+
Struct.field(game_state)
|
|
145
|
+
], game_row.prototype, "state", void 0);
|
|
146
|
+
game_row = __decorate([
|
|
147
|
+
Struct.type('game_row')
|
|
148
|
+
], game_row);
|
|
149
|
+
Types.game_row = game_row;
|
|
150
|
+
let setepochtime = class setepochtime extends Struct {
|
|
151
|
+
};
|
|
152
|
+
__decorate([
|
|
153
|
+
Struct.field(Name)
|
|
154
|
+
], setepochtime.prototype, "contract", void 0);
|
|
155
|
+
__decorate([
|
|
156
|
+
Struct.field(UInt32)
|
|
157
|
+
], setepochtime.prototype, "epochtime", void 0);
|
|
158
|
+
setepochtime = __decorate([
|
|
159
|
+
Struct.type('setepochtime')
|
|
160
|
+
], setepochtime);
|
|
161
|
+
Types.setepochtime = setepochtime;
|
|
162
|
+
let startgame = class startgame extends Struct {
|
|
163
|
+
};
|
|
164
|
+
__decorate([
|
|
165
|
+
Struct.field(Name)
|
|
166
|
+
], startgame.prototype, "contract", void 0);
|
|
167
|
+
__decorate([
|
|
168
|
+
Struct.field(game_config)
|
|
169
|
+
], startgame.prototype, "config", void 0);
|
|
170
|
+
__decorate([
|
|
171
|
+
Struct.field(game_meta)
|
|
172
|
+
], startgame.prototype, "meta", void 0);
|
|
173
|
+
__decorate([
|
|
174
|
+
Struct.field(game_state)
|
|
175
|
+
], startgame.prototype, "state", void 0);
|
|
176
|
+
startgame = __decorate([
|
|
177
|
+
Struct.type('startgame')
|
|
178
|
+
], startgame);
|
|
179
|
+
Types.startgame = startgame;
|
|
180
|
+
let state_row = class state_row extends Struct {
|
|
181
|
+
};
|
|
182
|
+
__decorate([
|
|
183
|
+
Struct.field('bool')
|
|
184
|
+
], state_row.prototype, "enabled", void 0);
|
|
185
|
+
state_row = __decorate([
|
|
186
|
+
Struct.type('state_row')
|
|
187
|
+
], state_row);
|
|
188
|
+
Types.state_row = state_row;
|
|
189
|
+
let updategame = class updategame extends Struct {
|
|
190
|
+
};
|
|
191
|
+
__decorate([
|
|
192
|
+
Struct.field(Name)
|
|
193
|
+
], updategame.prototype, "contract", void 0);
|
|
194
|
+
__decorate([
|
|
195
|
+
Struct.field(game_meta)
|
|
196
|
+
], updategame.prototype, "meta", void 0);
|
|
197
|
+
updategame = __decorate([
|
|
198
|
+
Struct.type('updategame')
|
|
199
|
+
], updategame);
|
|
200
|
+
Types.updategame = updategame;
|
|
201
|
+
let wipe = class wipe extends Struct {
|
|
202
|
+
};
|
|
203
|
+
wipe = __decorate([
|
|
204
|
+
Struct.type('wipe')
|
|
205
|
+
], wipe);
|
|
206
|
+
Types.wipe = wipe;
|
|
207
|
+
})(Types$1 || (Types$1 = {}));
|
|
208
|
+
({
|
|
209
|
+
company: Types$1.company_row,
|
|
210
|
+
games: Types$1.game_row,
|
|
211
|
+
state: Types$1.state_row,
|
|
212
|
+
});
|
|
213
|
+
|
|
214
|
+
const abiBlob = Blob.from('DmVvc2lvOjphYmkvMS4yAhVCX3ZlY3Rvcl9lbnRpdHlfcmVmX0UMZW50aXR5X3JlZltdDWxvY2F0aW9uX3R5cGUFdWludDiFAQlhZGRtb2R1bGUABAllbnRpdHlfaWQGdWludDY0DG1vZHVsZV9pbmRleAV1aW50OAptb2R1bGVfcmVmCWNhcmdvX3JlZgp0YXJnZXRfcmVmCmNhcmdvX3JlZj8IYWRkbmV4dXMAAwpuZXh1c19uYW1lBnN0cmluZwF4BWludDY0AXkFaW50NjQHYWR2YW5jZQACBnJldmVhbAZzdHJpbmcGY29tbWl0C2NoZWNrc3VtMjU2BWJsZW5kAAICaWQGdWludDY0BmlucHV0cwxjYXJnb19pdGVtW10GY2FuY2VsAAICaWQGdWludDY0BWNvdW50BnVpbnQ2NA5jYW5jZWxfcmVzdWx0cwAGCWVudGl0eV9pZAZ1aW50NjQLZW50aXR5X3R5cGUEbmFtZQ9jYW5jZWxsZWRfY291bnQFdWludDgQc2NoZWR1bGVfc3RhcnRlZAt0aW1lX3BvaW50PwtlbnRpdHlncm91cAd1aW50NjQ/DWdyb3VwX21lbWJlcnMWQl92ZWN0b3JfZW50aXR5X3JlZl9FPwpjYXJnb19pdGVtAAQHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0B21vZHVsZXMObW9kdWxlX2VudHJ5W10IcXVhbnRpdHkGdWludDMyCWNhcmdvX3JlZgADB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCWNhcmdvX3JvdwAGAmlkBnVpbnQ2NAllbnRpdHlfaWQGdWludDY0B2l0ZW1faWQGdWludDY0CHF1YW50aXR5BnVpbnQ2NAVzdGF0cwZ1aW50NjQHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQpjYXJnb192aWV3AAUHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0B21vZHVsZXMObW9kdWxlX2VudHJ5W10IcXVhbnRpdHkGdWludDMyAmlkBnVpbnQ2NAxjbGFpbXN0YXJ0ZXIAAwdhY2NvdW50BG5hbWUBeAVpbnQ2NAF5BWludDY0CWNsZWFucnN2cAACBWVwb2NoBnVpbnQ2NAhtYXhfcm93cwZ1aW50NjQKY2xlYXJ0YWJsZQADCnRhYmxlX25hbWUEbmFtZQVzY29wZQVuYW1lPwhtYXhfcm93cwd1aW50NjQ/BmNvbW1pdAABBmNvbW1pdAtjaGVja3N1bTI1Ngljb25maWdsb2cAAQZjb25maWcLZ2FtZV9jb25maWcLY29vcmRpbmF0ZXMAAwF4BWludDY0AXkFaW50NjQBegd1aW50MTY/BWNyYWZ0AAQCaWQGdWludDY0CXJlY2lwZV9pZAZ1aW50MTYIcXVhbnRpdHkGdWludDMyBmlucHV0cwxjYXJnb19pdGVtW10NY3JhZnRlcl9zdGF0cwACBXNwZWVkBnVpbnQxNgVkcmFpbgZ1aW50MTYMY3JlYXRlZW50aXR5AAUFb3duZXIEbmFtZQtlbnRpdHlfdHlwZQRuYW1lC2VudGl0eV9uYW1lBnN0cmluZwF4BWludDY0AXkFaW50NjQIZGVtb2xpc2gAAQllbnRpdHlfaWQGdWludDY0BmRlcGxveQACAmlkBnVpbnQ2NANyZWYJY2FyZ29fcmVmCmRlc2NlbnRpdHkABAdpdGVtX2lkBnVpbnQxNgpodWxsX3N0YXRzBnVpbnQ2NAxtb2R1bGVfaXRlbXMIdWludDE2W10MbW9kdWxlX3N0YXRzCHVpbnQ2NFtdBmVuYWJsZQABB2VuYWJsZWQEYm9vbAxlbmVyZ3lfc3RhdHMAAghjYXBhY2l0eQZ1aW50MTYIcmVjaGFyZ2UGdWludDE2FGVudGl0eV9jdXJyZW50X3N0YXRlAAILY29vcmRpbmF0ZXMLY29vcmRpbmF0ZXMGZW5lcmd5BnVpbnQxNg9lbnRpdHlfZGVmYXVsdHMAAgt3YXJlaG91c2VfegZ1aW50MTYLY29udGFpbmVyX3oGdWludDE2C2VudGl0eV9pbmZvABkEdHlwZQRuYW1lAmlkBnVpbnQ2NAVvd25lcgRuYW1lC2VudGl0eV9uYW1lBnN0cmluZwtjb29yZGluYXRlcwtjb29yZGluYXRlcwljYXJnb21hc3MGdWludDMyBWNhcmdvDGNhcmdvX3ZpZXdbXQdsb2FkZXJzDWxvYWRlcl9zdGF0cz8HbW9kdWxlcw5tb2R1bGVfZW50cnlbXQZlbmVyZ3kHdWludDE2PwhodWxsbWFzcwd1aW50MzI/B2VuZ2luZXMPbW92ZW1lbnRfc3RhdHM/CWdlbmVyYXRvcg1lbmVyZ3lfc3RhdHM/CGNhcGFjaXR5B3VpbnQzMj8IZ2F0aGVyZXIPZ2F0aGVyZXJfc3RhdHM/BmhhdWxlcg1oYXVsZXJfc3RhdHM/BHdhcnALd2FycF9zdGF0cz8HY3JhZnRlcg5jcmFmdGVyX3N0YXRzPwdpc19pZGxlBGJvb2wMY3VycmVudF90YXNrBXRhc2s/FGN1cnJlbnRfdGFza19lbGFwc2VkBnVpbnQzMhZjdXJyZW50X3Rhc2tfcmVtYWluaW5nBnVpbnQzMg1wZW5kaW5nX3Rhc2tzBnRhc2tbXQdpZGxlX2F0C3RpbWVfcG9pbnQ/CHNjaGVkdWxlCXNjaGVkdWxlPw1lbnRpdHlfbGF5b3V0AAIOZW50aXR5X2l0ZW1faWQGdWludDE2BXNsb3RzCnNsb3RfZGVmW10VZW50aXR5X2xheW91dHNfcmVzdWx0AAEIZW50aXRpZXMPZW50aXR5X2xheW91dFtdCmVudGl0eV9yZWYAAgtlbnRpdHlfdHlwZQRuYW1lCWVudGl0eV9pZAZ1aW50NjQKZW50aXR5X3JvdwAUAmlkBnVpbnQ2NAVvd25lcgRuYW1lBGtpbmQEbmFtZQRuYW1lBnN0cmluZwVzdGF0cwZ1aW50NjQLY29vcmRpbmF0ZXMLY29vcmRpbmF0ZXMIaHVsbG1hc3MHdWludDMyPwhjYXBhY2l0eQd1aW50MzI/BmVuZXJneQd1aW50MTY/CWNhcmdvbWFzcwZ1aW50MzIHZW5naW5lcw9tb3ZlbWVudF9zdGF0cz8JZ2VuZXJhdG9yDWVuZXJneV9zdGF0cz8HbG9hZGVycw1sb2FkZXJfc3RhdHM/CGdhdGhlcmVyD2dhdGhlcmVyX3N0YXRzPwR3YXJwC3dhcnBfc3RhdHM/B2NyYWZ0ZXIOY3JhZnRlcl9zdGF0cz8GaGF1bGVyDWhhdWxlcl9zdGF0cz8HbW9kdWxlcw5tb2R1bGVfZW50cnlbXQhzY2hlZHVsZQlzY2hlZHVsZT8HaXRlbV9pZAZ1aW50MTYOZW50aXR5X3N1bW1hcnkACAR0eXBlBG5hbWUCaWQGdWludDY0BW93bmVyBG5hbWULZW50aXR5X25hbWUGc3RyaW5nC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzB2lzX2lkbGUEYm9vbA5yZXNvbHZlZF9jb3VudAZ1aW50MzINcGVuZGluZ19jb3VudAZ1aW50MzIQZW50aXR5X3Rhc2tfaW5mbwAECWVudGl0eV9pZAZ1aW50NjQLZW50aXR5X3R5cGUEbmFtZQp0YXNrX2NvdW50BXVpbnQ4EHNjaGVkdWxlX3N0YXJ0ZWQKdGltZV9wb2ludA9lbnRpdHlncm91cF9yb3cAAgJpZAZ1aW50NjQMcGFydGljaXBhbnRzDGVudGl0eV9yZWZbXQtlbnVtX21lbWJlcgACBXZhbHVlBXVpbnQ4BG5hbWUGc3RyaW5nC2VudW1fcmVzdWx0AAEHbWVtYmVycw1lbnVtX21lbWJlcltdDGZpeGNhcmdvbWFzcwABCWVudGl0eV9pZAZ1aW50NjQLZ2FtZV9jb25maWcAAwd2ZXJzaW9uBnVpbnQzMghkZWZhdWx0cw9lbnRpdHlfZGVmYXVsdHMFaXRlbXMKaXRlbV9kZWZbXQZnYXRoZXIABAlzb3VyY2VfaWQGdWludDY0DmRlc3RpbmF0aW9uX2lkBnVpbnQ2NAdzdHJhdHVtBnVpbnQxNghxdWFudGl0eQZ1aW50MzIOZ2F0aGVyZXJfc3RhdHMABAV5aWVsZAZ1aW50MTYFZHJhaW4GdWludDE2BWRlcHRoBnVpbnQxNgVzcGVlZAZ1aW50MTYJZ2V0Y29uZmlnAAALZ2V0ZWxpZ2libGUAAgZjb29yZHMLY29vcmRpbmF0ZXMHc3RyYXR1bQZ1aW50MTYLZ2V0ZW50aXRpZXMAAgVvd25lcgRuYW1lC2VudGl0eV90eXBlBW5hbWU/CWdldGVudGl0eQABCWVudGl0eV9pZAZ1aW50NjQLZ2V0aXRlbWRhdGEAAApnZXRpdGVtaWRzAAAIZ2V0aXRlbXMAAAxnZXRpdGVtdHlwZXMAAAtnZXRsb2NhdGlvbgACAXgFaW50NjQBeQVpbnQ2NApnZXRsb2NkYXRhAAIBeAVpbnQ2NAF5BWludDY0C2dldG1vZHR5cGVzAAAKZ2V0bW9kdWxlcwAACWdldG5lYXJieQACCWVudGl0eV9pZAZ1aW50NjQIcmVjaGFyZ2UEYm9vbApnZXRuZnRpbmZvAAAJZ2V0cGxheWVyAAEHYWNjb3VudARuYW1lCWdldHJlY2lwZQABDm91dHB1dF9pdGVtX2lkBnVpbnQxNgpnZXRyZWNpcGVzAAILbG93ZXJfYm91bmQGdWludDE2BWxpbWl0BXVpbnQ4CmdldHJlc2NhdHMAAAtnZXRyZXNlcnZlcwACAXgFaW50NjQBeQVpbnQ2NAxnZXRyZXNvdXJjZXMAAAhnZXRzbG90cwAACmdldHN0cmF0dW0AAwF4BWludDY0AXkFaW50NjQHc3RyYXR1bQZ1aW50MTYMZ2V0c3VtbWFyaWVzAAIFb3duZXIEbmFtZQtlbnRpdHlfdHlwZQVuYW1lPwtncm91cHRyYXZlbAAECGVudGl0aWVzDGVudGl0eV9yZWZbXQF4BWludDY0AXkFaW50NjQIcmVjaGFyZ2UEYm9vbARoYXNoAAEFdmFsdWUGc3RyaW5nB2hhc2g1MTIAAQV2YWx1ZQZzdHJpbmcMaGF1bGVyX3N0YXRzAAMIY2FwYWNpdHkFdWludDgKZWZmaWNpZW5jeQZ1aW50MTYFZHJhaW4GdWludDE2CmluaXRpYWxpemUAAQRzZWVkC2NoZWNrc3VtMjU2CGl0ZW1fZGVmAAUCaWQGdWludDE2BG1hc3MGdWludDMyBHR5cGUFdWludDgHc3VidHlwZQV1aW50OAR0aWVyBXVpbnQ4DGl0ZW1faWRfcGFpcgACAmlkBnVpbnQxNgRuYW1lBnN0cmluZw9pdGVtX2lkc19yZXN1bHQAAQVpdGVtcw5pdGVtX2lkX3BhaXJbXQ9pdGVtZGF0YV9yZXN1bHQAAgVpdGVtcwppdGVtX2RlZltdB3JlY2lwZXMOcmVjaXBlc19yZXN1bHQKaXRlbXNfaW5mbwABBWl0ZW1zCml0ZW1fZGVmW10Eam9pbgABB2FjY291bnQEbmFtZQxsb2FkZXJfc3RhdHMAAwRtYXNzBnVpbnQzMgZ0aHJ1c3QGdWludDE2CHF1YW50aXR5BXVpbnQ4EGxvY2F0aW9uX2Rlcml2ZWQAAgxzdGF0aWNfcHJvcHMPbG9jYXRpb25fc3RhdGljBHNpemUGdWludDE2DWxvY2F0aW9uX2luZm8AAgZjb29yZHMLY29vcmRpbmF0ZXMJaXNfc3lzdGVtBGJvb2wPbG9jYXRpb25fc3RhdGljAAUGY29vcmRzC2Nvb3JkaW5hdGVzBHR5cGUNbG9jYXRpb25fdHlwZQdzdWJ0eXBlBXVpbnQ4BXNlZWQwBXVpbnQ4BXNlZWQxBXVpbnQ4DG1vZHVsZV9lbnRyeQACBHR5cGUFdWludDgJaW5zdGFsbGVkDnBhY2tlZF9tb2R1bGU/C21vZHVsZV9pbmZvAAQCaWQGdWludDE2BG1hc3MGdWludDMyC21vZHVsZV90eXBlBXVpbnQ4BHRpZXIFdWludDgObW9kdWxlc19yZXN1bHQAAQdtb2R1bGVzDW1vZHVsZV9pbmZvW10ObW92ZW1lbnRfc3RhdHMAAgZ0aHJ1c3QGdWludDMyBWRyYWluBnVpbnQxNgtuZWFyYnlfaW5mbwAFCmNhbl90cmF2ZWwEYm9vbAdjdXJyZW50FGVudGl0eV9jdXJyZW50X3N0YXRlCXByb2plY3RlZBRlbnRpdHlfY3VycmVudF9zdGF0ZQptYXhfZW5lcmd5BnVpbnQxNgdzeXN0ZW1zD25lYXJieV9zeXN0ZW1bXQ1uZWFyYnlfc3lzdGVtAAQIZGlzdGFuY2UGdWludDY0C2VuZXJneV9jb3N0BnVpbnQ2NAtmbGlnaHRfdGltZQZ1aW50MzIIbG9jYXRpb24NbG9jYXRpb25faW5mbw5uZnRfc2NoZW1hX2RlZgACC3NjaGVtYV9uYW1lBG5hbWUGZmllbGRzDnNjaGVtYV9maWVsZFtdEG5mdF90ZW1wbGF0ZV9kZWYAAgdpdGVtX2lkBnVpbnQxNgtzY2hlbWFfbmFtZQRuYW1lDW5mdGNvbmZpZ19yb3cAAwdpdGVtX2lkBnVpbnQxNgt0ZW1wbGF0ZV9pZAVpbnQzMgtzY2hlbWFfbmFtZQRuYW1lDm5mdGluZm9fcmVzdWx0AAIHc2NoZW1hcxBuZnRfc2NoZW1hX2RlZltdCXRlbXBsYXRlcxJuZnRfdGVtcGxhdGVfZGVmW10Gbm90aWZ5AAEFZXZlbnQKdGFza19ldmVudA1wYWNrZWRfbW9kdWxlAAIHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0C3BsYXllcl9pbmZvAAMFb3duZXIEbmFtZQlpc19wbGF5ZXIEYm9vbAxjb21wYW55X25hbWUGc3RyaW5nCnBsYXllcl9yb3cAAQVvd25lcgRuYW1lCHJlY2hhcmdlAAECaWQGdWludDY0DHJlY2lwZV9pbnB1dAAEB2l0ZW1faWQGdWludDE2CGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgIcXVhbnRpdHkGdWludDMyEHJlY2lwZV9pdGVtX2luZm8AAgJpZAZ1aW50MTYEbWFzcwZ1aW50MzIPcmVjaXBlX3Jlc3BvbnNlAAcOb3V0cHV0X2l0ZW1faWQGdWludDE2C291dHB1dF9tYXNzBnVpbnQzMgZpbnB1dHMOcmVjaXBlX2lucHV0W10Kc3RhdF9zbG90cxRzdGF0X3Nsb3RfcmVzcG9uc2VbXQ1ibGVuZF93ZWlnaHRzBWJ5dGVzC291dHB1dF9pdGVtEHJlY2lwZV9pdGVtX2luZm8LaW5wdXRfaXRlbXMScmVjaXBlX2l0ZW1faW5mb1tdDnJlY2lwZXNfcmVzdWx0AAEHcmVjaXBlcxFyZWNpcGVfcmVzcG9uc2VbXQxyZWZyc2hlbnRpdHkAAQllbnRpdHlfaWQGdWludDY0C3Jlc2VydmVfcm93AAQCaWQGdWludDY0CGNvb3JkX2lkBnVpbnQ2NAdzdHJhdHVtBnVpbnQxNglyZW1haW5pbmcGdWludDMyB3Jlc29sdmUAAgJpZAZ1aW50NjQFY291bnQHdWludDY0Pw9yZXNvbHZlX3Jlc3VsdHMABgllbnRpdHlfaWQGdWludDY0C2VudGl0eV90eXBlBG5hbWUOcmVzb2x2ZWRfY291bnQFdWludDgUbmV3X3NjaGVkdWxlX3N0YXJ0ZWQLdGltZV9wb2ludD8LZW50aXR5Z3JvdXAHdWludDY0Pw1ncm91cF9tZW1iZXJzFkJfdmVjdG9yX2VudGl0eV9yZWZfRT8NcmVzb3VyY2VfaW5mbwAEAmlkBnVpbnQxNgRtYXNzBnVpbnQzMghjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4DnJlc291cmNlX3N0YXRzAAMFc3RhdDEGdWludDE2BXN0YXQyBnVpbnQxNgVzdGF0MwZ1aW50MTYQcmVzb3VyY2VzX3Jlc3VsdAABCXJlc291cmNlcw9yZXNvdXJjZV9pbmZvW10Icm1tb2R1bGUAAwllbnRpdHlfaWQGdWludDY0DG1vZHVsZV9pbmRleAV1aW50OAp0YXJnZXRfcmVmCmNhcmdvX3JlZj8Icm1uZnRjZmcAAQdpdGVtX2lkBnVpbnQxNgRzYWx0AAEEc2FsdAZ1aW50NjQIc2NoZWR1bGUAAgdzdGFydGVkCnRpbWVfcG9pbnQFdGFza3MGdGFza1tdDHNjaGVtYV9maWVsZAACBG5hbWUGc3RyaW5nCmZpZWxkX3R5cGUGc3RyaW5nCXNldG5mdGNmZwADB2l0ZW1faWQGdWludDE2C3RlbXBsYXRlX2lkBWludDMyC3NjaGVtYV9uYW1lBG5hbWUKc2tpcHJldmVhbAABBmNvbW1pdAtjaGVja3N1bTI1NghzbG90X2RlZgACBHR5cGUFdWludDgKb3V0cHV0X3BjdAZ1aW50MTYKc3Bhd25jYXJnbwADCWVudGl0eV9pZAZ1aW50NjQHaXRlbV9pZAZ1aW50NjQIcXVhbnRpdHkGdWludDY0C3NwYXducGFja2VkAAQJZW50aXR5X2lkBnVpbnQ2NAdpdGVtX2lkBnVpbnQxNgpodWxsX3N0YXRzBnVpbnQ2NAlpbnN0YWxsZWQPcGFja2VkX21vZHVsZVtdC3NwYXduc2VlZGVkAAQJZW50aXR5X2lkBnVpbnQ2NAdpdGVtX2lkBnVpbnQ2NAhxdWFudGl0eQZ1aW50NjQFc3RhdHMGdWludDY0EnN0YXRfc2xvdF9yZXNwb25zZQABB3NvdXJjZXMNc3RhdF9zb3VyY2VbXQtzdGF0X3NvdXJjZQACC2lucHV0X2luZGV4BXVpbnQ4EGlucHV0X3N0YXRfaW5kZXgFdWludDgJc3RhdGVfcm93AAUHZW5hYmxlZARib29sBWVwb2NoBnVpbnQzMgRzYWx0BnVpbnQ2NARzZWVkC2NoZWNrc3VtMjU2BmNvbW1pdAtjaGVja3N1bTI1NgxzdHJhdHVtX2RhdGEAAgdzdHJhdHVtDHN0cmF0dW1faW5mbwVzdGF0cw5yZXNvdXJjZV9zdGF0cwxzdHJhdHVtX2luZm8ABQdpdGVtX2lkBnVpbnQxNgRzZWVkBnVpbnQ2NAhyaWNobmVzcwZ1aW50MTYHcmVzZXJ2ZQZ1aW50MzILcmVzZXJ2ZV9tYXgGdWludDMyEXN0cmF0dW1fcmVtYWluaW5nAAIHc3RyYXR1bQZ1aW50MTYJcmVtYWluaW5nBnVpbnQzMgR0YXNrAAgEdHlwZQV1aW50OAhkdXJhdGlvbgZ1aW50MzIKY2FuY2VsYWJsZQV1aW50OAtjb29yZGluYXRlcwxjb29yZGluYXRlcz8FY2FyZ28MY2FyZ29faXRlbVtdDGVudGl0eXRhcmdldAtlbnRpdHlfcmVmPwtlbnRpdHlncm91cAd1aW50NjQ/C2VuZXJneV9jb3N0B3VpbnQxNj8KdGFza19ldmVudAAJCmV2ZW50X3R5cGUFdWludDgFb3duZXIEbmFtZQtlbnRpdHlfdHlwZQRuYW1lCWVudGl0eV9pZAZ1aW50NjQKdGFza19pbmRleAV1aW50OAR0YXNrBHRhc2sJc3RhcnRzX2F0CnRpbWVfcG9pbnQMY29tcGxldGVzX2F0CnRpbWVfcG9pbnQKbmV3X2VuZXJneQd1aW50MTY/DHRhc2tfcmVzdWx0cwABCGVudGl0aWVzEmVudGl0eV90YXNrX2luZm9bXQh0cmFuc2ZlcgADCXNvdXJjZV9pZAZ1aW50NjQHZGVzdF9pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdBnRyYXZlbAAEAmlkBnVpbnQ2NAF4BWludDY0AXkFaW50NjQIcmVjaGFyZ2UEYm9vbAl0eXBlc19yb3cABAJpZAZ1aW50NjQTZW50aXR5X3N1bW1hcnlfdHlwZQ5lbnRpdHlfc3VtbWFyeRBnYW1lX2NvbmZpZ190eXBlC2dhbWVfY29uZmlnFnN0cmF0dW1fcmVtYWluaW5nX3R5cGURc3RyYXR1bV9yZW1haW5pbmcIdW5kZXBsb3kAAgdob3N0X2lkBnVpbnQ2NAl0YXJnZXRfaWQGdWludDY0BHdhcnAAAwJpZAZ1aW50NjQBeAVpbnQ2NAF5BWludDY0CndhcnBfc3RhdHMAAQVyYW5nZQZ1aW50MzIEd2lwZQAABHdyYXAABAVvd25lcgRuYW1lCWVudGl0eV9pZAZ1aW50NjQIbmV4dXNfaWQGdWludDY0BWl0ZW1zDGNhcmdvX2l0ZW1bXQp3cmFwZW50aXR5AAIJZW50aXR5X2lkBnVpbnQ2NAhuZXh1c19pZAZ1aW50NjRBAABQUScqUzIJYWRkbW9kdWxlxwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogYWRkbW9kdWxlCnN1bW1hcnk6ICdJbnN0YWxsIGEgbW9kdWxlIGludG8gYSBzbG90JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnN0YWxsIGEgbW9kdWxlIGZyb20gY2FyZ28gaW50byBhIG1vZHVsZSBzbG90IG9uIGEgbGl2ZSBlbnRpdHkgb3IgYSBwYWNrZWQgZW50aXR5IGluIGNhcmdvLiBUaGUgZW50aXR5IG11c3QgYmUgaWRsZSB3aXRoIG5vIHNjaGVkdWxlZCB0YXNrcy4gVGhlIG1vZHVsZSB0eXBlIG11c3QgYmUgY29tcGF0aWJsZSB3aXRoIHRoZSB0YXJnZXQgc2xvdCB0eXBlLiBUaGUgbW9kdWxlIGl0ZW0gaXMgcmVtb3ZlZCBmcm9tIGNhcmdvIHVwb24gaW5zdGFsbGF0aW9uLgAAAFh3NVMyCGFkZG5leHVzpwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogYWRkbmV4dXMKc3VtbWFyeTogJ0FkZCBhIG5leHVzIGxvY2F0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpDcmVhdGUgYSBuZXcgbmV4dXMgZW50aXR5IGF0IHRoZSBnaXZlbiBjb29yZGluYXRlcy4gTmV4dXNlcyBhcmUgb3duZWQgYnkgdGhlIGNvbnRyYWN0IGFuZCBzZXJ2ZSBhcyBmaXhlZCBnYXRoZXJpbmcgcG9pbnRzIHdoZXJlIHBsYXllcnMgY2FuIHdyYXAsIHVud3JhcCwgZGVwbG95LCBhbmQgb3RoZXJ3aXNlIGludGVyYWN0IHdpdGggTkZULWJhY2tlZCBhc3NldHMuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AAABAoWl2MgdhZHZhbmNl0wEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogYWR2YW5jZQpzdW1tYXJ5OiAnQWR2YW5jZSB0dXJuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpBZHZhbmNlIHRoZSBnYW1lIHRvIHRoZSBuZXh0IHR1cm4uAAAAAIA0VTwFYmxlbmT8Ai0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBibGVuZApzdW1tYXJ5OiAnQmxlbmQgY2FyZ28gc3RhY2tzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpDb21iaW5lIG11bHRpcGxlIGNhcmdvIHN0YWNrcyBvZiB0aGUgc2FtZSBpdGVtIHR5cGUgaW50byBhIHNpbmdsZSBzdGFjayB3aXRoIG5ldyBibGVuZGVkIHN0YXRzLiBBbGwgaW5wdXQgc3RhY2tzIG11c3Qgc2hhcmUgdGhlIHNhbWUgaXRlbSBpZC4gVGhlIG91dHB1dCBzdGFjayBoYXMgdGhlIGNvbWJpbmVkIHF1YW50aXR5IG9mIGFsbCBpbnB1dHMuAAAAAESFpkEGY2FuY2VswgItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY2FuY2VsCnN1bW1hcnk6ICdDYW5jZWwgc2NoZWR1bGVkIHRhc2tzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpDYW5jZWwgdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgdGFza3MgZnJvbSB0aGUgZW5kIG9mIGFuIGVudGl0eSdzIHNjaGVkdWxlLiBUYXNrcyB0aGF0IGFyZSBpbW11dGFibGUgYW5kIGluIHByb2dyZXNzIGNhbm5vdCBiZSBjYW5jZWxsZWQucFW+JmPpTEQMY2xhaW1zdGFydGVyhQQtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY2xhaW1zdGFydGVyCnN1bW1hcnk6ICdERUJVRzogY2xhaW0gYSBzdGFydGVyIHNoaXAnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClNwYXduIGEgcHJlLWtpdHRlZCBUMSBzdGFydGVyIHNoaXAgYXQgdGhlIGdpdmVuIGNvb3JkaW5hdGVzIGZvciBhIHJlZ2lzdGVyZWQgcGxheWVyLiBBdmFpbGFibGUgb25seSBvbiB0ZXN0IGRlcGxveW1lbnRzIHdoZXJlIG5vIGluLWdhbWUgc2hpcCBlY29ub215IHlldCBleGlzdHMuIFJlcXVpcmVzIHRoZSBjYWxsZXIgdG8gYmUgYSBqb2luZWQgcGxheWVyIHdpdGggbm8gZXhpc3Rpbmcgc2hpcHM7IHRoZSByZXN1bHRpbmcgc2hpcCBpcyBmaXR0ZWQgd2l0aCBhIGdlbmVyYXRvciwgZW5naW5lLCBnYXRoZXJlciwgY3JhZnRlciwgYW5kIGhhdWxlciBtb2R1bGUuAACoG99pVEQJY2xlYW5yc3Zw7AItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY2xlYW5yc3ZwCnN1bW1hcnk6ICdDbGVhbiB1cCBwYXN0IGVwb2NoIHJlc2VydmVzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpFcmFzZSByZXNlcnZlIHRhYmxlIHJvd3MgZnJvbSBhIHBhc3QgZXBvY2guIENhbm5vdCBjbGVhbiB0aGUgY3VycmVudCBvciBmdXR1cmUgZXBvY2hzLiBUaGUgbWF4X3Jvd3MgcGFyYW1ldGVyIGNhcHMgdGhlIG51bWJlciBvZiByb3dzIGVyYXNlZCBwZXIgY2FsbCB0byBsaW1pdCBDUFUgdXNhZ2UuAICKx+RrVEQKY2xlYXJ0YWJsZb4BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNsZWFydGFibGUKc3VtbWFyeTogJ0RFQlVHOiBjbGVhcnRhYmxlIGFjdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAAABkJyVFBmNvbW1pdOwBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNvbW1pdApzdW1tYXJ5OiAnU2V0IGNvbW1pdCB2YWx1ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKU2V0IHRoZSBpbml0aWFsIGNvbW1pdCB2YWx1ZSBkdXJpbmcgZ2FtZSBpbml0aWFsaXphdGlvbi4AAGA0MrcmRQljb25maWdsb2fdAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjb25maWdsb2cKc3VtbWFyeTogJ0xvZyBnYW1lIGNvbmZpZ3VyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiB0aGF0IGxvZ3MgdGhlIGN1cnJlbnQgZ2FtZSBjb25maWd1cmF0aW9uLiBDYWxsZWQgaW5saW5lIGFmdGVyIGluaXRpYWxpemF0aW9uIHRvIGJyb2FkY2FzdCBjb25maWcgdmlhIGFjdGlvbiB0cmFjZXMuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AAAAAgLzMRQVjcmFmdMgDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNyYWZ0CnN1bW1hcnk6ICdDcmFmdCBpdGVtcyBmcm9tIGEgcmVjaXBlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUcmFuc2Zvcm0gY2FyZ28gaXRlbXMgaW50byBhIG5ldyBpdGVtIHVzaW5nIGEgcmVjaXBlLiBUaGUgZW50aXR5IG11c3QgaGF2ZSBhIGNyYWZ0ZXIgbW9kdWxlIGluc3RhbGxlZC4gQ29uc3VtZXMgZW5lcmd5IGFuZCBzY2hlZHVsZXMgYSBjcmFmdGluZyB0YXNrIHdpdGggZHVyYXRpb24gYmFzZWQgb24gdG90YWwgaW5wdXQgbWFzcyBhbmQgY3JhZnRlciBzcGVlZC4gSW5wdXQgcXVhbnRpdGllcyBtdXN0IGV4YWN0bHkgbWF0Y2ggdGhlIHJlY2lwZSByZXF1aXJlbWVudHMu4LPLU6ls1EUMY3JlYXRlZW50aXR5vwEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY3JlYXRlZW50aXR5CnN1bW1hcnk6ICdERUJVRzogY3JlYXRlIGFuIGVudGl0eScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAAA27SKVKCGRlbW9saXNo8QMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZGVtb2xpc2gKc3VtbWFyeTogJ0RlbW9saXNoIGEgc3RhdGlvbmFyeSBlbnRpdHknCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkRlY29tbWlzc2lvbiBhbiBlbnRpdHksIGVyYXNpbmcgaXQgZnJvbSB0aGUgZ2FtZS4gVGhlIGVudGl0eSBtdXN0IGJlIGlkbGUsIGhhdmUgZW1wdHkgY2FyZ28sIGFuZCBoYXZlIG5vIGluc3RhbGxlZCBtb2R1bGVzIChyZW1vdmUgZWFjaCB2aWEgcm1tb2R1bGUgZmlyc3QpLiBTY2hlZHVsZXMgYSBkZW1vbGlzaCB0YXNrIHRoYXQgZXJhc2VzIHRoZSBlbnRpdHkgb24gcmVzb2x1dGlvbi4gT25seSB2YWxpZCBmb3IgZW50aXRpZXMgdGhhdCBjYW5ub3QgbW92ZTsgdXNlIHVuZGVwbG95IG9yIHdyYXBlbnRpdHkgZm9yIHRoZSByZXN0LgAAAAB4GqtKBmRlcGxveewCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGRlcGxveQpzdW1tYXJ5OiAnRGVwbG95IGEgcGFja2VkIGVudGl0eScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVW5wYWNrIGEgcGFja2VkIGVudGl0eSBpdGVtIChwYWNrZWQgc2hpcCBvciBwYWNrZWQgY29udGFpbmVyKSBmcm9tIGNhcmdvLCBzY2hlZHVsaW5nIGEgZGVwbG95IHRhc2sgdGhhdCBjcmVhdGVzIHRoZSBuZXcgZW50aXR5IGF0IHRoZSBkZXBsb3lpbmcgZW50aXR5J3MgbG9jYXRpb24gdXBvbiByZXNvbHV0aW9uLgCAzy5PhbBKCmRlc2NlbnRpdHnJAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBkZXNjZW50aXR5CnN1bW1hcnk6ICdEZXNjcmliZSBhIHBhY2tlZCBlbnRpdHknCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIGEgaHVtYW4tcmVhZGFibGUgZGVzY3JpcHRpb24gc3RyaW5nIGZvciBhIHBhY2tlZCBlbnRpdHksIGRlcml2ZWQgZnJvbSB0aGUgZW50aXR5IGl0ZW0gaWQsIGh1bGwgc3RhdHMsIGFuZCB0aGUgbGlzdCBvZiBpbnN0YWxsZWQgbW9kdWxlIGl0ZW0gaWRzIGFuZCBzdGF0cy4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyBhbmQgTkZUIHJlbmRlcmVycyB0byBkaXNwbGF5IHBhY2tlZCBlbnRpdGllcy4AAAAAqHjMVAZlbmFibGXdAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBlbmFibGUKc3VtbWFyeTogJ1NldCBlbmFibGVkIHN0YXRlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGlzIGdhbWUgb2YgU2hpcGxvYWQugLGRlF2DulsMZml4Y2FyZ29tYXNzAAAAAABc1bJhBmdhdGhlcpcDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdhdGhlcgpzdW1tYXJ5OiAnR2F0aGVyIHJlc291cmNlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKR2F0aGVyIHJlc291cmNlcyBhdCB0aGUgc2hpcCdzIGN1cnJlbnQgbG9jYXRpb24uIE9ubHkgd29ya3MgYXQgZ2F0aGVyYWJsZSBsb2NhdGlvbiB0eXBlcy4gU2NoZWR1bGVzIGEgZ2F0aGVyIHRhc2sgdGhhdCBjb25zdW1lcyBlbmVyZ3kgYW5kIHlpZWxkcyBjYXJnbyBiYXNlZCBvbiB0aGUgc2hpcCdzIGdhdGhlcmVyIHN0YXRzIGFuZCB0aGUgbG9jYXRpb24ncyByZXNvdXJjZSBjb21wb3NpdGlvbi4AAGBuTYqyYglnZXRjb25maWfKAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRjb25maWcKc3VtbWFyeTogJ0dldCBnYW1lIGNvbmZpZ3VyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgdGhlIGdhbWUgY29uZmlndXJhdGlvbiBpbmNsdWRpbmcgZGVmYXVsdCBlbnRpdHkgc3RhdHMgZm9yIHdhcmVob3VzZXMgYW5kIGNvbnRhaW5lcnMsIGFuZCB0aGUgZnVsbCBpdGVtIGRlZmluaXRpb25zIHRhYmxlLgBUPI65qLJiC2dldGVsaWdpYmxlyAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0ZWxpZ2libGUKc3VtbWFyeTogJ0dldCBlbGlnaWJsZSByZXNvdXJjZSBpdGVtIElEcyBhdCBhIGxvY2F0aW9uIGFuZCBzdHJhdHVtJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgbGlzdCBvZiByZXNvdXJjZSBpdGVtIElEcyBlbGlnaWJsZSB0byBiZSBnYXRoZXJlZCBhdCB0aGUgZ2l2ZW4gY29vcmRpbmF0ZXMgYW5kIHN0cmF0dW0gZGVwdGguIEl0ZW1zIGFyZSBnYXRlZCBieSBib3RoIHRoZSBsb2NhdGlvbidzIHJlc291cmNlIHByb2ZpbGUgYW5kIHRoZSBkZXB0aCB0aHJlc2hvbGQgZm9yIGVhY2ggdGllci4AsHLZ5amyYgtnZXRlbnRpdGllc6QCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVudGl0aWVzCnN1bW1hcnk6ICdHZXQgYWxsIGVudGl0aWVzIGZvciBhIHBsYXllcicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmV0dXJucyBmdWxsIGVudGl0eSBpbmZvIGZvciBhbGwgZW50aXRpZXMgb3duZWQgYnkgYSBwbGF5ZXIuIE9wdGlvbmFsbHkgZmlsdGVyIGJ5IGVudGl0eSB0eXBlLgAA8NnlqbJiCWdldGVudGl0eaICLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVudGl0eQpzdW1tYXJ5OiAnR2V0IGVudGl0eSBzdGF0ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmV0dXJucyB0aGUgY3VycmVudCBzdGF0ZSBvZiBhbiBlbnRpdHkgaW5jbHVkaW5nIGlkZW50aXR5LCBjYXJnbywgc2NoZWR1bGUgc3RhdGUsIGFuZCB0eXBlLXNwZWNpZmljIGZpZWxkcy4ATDZJquyyYgtnZXRpdGVtZGF0YagDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGl0ZW1kYXRhCnN1bW1hcnk6ICdHZXQgZnVsbCBpdGVtIGNhdGFsb2cnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBjb21wbGV0ZSBpdGVtIGNhdGFsb2cgYXMgdGhlIGNvbnRyYWN0IHNlZXMgaXQsIGluY2x1ZGluZyB0eXBlLCBzdWJ0eXBlLCB0aWVyLCBtYXNzLCBhbmQgb3RoZXIgc3RhdGljIG1ldGFkYXRhLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIGFuZCBjbGllbnRzIHRvIG1pcnJvciB0aGUgY29udHJhY3QncyBpdGVtIGRlZmluaXRpb25zLgAATk6q7LJiCmdldGl0ZW1pZHOGAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRpdGVtaWRzCnN1bW1hcnk6ICdHZXQgaXRlbSBpZCB0byBuYW1lIG1hcHBpbmdzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgZnVsbCBtYXBwaW5nIG9mIGl0ZW0gaWQgY29uc3RhbnRzIHRvIHRoZWlyIGNhbm9uaWNhbCBzdHJpbmcgbmFtZXMuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gcmVzb2x2ZSBudW1lcmljIGl0ZW0gaWRzIHRvIGh1bWFuLXJlYWRhYmxlIGlkZW50aWZpZXJzLgAAAFiq7LJiCGdldGl0ZW1zmgItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0aXRlbXMKc3VtbWFyeTogJ0dldCBhbGwgYXZhaWxhYmxlIGl0ZW1zJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGEgbGlzdCBvZiBhbGwgaXRlbXMgaW4gdGhlIGdhbWUgaW5jbHVkaW5nIHRoZWlyIGlkLCBiYXNlIHByaWNlLCBhbmQgbWFzcy6AVfVZquyyYgxnZXRpdGVtdHlwZXOIAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRpdGVtdHlwZXMKc3VtbWFyeTogJ0dldCBpdGVtIHR5cGUgZW51bSB2YWx1ZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBpdGVtIHR5cGUgZW51bSB2YWx1ZXMgYW5kIHRoZWlyIHN0cmluZyBuYW1lcyAocmVzb3VyY2UsIGNvbXBvbmVudCwgbW9kdWxlLCBlbnRpdHkpLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGRlY29kZSBpdGVtIHR5cGUgaWRlbnRpZmllcnMuACZ12SAas2ILZ2V0bG9jYXRpb27iAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRsb2NhdGlvbgpzdW1tYXJ5OiAnR2V0IGxvY2F0aW9uIGluZm9ybWF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGluZm9ybWF0aW9uIGFib3V0IGEgbG9jYXRpb24gaW5jbHVkaW5nIHdoZXRoZXIgYSBzeXN0ZW0gZXhpc3RzLCBhbmQgZm9yIGVhY2ggaXRlbTogcHJpY2UsIHN1cHBseSwgcmFyaXR5IG11bHRpcGxpZXIsIGFuZCBsb2NhdGlvbiBtdWx0aXBsaWVyLgCAySYhGrNiCmdldGxvY2RhdGH+Ai0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRsb2NkYXRhCnN1bW1hcnk6ICdHZXQgZGVyaXZlZCBsb2NhdGlvbiBkYXRhJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGRlcml2ZWQgbG9jYXRpb24gZGF0YSBpbmNsdWRpbmcgc3RhdGljIHByb3BlcnRpZXMgKHR5cGUsIGRpZmZpY3VsdHksIHNlZWRzKSBmcm9tIHRoZSBnYW1lIHNlZWQgYW5kIGVwb2NoLXNwZWNpZmljIHByb3BlcnRpZXMgKGFjdGl2ZSwgc2VlZHMpIGZyb20gdGhlIGN1cnJlbnQgZXBvY2ggc2VlZC4AsKo+JyqzYgtnZXRtb2R0eXBlc9YDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldG1vZHR5cGVzCnN1bW1hcnk6ICdHZXQgbW9kdWxlIHR5cGUgZW51bSB2YWx1ZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBtb2R1bGUgdHlwZSBlbnVtIHZhbHVlcyBhbmQgdGhlaXIgc3RyaW5nIG5hbWVzIChhbnksIGVuZ2luZSwgZ2VuZXJhdG9yLCBnYXRoZXJlciwgbG9hZGVyLCB3YXJwLCBjcmFmdGVyLCBsYXVuY2hlciwgc3RvcmFnZSwgaGF1bGVyKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZWNvZGUgbW9kdWxlIHN1YnR5cGUgaWRlbnRpZmllcnMgYW5kIHNsb3QgY29tcGF0aWJpbGl0eS4AAFZRJyqzYgpnZXRtb2R1bGVzgAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0bW9kdWxlcwpzdW1tYXJ5OiAnR2V0IGFsbCBtb2R1bGUgaXRlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBzdWJzZXQgb2YgaXRlbXMgY2xhc3NpZmllZCBhcyBtb2R1bGVzLCBpbmNsdWRpbmcgZWFjaCBtb2R1bGUncyBpZCwgbWFzcywgc3VidHlwZSwgYW5kIHRpZXIuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZW51bWVyYXRlIGluc3RhbGxhYmxlIGVxdWlwbWVudC4AAPDnGjWzYglnZXRuZWFyYnneAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRuZWFyYnkKc3VtbWFyeTogJ0dldCBuZWFyYnkgcmVhY2hhYmxlIHN5c3RlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgbmVhcmJ5IHN5c3RlbXMgcmVhY2hhYmxlIGJ5IGFuIGVudGl0eSBmcm9tIGl0cyBwcm9qZWN0ZWQgbG9jYXRpb24uIFJldHVybnMgY3VycmVudCBzdGF0ZSAod2l0aCBjb21wbGV0ZWQgdGFza3MgcmVzb2x2ZWQpLCBwcm9qZWN0ZWQgc3RhdGUgKGFmdGVyIGFsbCBzY2hlZHVsZWQgdGFza3MpLCBhbmQgYSBsaXN0IG9mIHJlYWNoYWJsZSBzeXN0ZW1zIHdpdGggZGlzdGFuY2UsIGVuZXJneSBjb3N0LCBmbGlnaHQgdGltZSwgYW5kIG1hcmtldCBpbmZvcm1hdGlvbi4AAF3T5TWzYgpnZXRuZnRpbmZv8AMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0bmZ0aW5mbwpzdW1tYXJ5OiAnR2V0IE5GVCBzY2hlbWEgYW5kIHRlbXBsYXRlIGNvbmZpZ3VyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBBdG9taWNBc3NldHMgc2NoZW1hcyBhbmQgdGVtcGxhdGVzIHRoZSBnYW1lIGNvbnRyYWN0IGV4cGVjdHMsIHBsdXMgdGhlIGN1cnJlbnQgYGl0ZW1faWQg4oaSICh0ZW1wbGF0ZV9pZCwgc2NoZW1hX25hbWUpYCBtYXBwaW5nIHN0b3JlZCBpbiB0aGUgYG5mdGNvbmZpZ2AgdGFibGUuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gc3luYyBhdG9taWNhc3NldHMgc3RhdGUgd2l0aCB0aGUgY29udHJhY3QuAAC4yptYs2IJZ2V0cGxheWVy/QItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0cGxheWVyCnN1bW1hcnk6ICdHZXQgcGxheWVyIGluZm9ybWF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGluZm9ybWF0aW9uIGFib3V0IGEgcGxheWVyIGluY2x1ZGluZyBiYWxhbmNlLCBkZWJ0LCBuZXR3b3J0aCwgZW50aXR5IGNvdW50cywgYW5kIHByaWNpbmcgZm9yIG5leHQgcHVyY2hhc2VzLiBSZXR1cm5zIGlzX3BsYXllcj1mYWxzZSBpZiB0aGUgYWNjb3VudCBoYXMgbm90IGpvaW5lZCB0aGUgZ2FtZS4AAFDVIXWzYglnZXRyZWNpcGWmAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZWNpcGUKc3VtbWFyeTogJ0dldCBhIHNpbmdsZSBjcmFmdGluZyByZWNpcGUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSByZWNpcGUgd2hvc2Ugb3V0cHV0IG1hdGNoZXMgdGhlIGdpdmVuIGl0ZW0gaWQsIGluY2x1ZGluZyBpdHMgaW5wdXRzLCBibGVuZCB3ZWlnaHRzLCBzdGF0IHNsb3RzLCBhbmQgcmVzb2x2ZWQgaXRlbSBtYXNzIGluZm8uIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGlzcGxheSBjcmFmdGluZyByZXF1aXJlbWVudHMuAABW1SF1s2IKZ2V0cmVjaXBlc6wDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlY2lwZXMKc3VtbWFyeTogJ0xpc3QgY3JhZnRpbmcgcmVjaXBlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgYSBwYWdpbmF0ZWQgbGlzdCBvZiBjcmFmdGluZyByZWNpcGVzIHN0YXJ0aW5nIGF0IHRoZSBwcm92aWRlZCBsb3dlciBib3VuZCBvdXRwdXQgaXRlbSBpZCwgdXAgdG8gdGhlIHNwZWNpZmllZCBsaW1pdC4gRWFjaCBlbnRyeSBpbmNsdWRlcyBpbnB1dHMsIGJsZW5kIHdlaWdodHMsIHN0YXQgc2xvdHMsIGFuZCByZXNvbHZlZCBpdGVtIG1hc3MgaW5mby4AAM4GYXWzYgpnZXRyZXNjYXRzngMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0cmVzY2F0cwpzdW1tYXJ5OiAnR2V0IHJlc291cmNlIGNhdGVnb3J5IGVudW0gdmFsdWVzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgZnVsbCBzZXQgb2YgcmVzb3VyY2UgY2F0ZWdvcnkgZW51bSB2YWx1ZXMgYW5kIHRoZWlyIHN0cmluZyBuYW1lcyAob3JlLCBnYXMsIHJlZ29saXRoLCBiaW9tYXNzLCBjcnlzdGFsKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZWNvZGUgcmVzb3VyY2Ugc3VidHlwZSBpZGVudGlmaWVycy4AsNpXYXWzYgtnZXRyZXNlcnZlc/wDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlc2VydmVzCnN1bW1hcnk6ICdHZXQgY3VycmVudCByZXNlcnZlIG1vZGlmaWNhdGlvbnMgYXQgYSBsb2NhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyB0aGUgY2hhaW4ncyBtb2RpZmljYXRpb25zIHRvIGRlcml2ZWQgcmVzZXJ2ZXMgYXQgdGhlIGdpdmVuIGNvb3JkaW5hdGUgZm9yIHRoZSBjdXJyZW50IGVwb2NoIGFzIGEgbGlzdCBvZiB7c3RyYXR1bSwgcmVtYWluaW5nfSBwYWlycy4gU3RyYXRhIG5vdCBwcmVzZW50IGluIHRoZSByZXNwb25zZSB1c2UgdGhlaXIgZGVyaXZlZCBpbml0aWFsIHJlc2VydmUuIENvbXBvc2Ugd2l0aCBTREsgZGVyaXZhdGlvbiB0byBnZXQgdGhlIGZ1bGwgcGVyLWxvY2F0aW9uIHN0cmF0YSB2aWV3LoAVuppidbNiDGdldHJlc291cmNlc4cDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlc291cmNlcwpzdW1tYXJ5OiAnR2V0IGFsbCByZXNvdXJjZSBpdGVtcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIHN1YnNldCBvZiBpdGVtcyBjbGFzc2lmaWVkIGFzIHJlc291cmNlcywgaW5jbHVkaW5nIGVhY2ggcmVzb3VyY2UncyBpZCwgbWFzcywgc3VidHlwZSwgYW5kIHRpZXIuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZW51bWVyYXRlIGdhdGhlcmFibGUgbWF0ZXJpYWxzLgAAADjTiLNiCGdldHNsb3RzuwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0c2xvdHMKc3VtbWFyeTogJ0dldCBlbnRpdHkgc2xvdCBsYXlvdXRzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgbW9kdWxlIHNsb3QgbGF5b3V0IGZvciBldmVyeSBlbnRpdHkgaXRlbSB0eXBlLCBsaXN0aW5nIHRoZSBvcmRlcmVkIHNsb3QgdHlwZXMgYXZhaWxhYmxlIGZvciBtb2R1bGUgaW5zdGFsbGF0aW9uLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGRldGVybWluZSB3aGljaCBtb2R1bGUgdHlwZXMgYXJlIGNvbXBhdGlibGUgd2l0aCBhIGdpdmVuIGVudGl0eSBodWxsLgCA1NncjLNiCmdldHN0cmF0dW3SAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRzdHJhdHVtCnN1bW1hcnk6ICdHZXQgcmVzb3VyY2Ugc3RyYXR1bSBkYXRhJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIHJlc291cmNlIHN0cmF0dW0gZGF0YSBmb3IgYSBzcGVjaWZpYyBkZXB0aCBsYXllciBhdCBhIGNvb3JkaW5hdGUsIGluY2x1ZGluZyB0aGUgc3RyYXR1bSBzZWVkIGluZm8gYW5kIGRlcml2ZWQgcmVzb3VyY2Ugc3RhdHMugJW7RkqNs2IMZ2V0c3VtbWFyaWVz6AItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0c3VtbWFyaWVzCnN1bW1hcnk6ICdHZXQgZW50aXR5IHN1bW1hcmllcyBmb3IgYSBwbGF5ZXInCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJldHVybnMgbGlnaHR3ZWlnaHQgc3VtbWFyaWVzIG9mIGFsbCBlbnRpdGllcyBvd25lZCBieSBhIHBsYXllciBpbmNsdWRpbmcgdHlwZSwgaWQsIG93bmVyLCBuYW1lLCBsb2NhdGlvbiwgYW5kIGlkbGUgc3RhdHVzLiBPcHRpb25hbGx5IGZpbHRlciBieSBlbnRpdHkgdHlwZS4Aotrm5qrpZQtncm91cHRyYXZlbJoELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdyb3VwdHJhdmVsCnN1bW1hcnk6ICdNb3ZlIG11bHRpcGxlIGVudGl0aWVzIHRvZ2V0aGVyJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbml0aWF0ZSBncm91cCB0cmF2ZWwgZm9yIG11bHRpcGxlIGVudGl0aWVzIHRvIGEgZGVzdGluYXRpb24uIEFsbCBlbnRpdGllcyBtdXN0IGJlIGF0IHRoZSBzYW1lIGxvY2F0aW9uIGFuZCBvd25lZCBieSB0aGUgY2FsbGVyLiBBdCBsZWFzdCBvbmUgZW50aXR5IHdpdGggZW5naW5lcyBpcyByZXF1aXJlZCB0byBwcm92aWRlIHRocnVzdC4gRmxpZ2h0IGR1cmF0aW9uIGlzIGNhbGN1bGF0ZWQgZnJvbSBjb21iaW5lZCB0aHJ1c3QgYW5kIHRvdGFsIG1hc3Mgb2YgYWxsIGVudGl0aWVzLiBDcmVhdGVzIGFuIGVudGl0eWdyb3VwIGZvciBhdG9taWMgcmVzb2x1dGlvbiBhbmQgY2FuY2VsbGF0aW9uLgAAAAAA0LBpBGhhc2j4AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBoYXNoCnN1bW1hcnk6ICdDYWxjdWxhdGUgc2hhMjU2IGhhc2gnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkNhbGN1bGF0ZXMgdGhlIHNoYTI1NiBoYXNoIG9mIGEgc3RyaW5nIGJhc2VkIHVzaW5nIHRoZSBnYW1lIHNlZWQuAAAAQITSsGkHaGFzaDUxMvsBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGhhc2g1MTIKc3VtbWFyeTogJ0NhbGN1bGF0ZSBzaGE1MTIgaGFzaCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ2FsY3VsYXRlcyB0aGUgc2hhNTEyIGhhc2ggb2YgYSBzdHJpbmcgYmFzZWQgdXNpbmcgdGhlIGdhbWUgc2VlZC4AgPouGpfddAppbml0aWFsaXplgAItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogaW5pdGlhbGl6ZQpzdW1tYXJ5OiAnSW5pdGlhbGl6ZSBnYW1lIHNlZWQnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkluaXRpYWxpemUgYSB0aGUgZ2FtZXMgc2VlZCBhbmQgc2VlZCB2YWx1ZXMgdG8gYm9vdHN0cmFwIGdhbWUgc3RhdGUuAAAAAAAwHX0Eam9pbsQBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGpvaW4Kc3VtbWFyeTogJ0pvaW4gYSBnYW1lJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpKb2luIGEgZ2FtZSBvZiBTaGlwbG9hZAAAAAD45TKdBm5vdGlmeYoDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IG5vdGlmeQpzdW1tYXJ5OiAnVGFzayBsaWZlY3ljbGUgbm90aWZpY2F0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gdGhhdCBub3RpZmllcyBlbnRpdHkgb3duZXJzIG9mIHRhc2sgbGlmZWN5Y2xlIGV2ZW50cyAocmVzb2x2ZWQsIGNhbmNlbGxlZCkuIENhbGxlZCBpbmxpbmUgd2hlbiB0YXNrcyBjaGFuZ2Ugc3RhdGUuIFVzZXMgcmVxdWlyZV9yZWNpcGllbnQgdG8gZW5hYmxlIG9mZi1jaGFpbiBtb25pdG9yaW5nIHZpYSBhY3Rpb24gdHJhY2VzLgAAAIpd05C6CHJlY2hhcmdlzQItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcmVjaGFyZ2UKc3VtbWFyeTogJ1JlY2hhcmdlIHNoaXAgZW5lcmd5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpTY2hlZHVsZSBhIHJlY2hhcmdlIHRhc2sgZm9yIGFuIGVudGl0eSB0byByZXN0b3JlIGVuZXJneSB0byBmdWxsIGNhcGFjaXR5LiBUaGUgcmVjaGFyZ2UgZHVyYXRpb24gZGVwZW5kcyBvbiBjdXJyZW50IGVuZXJneSBsZXZlbCBhbmQgcmVjaGFyZ2UgcmF0ZS7gs8tTNXyXugxyZWZyc2hlbnRpdHkAAAAAQO1IsboHcmVzb2x2ZdADLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHJlc29sdmUKc3VtbWFyeTogJ0NvbXBsZXRlIHNjaGVkdWxlZCB0YXNrcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmVzb2x2ZSBjb21wbGV0ZWQgdGFza3MgaW4gYW4gZW50aXR5J3Mgc2NoZWR1bGUsIGFwcGx5aW5nIHRoZWlyIGVmZmVjdHMgKHJlY2hhcmdlIGVuZXJneSwgdXBkYXRlIGxvY2F0aW9uLCBsb2FkL3VubG9hZCBjYXJnbykuIElmIGNvdW50IGlzIHNwZWNpZmllZCwgcmVzb2x2ZSBleGFjdGx5IHRoYXQgbWFueSB0YXNrczsgb3RoZXJ3aXNlIHJlc29sdmUgYWxsIGNvbXBsZXRlZCB0YXNrcy4gRmFpbHMgaWYgY291bnQgZXhjZWVkcyB0aGUgbnVtYmVyIG9mIGNvbXBsZXRlZCB0YXNrcy4AAAAq6kSlvAhybW1vZHVsZbwDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHJtbW9kdWxlCnN1bW1hcnk6ICdSZW1vdmUgYSBtb2R1bGUgZnJvbSBhIHNsb3QnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlbW92ZSBhbiBpbnN0YWxsZWQgbW9kdWxlIGZyb20gYSBzbG90IG9uIGEgbGl2ZSBlbnRpdHkgb3IgYSBwYWNrZWQgZW50aXR5IGluIGNhcmdvLiBUaGUgZW50aXR5IG11c3QgYmUgaWRsZSB3aXRoIG5vIHNjaGVkdWxlZCB0YXNrcy4gVGhlIG1vZHVsZSBpcyByZXR1cm5lZCB0byBjYXJnby4gRmFpbHMgaWYgdGhlIGVudGl0eSBkb2VzIG5vdCBoYXZlIGVub3VnaCBjYXJnbyBjYXBhY2l0eSB0byBob2xkIHRoZSByZXR1cm5lZCBtb2R1bGUuAAAAbKG8prwIcm1uZnRjZmehAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBybW5mdGNmZwpzdW1tYXJ5OiAnUmVtb3ZlIE5GVCB0ZW1wbGF0ZSBtYXBwaW5nIGZvciBhbiBpdGVtJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZW1vdmUgdGhlIEF0b21pY0Fzc2V0cyB0ZW1wbGF0ZSBtYXBwaW5nIGZvciB0aGUgc3BlY2lmaWVkIGl0ZW0gaWQgZnJvbSB0aGUgYG5mdGNvbmZpZ2AgdGFibGUuIEFmdGVyIHJlbW92YWwgdGhlIGl0ZW0gY2FuIG5vIGxvbmdlciBiZSB3cmFwcGVkIG9yIHVud3JhcHBlZCB1bnRpbCBhIG5ldyBtYXBwaW5nIGlzIHNldC4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LgAAAAAAkKPBBHNhbHTYAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzYWx0CnN1bW1hcnk6ICdBcHBlbmQgU2FsdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQWRkIGFkZGl0aW9uYWwgc2FsdCB0byB0aGUgbmV4dCBlcG9jaCBzZWVkLgAAYAvlNbPCCXNldG5mdGNmZ8QDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHNldG5mdGNmZwpzdW1tYXJ5OiAnU2V0IE5GVCB0ZW1wbGF0ZSBtYXBwaW5nIGZvciBhbiBpdGVtJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpCaW5kIGFuIGl0ZW0gaWQgdG8gYW4gQXRvbWljQXNzZXRzIHRlbXBsYXRlIGlkIGFuZCBzY2hlbWEgbmFtZS4gVXNlZCB0byBjb25maWd1cmUgaG93IHRoZSBjb250cmFjdCBtaW50cyBhbmQgcmVjb2duaXplcyBORlRzIGZvciBhIGdpdmVuIGl0ZW0uIEluc2VydHMgYSBuZXcgbWFwcGluZyBpZiBvbmUgZG9lcyBub3QgZXhpc3QsIG9yIHVwZGF0ZXMgdGhlIGV4aXN0aW5nIG1hcHBpbmcuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AQDRqq1sdxApza2lwcmV2ZWFsAAAAZdegyU3FCnNwYXduY2FyZ2/FAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzcGF3bmNhcmdvCnN1bW1hcnk6ICdERUJVRzogc3Bhd24gY2FyZ28gb24gYW4gZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAJKCyNTJTcULc3Bhd25wYWNrZWTnAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzcGF3bnBhY2tlZApzdW1tYXJ5OiAnREVCVUc6IHNwYXduIGEgcGFja2VkIGVudGl0eSB3aXRoIGluc3RhbGxlZCBtb2R1bGVzIG9uIGFuIGVudGl0eScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQCSSkrhyU3FC3NwYXduc2VlZGVkzQEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogc3Bhd25zZWVkZWQKc3VtbWFyeTogJ0RFQlVHOiBzcGF3biBzZWVkZWQgY2FyZ28gb24gYW4gZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAVy08zc0IdHJhbnNmZXLIAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB0cmFuc2ZlcgpzdW1tYXJ5OiAnVHJhbnNmZXIgY2FyZ28gYmV0d2VlbiBlbnRpdGllcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVHJhbnNmZXIgY2FyZ28gYmV0d2VlbiB0d28gZW50aXRpZXMgYXQgdGhlIHNhbWUgbG9jYXRpb24uIEJvdGggZW50aXRpZXMgbXVzdCBiZSBvd25lZCBieSB0aGUgY2FsbGVyIGFuZCBhdCBsZWFzdCBvbmUgbXVzdCBoYXZlIGxvYWRlcnMuIENyZWF0ZXMgbG9hZCBhbmQgdW5sb2FkIHRhc2tzIG9uIGJvdGggZW50aXRpZXMgd2l0aCBkdXJhdGlvbiBiYXNlZCBvbiBjb21iaW5lZCBsb2FkZXIgY2FwYWNpdHkgYW5kIFotZGlzdGFuY2UgYmV0d2VlbiB0aGVtLgAAAABEtc3NBnRyYXZlbPsBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHRyYXZlbApzdW1tYXJ5OiAnTW92ZSBhIHNoaXAnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkluaXRpYXRlIHRyYXZlbCBvZiBhbiBlbnRpdHkgZnJvbSBpdHMgY3VycmVudCBsb2NhdGlvbiB0byBhIG5ldyBkZXN0aW5hdGlvbi4AAACexqrS1Ah1bmRlcGxveecELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHVuZGVwbG95CnN1bW1hcnk6ICdQYWNrIGEgZGVwbG95ZWQgZW50aXR5IGludG8gYSBob3N0JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpQYWNrIGFuIGVudGl0eSBpbnRvIGEgaG9zdCBlbnRpdHkncyBjYXJnbyBhcyBhIHBhY2tlZC1lbnRpdHkgaXRlbS4gSG9zdCBhbmQgdGFyZ2V0IG11c3Qgc2hhcmUgdGhlIHNhbWUgb3duZXIgYW5kIGNvb3JkaW5hdGVzLCB0aGUgaG9zdCBtdXN0IGhhdmUgbG9hZGVycyBhbmQgZW5vdWdoIGNhcGFjaXR5IGZvciB0aGUgcGFja2VkIG1hc3MsIGFuZCB0aGUgdGFyZ2V0IG11c3QgYmUgaWRsZSB3aXRoIGVtcHR5IGNhcmdvLiBDcmVhdGVzIGFuIGVudGl0eWdyb3VwIGFuZCBzY2hlZHVsZXMgdW5kZXBsb3kgdGFza3Mgb24gYm90aCBlbnRpdGllczsgb24gcmVzb2x1dGlvbiB0aGUgdGFyZ2V0IGlzIGVyYXNlZCBhbmQgdGhlIHBhY2tlZCBlbnRpdHkgaXMgYWRkZWQgdG8gdGhlIGhvc3QncyBjYXJnby4gSW52ZXJzZSBvZiBkZXBsb3kuAAAAAABQr+EEd2FycJ8DLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHdhcnAKc3VtbWFyeTogJ1dhcnAgdG8gYSBkZXN0aW5hdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW5zdGFudGx5IHRlbGVwb3J0IGFuIGVudGl0eSB0byBhIGRlc3RpbmF0aW9uIHN5c3RlbS4gUmVxdWlyZXMgd2FycCBjYXBhYmlsaXR5LCBmdWxsIGVuZXJneSwgZW1wdHkgY2FyZ28sIGFuZCBhbiBlbXB0eSBzY2hlZHVsZS4gVGhlIGRlc3RpbmF0aW9uIG11c3QgYmUgYSB2YWxpZCBzeXN0ZW0gd2l0aGluIHdhcnAgcmFuZ2UuIFJlc29sdmVzIGltbWVkaWF0ZWx5IGFzIGEgemVyby1kdXJhdGlvbiB0YXNrLgAAAAAAoKrjBHdpcGWyAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB3aXBlCnN1bW1hcnk6ICdERUJVRzogd2lwZSBhY3Rpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0AAAAAAFDN5QR3cmFw/gMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd3JhcApzdW1tYXJ5OiAnV3JhcCBjYXJnbyBpbnRvIGFuIE5GVCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKV3JhcCBhIHF1YW50aXR5IG9mIGNhcmdvIGZyb20gYW4gZW50aXR5IGludG8gYW4gQXRvbWljQXNzZXRzIE5GVCBtaW50ZWQgdG8gdGhlIHNwZWNpZmllZCBvd25lci4gVGhlIGVudGl0eSBtdXN0IGJlIGF0IGEgbmV4dXMsIGhhdmUgbG9hZGVycywgYW5kIGNvbnRhaW4gZW5vdWdoIG9mIHRoZSByZXF1ZXN0ZWQgY2FyZ28uIFNjaGVkdWxlcyBhIHdyYXAgdGFzayB0aGF0LCBvbiByZXNvbHV0aW9uLCByZW1vdmVzIHRoZSBjYXJnbyBmcm9tIHRoZSBlbnRpdHkgYW5kIG1pbnRzIHRoZSBORlQgdXNpbmcgdGhlIHRlbXBsYXRlIGNvbmZpZ3VyZWQgZm9yIHRoYXQgaXRlbSBpZC4AgM8uT1XN5Qp3cmFwZW50aXR55gMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd3JhcGVudGl0eQpzdW1tYXJ5OiAnV3JhcCBhIGRlcGxveWVkIGVudGl0eSBpbnRvIGFuIE5GVCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKV3JhcCBhbiBlbnRpdHkgaW50byBhbiBBdG9taWNBc3NldHMgTkZUIG1pbnRlZCB0byBpdHMgb3duZXIuIFRoZSBlbnRpdHkgbXVzdCBiZSBhdCBhIG5leHVzLCBpZGxlIHdpdGggZW1wdHkgY2FyZ28sIGFuZCBoYXZlIGFuIG5mdGNvbmZpZyBtYXBwaW5nIGZvciBpdHMgaXRlbSBpZC4gU2NoZWR1bGVzIGEgd3JhcCB0YXNrIHRoYXQsIG9uIHJlc29sdXRpb24sIGVyYXNlcyB0aGUgZW50aXR5IGFuZCBtaW50cyB0aGUgTkZUIHByZXNlcnZpbmcgaXRzIHN0YXRzIGFuZCBpbnN0YWxsZWQgbW9kdWxlcy4IAAAAAADKrkEDaTY0AAAJY2FyZ29fcm93AAAAAPjs8lQDaTY0AAAKZW50aXR5X3JvdwCqppf57PJUA2k2NAAAD2VudGl0eWdyb3VwX3JvdwAAYG5NivKaA2k2NAAADW5mdGNvbmZpZ19yb3cAAAAAXOVNrANpNjQAAApwbGF5ZXJfcm93AAAAQO2rsLoDaTY0AAALcmVzZXJ2ZV9yb3cAAAAAAJVNxgNpNjQAAAlzdGF0ZV9yb3cAAAAAAKyqzwNpNjQAAAl0eXBlc19yb3cBEVNoaXBsb2FkIChTZXJ2ZXIpEVNoaXBsb2FkIChTZXJ2ZXIpAAAAKAAAAABEhaZBDmNhbmNlbF9yZXN1bHRzAAAAAIC8zEUMdGFza19yZXN1bHRzAAAADbtIpUoMdGFza19yZXN1bHRzAAAAAHgaq0oMdGFza19yZXN1bHRzAIDPLk+FsEoGc3RyaW5nAAAAAFzVsmEMdGFza19yZXN1bHRzAABgbk2KsmILZ2FtZV9jb25maWcAVDyOuaiyYgh1aW50MTZbXQCwctnlqbJiDWVudGl0eV9pbmZvW10AAPDZ5amyYgtlbnRpdHlfaW5mbwBMNkmq7LJiD2l0ZW1kYXRhX3Jlc3VsdAAATk6q7LJiD2l0ZW1faWRzX3Jlc3VsdAAAAFiq7LJiCml0ZW1zX2luZm+AVfVZquyyYgtlbnVtX3Jlc3VsdAAmddkgGrNiDWxvY2F0aW9uX2luZm8AgMkmIRqzYhBsb2NhdGlvbl9kZXJpdmVkALCqPicqs2ILZW51bV9yZXN1bHQAAFZRJyqzYg5tb2R1bGVzX3Jlc3VsdAAA8OcaNbNiC25lYXJieV9pbmZvAABd0+U1s2IObmZ0aW5mb19yZXN1bHQAALjKm1izYgtwbGF5ZXJfaW5mbwAAUNUhdbNiDnJlY2lwZXNfcmVzdWx0AABW1SF1s2IOcmVjaXBlc19yZXN1bHQAAM4GYXWzYgtlbnVtX3Jlc3VsdACw2ldhdbNiE3N0cmF0dW1fcmVtYWluaW5nW12AFbqaYnWzYhByZXNvdXJjZXNfcmVzdWx0AAAAONOIs2IVZW50aXR5X2xheW91dHNfcmVzdWx0AIDU2dyMs2IMc3RyYXR1bV9kYXRhgJW7RkqNs2IQZW50aXR5X3N1bW1hcnlbXQCi2ubmqullDHRhc2tfcmVzdWx0cwAAAAAA0LBpC2NoZWNrc3VtMjU2AAAAQITSsGkLY2hlY2tzdW01MTIAAACKXdOQugx0YXNrX3Jlc3VsdHMAAABA7Uixug9yZXNvbHZlX3Jlc3VsdHMAAABXLTzNzQx0YXNrX3Jlc3VsdHMAAAAARLXNzQx0YXNrX3Jlc3VsdHMAAACexqrS1Ax0YXNrX3Jlc3VsdHMAAAAAAFCv4Qx0YXNrX3Jlc3VsdHMAAAAAAFDN5Qx0YXNrX3Jlc3VsdHMAgM8uT1XN5Qx0YXNrX3Jlc3VsdHM=');
|
|
215
|
+
ABI.from(abiBlob);
|
|
216
|
+
var Types;
|
|
217
|
+
(function (Types) {
|
|
218
|
+
let packed_module = class packed_module extends Struct {
|
|
219
|
+
};
|
|
220
|
+
__decorate([
|
|
221
|
+
Struct.field(UInt16)
|
|
222
|
+
], packed_module.prototype, "item_id", void 0);
|
|
223
|
+
__decorate([
|
|
224
|
+
Struct.field(UInt64)
|
|
225
|
+
], packed_module.prototype, "stats", void 0);
|
|
226
|
+
packed_module = __decorate([
|
|
227
|
+
Struct.type('packed_module')
|
|
228
|
+
], packed_module);
|
|
229
|
+
Types.packed_module = packed_module;
|
|
230
|
+
let module_entry = class module_entry extends Struct {
|
|
231
|
+
};
|
|
232
|
+
__decorate([
|
|
233
|
+
Struct.field(UInt8)
|
|
234
|
+
], module_entry.prototype, "type", void 0);
|
|
235
|
+
__decorate([
|
|
236
|
+
Struct.field(packed_module, { optional: true })
|
|
237
|
+
], module_entry.prototype, "installed", void 0);
|
|
238
|
+
module_entry = __decorate([
|
|
239
|
+
Struct.type('module_entry')
|
|
240
|
+
], module_entry);
|
|
241
|
+
Types.module_entry = module_entry;
|
|
242
|
+
let cargo_ref = class cargo_ref extends Struct {
|
|
243
|
+
};
|
|
244
|
+
__decorate([
|
|
245
|
+
Struct.field(UInt16)
|
|
246
|
+
], cargo_ref.prototype, "item_id", void 0);
|
|
247
|
+
__decorate([
|
|
248
|
+
Struct.field(UInt64)
|
|
249
|
+
], cargo_ref.prototype, "stats", void 0);
|
|
250
|
+
__decorate([
|
|
251
|
+
Struct.field(module_entry, { array: true })
|
|
252
|
+
], cargo_ref.prototype, "modules", void 0);
|
|
253
|
+
cargo_ref = __decorate([
|
|
254
|
+
Struct.type('cargo_ref')
|
|
255
|
+
], cargo_ref);
|
|
256
|
+
Types.cargo_ref = cargo_ref;
|
|
257
|
+
let addmodule = class addmodule extends Struct {
|
|
258
|
+
};
|
|
259
|
+
__decorate([
|
|
260
|
+
Struct.field(UInt64)
|
|
261
|
+
], addmodule.prototype, "entity_id", void 0);
|
|
262
|
+
__decorate([
|
|
263
|
+
Struct.field(UInt8)
|
|
264
|
+
], addmodule.prototype, "module_index", void 0);
|
|
265
|
+
__decorate([
|
|
266
|
+
Struct.field(cargo_ref)
|
|
267
|
+
], addmodule.prototype, "module_ref", void 0);
|
|
268
|
+
__decorate([
|
|
269
|
+
Struct.field(cargo_ref, { optional: true })
|
|
270
|
+
], addmodule.prototype, "target_ref", void 0);
|
|
271
|
+
addmodule = __decorate([
|
|
272
|
+
Struct.type('addmodule')
|
|
273
|
+
], addmodule);
|
|
274
|
+
Types.addmodule = addmodule;
|
|
275
|
+
let addnexus = class addnexus extends Struct {
|
|
276
|
+
};
|
|
277
|
+
__decorate([
|
|
278
|
+
Struct.field('string')
|
|
279
|
+
], addnexus.prototype, "nexus_name", void 0);
|
|
280
|
+
__decorate([
|
|
281
|
+
Struct.field(Int64)
|
|
282
|
+
], addnexus.prototype, "x", void 0);
|
|
283
|
+
__decorate([
|
|
284
|
+
Struct.field(Int64)
|
|
285
|
+
], addnexus.prototype, "y", void 0);
|
|
286
|
+
addnexus = __decorate([
|
|
287
|
+
Struct.type('addnexus')
|
|
288
|
+
], addnexus);
|
|
289
|
+
Types.addnexus = addnexus;
|
|
290
|
+
let advance = class advance extends Struct {
|
|
291
|
+
};
|
|
292
|
+
__decorate([
|
|
293
|
+
Struct.field('string')
|
|
294
|
+
], advance.prototype, "reveal", void 0);
|
|
295
|
+
__decorate([
|
|
296
|
+
Struct.field(Checksum256)
|
|
297
|
+
], advance.prototype, "commit", void 0);
|
|
298
|
+
advance = __decorate([
|
|
299
|
+
Struct.type('advance')
|
|
300
|
+
], advance);
|
|
301
|
+
Types.advance = advance;
|
|
302
|
+
let cargo_item = class cargo_item extends Struct {
|
|
303
|
+
};
|
|
304
|
+
__decorate([
|
|
305
|
+
Struct.field(UInt16)
|
|
306
|
+
], cargo_item.prototype, "item_id", void 0);
|
|
307
|
+
__decorate([
|
|
308
|
+
Struct.field(UInt64)
|
|
309
|
+
], cargo_item.prototype, "stats", void 0);
|
|
310
|
+
__decorate([
|
|
311
|
+
Struct.field(module_entry, { array: true })
|
|
312
|
+
], cargo_item.prototype, "modules", void 0);
|
|
313
|
+
__decorate([
|
|
314
|
+
Struct.field(UInt32)
|
|
315
|
+
], cargo_item.prototype, "quantity", void 0);
|
|
316
|
+
cargo_item = __decorate([
|
|
317
|
+
Struct.type('cargo_item')
|
|
318
|
+
], cargo_item);
|
|
319
|
+
Types.cargo_item = cargo_item;
|
|
320
|
+
let blend = class blend extends Struct {
|
|
321
|
+
};
|
|
322
|
+
__decorate([
|
|
323
|
+
Struct.field(UInt64)
|
|
324
|
+
], blend.prototype, "id", void 0);
|
|
325
|
+
__decorate([
|
|
326
|
+
Struct.field(cargo_item, { array: true })
|
|
327
|
+
], blend.prototype, "inputs", void 0);
|
|
328
|
+
blend = __decorate([
|
|
329
|
+
Struct.type('blend')
|
|
330
|
+
], blend);
|
|
331
|
+
Types.blend = blend;
|
|
332
|
+
let cancel = class cancel extends Struct {
|
|
333
|
+
};
|
|
334
|
+
__decorate([
|
|
335
|
+
Struct.field(UInt64)
|
|
336
|
+
], cancel.prototype, "id", void 0);
|
|
337
|
+
__decorate([
|
|
338
|
+
Struct.field(UInt64)
|
|
339
|
+
], cancel.prototype, "count", void 0);
|
|
340
|
+
cancel = __decorate([
|
|
341
|
+
Struct.type('cancel')
|
|
342
|
+
], cancel);
|
|
343
|
+
Types.cancel = cancel;
|
|
344
|
+
let entity_ref = class entity_ref extends Struct {
|
|
345
|
+
};
|
|
346
|
+
__decorate([
|
|
347
|
+
Struct.field(Name)
|
|
348
|
+
], entity_ref.prototype, "entity_type", void 0);
|
|
349
|
+
__decorate([
|
|
350
|
+
Struct.field(UInt64)
|
|
351
|
+
], entity_ref.prototype, "entity_id", void 0);
|
|
352
|
+
entity_ref = __decorate([
|
|
353
|
+
Struct.type('entity_ref')
|
|
354
|
+
], entity_ref);
|
|
355
|
+
Types.entity_ref = entity_ref;
|
|
356
|
+
let cancel_results = class cancel_results extends Struct {
|
|
357
|
+
};
|
|
358
|
+
__decorate([
|
|
359
|
+
Struct.field(UInt64)
|
|
360
|
+
], cancel_results.prototype, "entity_id", void 0);
|
|
361
|
+
__decorate([
|
|
362
|
+
Struct.field(Name)
|
|
363
|
+
], cancel_results.prototype, "entity_type", void 0);
|
|
364
|
+
__decorate([
|
|
365
|
+
Struct.field(UInt8)
|
|
366
|
+
], cancel_results.prototype, "cancelled_count", void 0);
|
|
367
|
+
__decorate([
|
|
368
|
+
Struct.field(TimePoint, { optional: true })
|
|
369
|
+
], cancel_results.prototype, "schedule_started", void 0);
|
|
370
|
+
__decorate([
|
|
371
|
+
Struct.field(UInt64, { optional: true })
|
|
372
|
+
], cancel_results.prototype, "entitygroup", void 0);
|
|
373
|
+
__decorate([
|
|
374
|
+
Struct.field(entity_ref, { array: true, optional: true })
|
|
375
|
+
], cancel_results.prototype, "group_members", void 0);
|
|
376
|
+
cancel_results = __decorate([
|
|
377
|
+
Struct.type('cancel_results')
|
|
378
|
+
], cancel_results);
|
|
379
|
+
Types.cancel_results = cancel_results;
|
|
380
|
+
let cargo_row = class cargo_row extends Struct {
|
|
381
|
+
};
|
|
382
|
+
__decorate([
|
|
383
|
+
Struct.field(UInt64)
|
|
384
|
+
], cargo_row.prototype, "id", void 0);
|
|
385
|
+
__decorate([
|
|
386
|
+
Struct.field(UInt64)
|
|
387
|
+
], cargo_row.prototype, "entity_id", void 0);
|
|
388
|
+
__decorate([
|
|
389
|
+
Struct.field(UInt64)
|
|
390
|
+
], cargo_row.prototype, "item_id", void 0);
|
|
391
|
+
__decorate([
|
|
392
|
+
Struct.field(UInt64)
|
|
393
|
+
], cargo_row.prototype, "quantity", void 0);
|
|
394
|
+
__decorate([
|
|
395
|
+
Struct.field(UInt64)
|
|
396
|
+
], cargo_row.prototype, "stats", void 0);
|
|
397
|
+
__decorate([
|
|
398
|
+
Struct.field(module_entry, { array: true })
|
|
399
|
+
], cargo_row.prototype, "modules", void 0);
|
|
400
|
+
cargo_row = __decorate([
|
|
401
|
+
Struct.type('cargo_row')
|
|
402
|
+
], cargo_row);
|
|
403
|
+
Types.cargo_row = cargo_row;
|
|
404
|
+
let cargo_view = class cargo_view extends Struct {
|
|
405
|
+
};
|
|
406
|
+
__decorate([
|
|
407
|
+
Struct.field(UInt16)
|
|
408
|
+
], cargo_view.prototype, "item_id", void 0);
|
|
409
|
+
__decorate([
|
|
410
|
+
Struct.field(UInt64)
|
|
411
|
+
], cargo_view.prototype, "stats", void 0);
|
|
412
|
+
__decorate([
|
|
413
|
+
Struct.field(module_entry, { array: true })
|
|
414
|
+
], cargo_view.prototype, "modules", void 0);
|
|
415
|
+
__decorate([
|
|
416
|
+
Struct.field(UInt32)
|
|
417
|
+
], cargo_view.prototype, "quantity", void 0);
|
|
418
|
+
__decorate([
|
|
419
|
+
Struct.field(UInt64)
|
|
420
|
+
], cargo_view.prototype, "id", void 0);
|
|
421
|
+
cargo_view = __decorate([
|
|
422
|
+
Struct.type('cargo_view')
|
|
423
|
+
], cargo_view);
|
|
424
|
+
Types.cargo_view = cargo_view;
|
|
425
|
+
let claimstarter = class claimstarter extends Struct {
|
|
426
|
+
};
|
|
427
|
+
__decorate([
|
|
428
|
+
Struct.field(Name)
|
|
429
|
+
], claimstarter.prototype, "account", void 0);
|
|
430
|
+
__decorate([
|
|
431
|
+
Struct.field(Int64)
|
|
432
|
+
], claimstarter.prototype, "x", void 0);
|
|
433
|
+
__decorate([
|
|
434
|
+
Struct.field(Int64)
|
|
435
|
+
], claimstarter.prototype, "y", void 0);
|
|
436
|
+
claimstarter = __decorate([
|
|
437
|
+
Struct.type('claimstarter')
|
|
438
|
+
], claimstarter);
|
|
439
|
+
Types.claimstarter = claimstarter;
|
|
440
|
+
let cleanrsvp = class cleanrsvp extends Struct {
|
|
441
|
+
};
|
|
442
|
+
__decorate([
|
|
443
|
+
Struct.field(UInt64)
|
|
444
|
+
], cleanrsvp.prototype, "epoch", void 0);
|
|
445
|
+
__decorate([
|
|
446
|
+
Struct.field(UInt64)
|
|
447
|
+
], cleanrsvp.prototype, "max_rows", void 0);
|
|
448
|
+
cleanrsvp = __decorate([
|
|
449
|
+
Struct.type('cleanrsvp')
|
|
450
|
+
], cleanrsvp);
|
|
451
|
+
Types.cleanrsvp = cleanrsvp;
|
|
452
|
+
let cleartable = class cleartable extends Struct {
|
|
453
|
+
};
|
|
454
|
+
__decorate([
|
|
455
|
+
Struct.field(Name)
|
|
456
|
+
], cleartable.prototype, "table_name", void 0);
|
|
457
|
+
__decorate([
|
|
458
|
+
Struct.field(Name, { optional: true })
|
|
459
|
+
], cleartable.prototype, "scope", void 0);
|
|
460
|
+
__decorate([
|
|
461
|
+
Struct.field(UInt64, { optional: true })
|
|
462
|
+
], cleartable.prototype, "max_rows", void 0);
|
|
463
|
+
cleartable = __decorate([
|
|
464
|
+
Struct.type('cleartable')
|
|
465
|
+
], cleartable);
|
|
466
|
+
Types.cleartable = cleartable;
|
|
467
|
+
let commit = class commit extends Struct {
|
|
468
|
+
};
|
|
469
|
+
__decorate([
|
|
470
|
+
Struct.field(Checksum256)
|
|
471
|
+
], commit.prototype, "commit", void 0);
|
|
472
|
+
commit = __decorate([
|
|
473
|
+
Struct.type('commit')
|
|
474
|
+
], commit);
|
|
475
|
+
Types.commit = commit;
|
|
476
|
+
let entity_defaults = class entity_defaults extends Struct {
|
|
477
|
+
};
|
|
478
|
+
__decorate([
|
|
479
|
+
Struct.field(UInt16)
|
|
480
|
+
], entity_defaults.prototype, "warehouse_z", void 0);
|
|
481
|
+
__decorate([
|
|
482
|
+
Struct.field(UInt16)
|
|
483
|
+
], entity_defaults.prototype, "container_z", void 0);
|
|
484
|
+
entity_defaults = __decorate([
|
|
485
|
+
Struct.type('entity_defaults')
|
|
486
|
+
], entity_defaults);
|
|
487
|
+
Types.entity_defaults = entity_defaults;
|
|
488
|
+
let item_def = class item_def extends Struct {
|
|
489
|
+
};
|
|
490
|
+
__decorate([
|
|
491
|
+
Struct.field(UInt16)
|
|
492
|
+
], item_def.prototype, "id", void 0);
|
|
493
|
+
__decorate([
|
|
494
|
+
Struct.field(UInt32)
|
|
495
|
+
], item_def.prototype, "mass", void 0);
|
|
496
|
+
__decorate([
|
|
497
|
+
Struct.field(UInt8)
|
|
498
|
+
], item_def.prototype, "type", void 0);
|
|
499
|
+
__decorate([
|
|
500
|
+
Struct.field(UInt8)
|
|
501
|
+
], item_def.prototype, "subtype", void 0);
|
|
502
|
+
__decorate([
|
|
503
|
+
Struct.field(UInt8)
|
|
504
|
+
], item_def.prototype, "tier", void 0);
|
|
505
|
+
item_def = __decorate([
|
|
506
|
+
Struct.type('item_def')
|
|
507
|
+
], item_def);
|
|
508
|
+
Types.item_def = item_def;
|
|
509
|
+
let game_config = class game_config extends Struct {
|
|
510
|
+
};
|
|
511
|
+
__decorate([
|
|
512
|
+
Struct.field(UInt32)
|
|
513
|
+
], game_config.prototype, "version", void 0);
|
|
514
|
+
__decorate([
|
|
515
|
+
Struct.field(entity_defaults)
|
|
516
|
+
], game_config.prototype, "defaults", void 0);
|
|
517
|
+
__decorate([
|
|
518
|
+
Struct.field(item_def, { array: true })
|
|
519
|
+
], game_config.prototype, "items", void 0);
|
|
520
|
+
game_config = __decorate([
|
|
521
|
+
Struct.type('game_config')
|
|
522
|
+
], game_config);
|
|
523
|
+
Types.game_config = game_config;
|
|
524
|
+
let configlog = class configlog extends Struct {
|
|
525
|
+
};
|
|
526
|
+
__decorate([
|
|
527
|
+
Struct.field(game_config)
|
|
528
|
+
], configlog.prototype, "config", void 0);
|
|
529
|
+
configlog = __decorate([
|
|
530
|
+
Struct.type('configlog')
|
|
531
|
+
], configlog);
|
|
532
|
+
Types.configlog = configlog;
|
|
533
|
+
let coordinates = class coordinates extends Struct {
|
|
534
|
+
};
|
|
535
|
+
__decorate([
|
|
536
|
+
Struct.field(Int64)
|
|
537
|
+
], coordinates.prototype, "x", void 0);
|
|
538
|
+
__decorate([
|
|
539
|
+
Struct.field(Int64)
|
|
540
|
+
], coordinates.prototype, "y", void 0);
|
|
541
|
+
__decorate([
|
|
542
|
+
Struct.field(UInt16, { optional: true })
|
|
543
|
+
], coordinates.prototype, "z", void 0);
|
|
544
|
+
coordinates = __decorate([
|
|
545
|
+
Struct.type('coordinates')
|
|
546
|
+
], coordinates);
|
|
547
|
+
Types.coordinates = coordinates;
|
|
548
|
+
let craft = class craft extends Struct {
|
|
549
|
+
};
|
|
550
|
+
__decorate([
|
|
551
|
+
Struct.field(UInt64)
|
|
552
|
+
], craft.prototype, "id", void 0);
|
|
553
|
+
__decorate([
|
|
554
|
+
Struct.field(UInt16)
|
|
555
|
+
], craft.prototype, "recipe_id", void 0);
|
|
556
|
+
__decorate([
|
|
557
|
+
Struct.field(UInt32)
|
|
558
|
+
], craft.prototype, "quantity", void 0);
|
|
559
|
+
__decorate([
|
|
560
|
+
Struct.field(cargo_item, { array: true })
|
|
561
|
+
], craft.prototype, "inputs", void 0);
|
|
562
|
+
craft = __decorate([
|
|
563
|
+
Struct.type('craft')
|
|
564
|
+
], craft);
|
|
565
|
+
Types.craft = craft;
|
|
566
|
+
let crafter_stats = class crafter_stats extends Struct {
|
|
567
|
+
};
|
|
568
|
+
__decorate([
|
|
569
|
+
Struct.field(UInt16)
|
|
570
|
+
], crafter_stats.prototype, "speed", void 0);
|
|
571
|
+
__decorate([
|
|
572
|
+
Struct.field(UInt16)
|
|
573
|
+
], crafter_stats.prototype, "drain", void 0);
|
|
574
|
+
crafter_stats = __decorate([
|
|
575
|
+
Struct.type('crafter_stats')
|
|
576
|
+
], crafter_stats);
|
|
577
|
+
Types.crafter_stats = crafter_stats;
|
|
578
|
+
let createentity = class createentity extends Struct {
|
|
579
|
+
};
|
|
580
|
+
__decorate([
|
|
581
|
+
Struct.field(Name)
|
|
582
|
+
], createentity.prototype, "owner", void 0);
|
|
583
|
+
__decorate([
|
|
584
|
+
Struct.field(Name)
|
|
585
|
+
], createentity.prototype, "entity_type", void 0);
|
|
586
|
+
__decorate([
|
|
587
|
+
Struct.field('string')
|
|
588
|
+
], createentity.prototype, "entity_name", void 0);
|
|
589
|
+
__decorate([
|
|
590
|
+
Struct.field(Int64)
|
|
591
|
+
], createentity.prototype, "x", void 0);
|
|
592
|
+
__decorate([
|
|
593
|
+
Struct.field(Int64)
|
|
594
|
+
], createentity.prototype, "y", void 0);
|
|
595
|
+
createentity = __decorate([
|
|
596
|
+
Struct.type('createentity')
|
|
597
|
+
], createentity);
|
|
598
|
+
Types.createentity = createentity;
|
|
599
|
+
let demolish = class demolish extends Struct {
|
|
600
|
+
};
|
|
601
|
+
__decorate([
|
|
602
|
+
Struct.field(UInt64)
|
|
603
|
+
], demolish.prototype, "entity_id", void 0);
|
|
604
|
+
demolish = __decorate([
|
|
605
|
+
Struct.type('demolish')
|
|
606
|
+
], demolish);
|
|
607
|
+
Types.demolish = demolish;
|
|
608
|
+
let deploy = class deploy extends Struct {
|
|
609
|
+
};
|
|
610
|
+
__decorate([
|
|
611
|
+
Struct.field(UInt64)
|
|
612
|
+
], deploy.prototype, "id", void 0);
|
|
613
|
+
__decorate([
|
|
614
|
+
Struct.field(cargo_ref)
|
|
615
|
+
], deploy.prototype, "ref", void 0);
|
|
616
|
+
deploy = __decorate([
|
|
617
|
+
Struct.type('deploy')
|
|
618
|
+
], deploy);
|
|
619
|
+
Types.deploy = deploy;
|
|
620
|
+
let descentity = class descentity extends Struct {
|
|
621
|
+
};
|
|
622
|
+
__decorate([
|
|
623
|
+
Struct.field(UInt16)
|
|
624
|
+
], descentity.prototype, "item_id", void 0);
|
|
625
|
+
__decorate([
|
|
626
|
+
Struct.field(UInt64)
|
|
627
|
+
], descentity.prototype, "hull_stats", void 0);
|
|
628
|
+
__decorate([
|
|
629
|
+
Struct.field(UInt16, { array: true })
|
|
630
|
+
], descentity.prototype, "module_items", void 0);
|
|
631
|
+
__decorate([
|
|
632
|
+
Struct.field(UInt64, { array: true })
|
|
633
|
+
], descentity.prototype, "module_stats", void 0);
|
|
634
|
+
descentity = __decorate([
|
|
635
|
+
Struct.type('descentity')
|
|
636
|
+
], descentity);
|
|
637
|
+
Types.descentity = descentity;
|
|
638
|
+
let enable = class enable extends Struct {
|
|
639
|
+
};
|
|
640
|
+
__decorate([
|
|
641
|
+
Struct.field('bool')
|
|
642
|
+
], enable.prototype, "enabled", void 0);
|
|
643
|
+
enable = __decorate([
|
|
644
|
+
Struct.type('enable')
|
|
645
|
+
], enable);
|
|
646
|
+
Types.enable = enable;
|
|
647
|
+
let energy_stats = class energy_stats extends Struct {
|
|
648
|
+
};
|
|
649
|
+
__decorate([
|
|
650
|
+
Struct.field(UInt16)
|
|
651
|
+
], energy_stats.prototype, "capacity", void 0);
|
|
652
|
+
__decorate([
|
|
653
|
+
Struct.field(UInt16)
|
|
654
|
+
], energy_stats.prototype, "recharge", void 0);
|
|
655
|
+
energy_stats = __decorate([
|
|
656
|
+
Struct.type('energy_stats')
|
|
657
|
+
], energy_stats);
|
|
658
|
+
Types.energy_stats = energy_stats;
|
|
659
|
+
let entity_current_state = class entity_current_state extends Struct {
|
|
660
|
+
};
|
|
661
|
+
__decorate([
|
|
662
|
+
Struct.field(coordinates)
|
|
663
|
+
], entity_current_state.prototype, "coordinates", void 0);
|
|
664
|
+
__decorate([
|
|
665
|
+
Struct.field(UInt16)
|
|
666
|
+
], entity_current_state.prototype, "energy", void 0);
|
|
667
|
+
entity_current_state = __decorate([
|
|
668
|
+
Struct.type('entity_current_state')
|
|
669
|
+
], entity_current_state);
|
|
670
|
+
Types.entity_current_state = entity_current_state;
|
|
671
|
+
let loader_stats = class loader_stats extends Struct {
|
|
672
|
+
};
|
|
673
|
+
__decorate([
|
|
674
|
+
Struct.field(UInt32)
|
|
675
|
+
], loader_stats.prototype, "mass", void 0);
|
|
676
|
+
__decorate([
|
|
677
|
+
Struct.field(UInt16)
|
|
678
|
+
], loader_stats.prototype, "thrust", void 0);
|
|
679
|
+
__decorate([
|
|
680
|
+
Struct.field(UInt8)
|
|
681
|
+
], loader_stats.prototype, "quantity", void 0);
|
|
682
|
+
loader_stats = __decorate([
|
|
683
|
+
Struct.type('loader_stats')
|
|
684
|
+
], loader_stats);
|
|
685
|
+
Types.loader_stats = loader_stats;
|
|
686
|
+
let movement_stats = class movement_stats extends Struct {
|
|
687
|
+
};
|
|
688
|
+
__decorate([
|
|
689
|
+
Struct.field(UInt32)
|
|
690
|
+
], movement_stats.prototype, "thrust", void 0);
|
|
691
|
+
__decorate([
|
|
692
|
+
Struct.field(UInt16)
|
|
693
|
+
], movement_stats.prototype, "drain", void 0);
|
|
694
|
+
movement_stats = __decorate([
|
|
695
|
+
Struct.type('movement_stats')
|
|
696
|
+
], movement_stats);
|
|
697
|
+
Types.movement_stats = movement_stats;
|
|
698
|
+
let gatherer_stats = class gatherer_stats extends Struct {
|
|
699
|
+
};
|
|
700
|
+
__decorate([
|
|
701
|
+
Struct.field(UInt16)
|
|
702
|
+
], gatherer_stats.prototype, "yield", void 0);
|
|
703
|
+
__decorate([
|
|
704
|
+
Struct.field(UInt16)
|
|
705
|
+
], gatherer_stats.prototype, "drain", void 0);
|
|
706
|
+
__decorate([
|
|
707
|
+
Struct.field(UInt16)
|
|
708
|
+
], gatherer_stats.prototype, "depth", void 0);
|
|
709
|
+
__decorate([
|
|
710
|
+
Struct.field(UInt16)
|
|
711
|
+
], gatherer_stats.prototype, "speed", void 0);
|
|
712
|
+
gatherer_stats = __decorate([
|
|
713
|
+
Struct.type('gatherer_stats')
|
|
714
|
+
], gatherer_stats);
|
|
715
|
+
Types.gatherer_stats = gatherer_stats;
|
|
716
|
+
let hauler_stats = class hauler_stats extends Struct {
|
|
717
|
+
};
|
|
718
|
+
__decorate([
|
|
719
|
+
Struct.field(UInt8)
|
|
720
|
+
], hauler_stats.prototype, "capacity", void 0);
|
|
721
|
+
__decorate([
|
|
722
|
+
Struct.field(UInt16)
|
|
723
|
+
], hauler_stats.prototype, "efficiency", void 0);
|
|
724
|
+
__decorate([
|
|
725
|
+
Struct.field(UInt16)
|
|
726
|
+
], hauler_stats.prototype, "drain", void 0);
|
|
727
|
+
hauler_stats = __decorate([
|
|
728
|
+
Struct.type('hauler_stats')
|
|
729
|
+
], hauler_stats);
|
|
730
|
+
Types.hauler_stats = hauler_stats;
|
|
731
|
+
let warp_stats = class warp_stats extends Struct {
|
|
732
|
+
};
|
|
733
|
+
__decorate([
|
|
734
|
+
Struct.field(UInt32)
|
|
735
|
+
], warp_stats.prototype, "range", void 0);
|
|
736
|
+
warp_stats = __decorate([
|
|
737
|
+
Struct.type('warp_stats')
|
|
738
|
+
], warp_stats);
|
|
739
|
+
Types.warp_stats = warp_stats;
|
|
740
|
+
let task = class task extends Struct {
|
|
741
|
+
};
|
|
742
|
+
__decorate([
|
|
743
|
+
Struct.field(UInt8)
|
|
744
|
+
], task.prototype, "type", void 0);
|
|
745
|
+
__decorate([
|
|
746
|
+
Struct.field(UInt32)
|
|
747
|
+
], task.prototype, "duration", void 0);
|
|
748
|
+
__decorate([
|
|
749
|
+
Struct.field(UInt8)
|
|
750
|
+
], task.prototype, "cancelable", void 0);
|
|
751
|
+
__decorate([
|
|
752
|
+
Struct.field(coordinates, { optional: true })
|
|
753
|
+
], task.prototype, "coordinates", void 0);
|
|
754
|
+
__decorate([
|
|
755
|
+
Struct.field(cargo_item, { array: true })
|
|
756
|
+
], task.prototype, "cargo", void 0);
|
|
757
|
+
__decorate([
|
|
758
|
+
Struct.field(entity_ref, { optional: true })
|
|
759
|
+
], task.prototype, "entitytarget", void 0);
|
|
760
|
+
__decorate([
|
|
761
|
+
Struct.field(UInt64, { optional: true })
|
|
762
|
+
], task.prototype, "entitygroup", void 0);
|
|
763
|
+
__decorate([
|
|
764
|
+
Struct.field(UInt16, { optional: true })
|
|
765
|
+
], task.prototype, "energy_cost", void 0);
|
|
766
|
+
task = __decorate([
|
|
767
|
+
Struct.type('task')
|
|
768
|
+
], task);
|
|
769
|
+
Types.task = task;
|
|
770
|
+
let schedule = class schedule extends Struct {
|
|
771
|
+
};
|
|
772
|
+
__decorate([
|
|
773
|
+
Struct.field(TimePoint)
|
|
774
|
+
], schedule.prototype, "started", void 0);
|
|
775
|
+
__decorate([
|
|
776
|
+
Struct.field(task, { array: true })
|
|
777
|
+
], schedule.prototype, "tasks", void 0);
|
|
778
|
+
schedule = __decorate([
|
|
779
|
+
Struct.type('schedule')
|
|
780
|
+
], schedule);
|
|
781
|
+
Types.schedule = schedule;
|
|
782
|
+
let entity_info = class entity_info extends Struct {
|
|
783
|
+
};
|
|
784
|
+
__decorate([
|
|
785
|
+
Struct.field(Name)
|
|
786
|
+
], entity_info.prototype, "type", void 0);
|
|
787
|
+
__decorate([
|
|
788
|
+
Struct.field(UInt64)
|
|
789
|
+
], entity_info.prototype, "id", void 0);
|
|
790
|
+
__decorate([
|
|
791
|
+
Struct.field(Name)
|
|
792
|
+
], entity_info.prototype, "owner", void 0);
|
|
793
|
+
__decorate([
|
|
794
|
+
Struct.field('string')
|
|
795
|
+
], entity_info.prototype, "entity_name", void 0);
|
|
796
|
+
__decorate([
|
|
797
|
+
Struct.field(coordinates)
|
|
798
|
+
], entity_info.prototype, "coordinates", void 0);
|
|
799
|
+
__decorate([
|
|
800
|
+
Struct.field(UInt32)
|
|
801
|
+
], entity_info.prototype, "cargomass", void 0);
|
|
802
|
+
__decorate([
|
|
803
|
+
Struct.field(cargo_view, { array: true })
|
|
804
|
+
], entity_info.prototype, "cargo", void 0);
|
|
805
|
+
__decorate([
|
|
806
|
+
Struct.field(loader_stats, { optional: true })
|
|
807
|
+
], entity_info.prototype, "loaders", void 0);
|
|
808
|
+
__decorate([
|
|
809
|
+
Struct.field(module_entry, { array: true })
|
|
810
|
+
], entity_info.prototype, "modules", void 0);
|
|
811
|
+
__decorate([
|
|
812
|
+
Struct.field(UInt16, { optional: true })
|
|
813
|
+
], entity_info.prototype, "energy", void 0);
|
|
814
|
+
__decorate([
|
|
815
|
+
Struct.field(UInt32, { optional: true })
|
|
816
|
+
], entity_info.prototype, "hullmass", void 0);
|
|
817
|
+
__decorate([
|
|
818
|
+
Struct.field(movement_stats, { optional: true })
|
|
819
|
+
], entity_info.prototype, "engines", void 0);
|
|
820
|
+
__decorate([
|
|
821
|
+
Struct.field(energy_stats, { optional: true })
|
|
822
|
+
], entity_info.prototype, "generator", void 0);
|
|
823
|
+
__decorate([
|
|
824
|
+
Struct.field(UInt32, { optional: true })
|
|
825
|
+
], entity_info.prototype, "capacity", void 0);
|
|
826
|
+
__decorate([
|
|
827
|
+
Struct.field(gatherer_stats, { optional: true })
|
|
828
|
+
], entity_info.prototype, "gatherer", void 0);
|
|
829
|
+
__decorate([
|
|
830
|
+
Struct.field(hauler_stats, { optional: true })
|
|
831
|
+
], entity_info.prototype, "hauler", void 0);
|
|
832
|
+
__decorate([
|
|
833
|
+
Struct.field(warp_stats, { optional: true })
|
|
834
|
+
], entity_info.prototype, "warp", void 0);
|
|
835
|
+
__decorate([
|
|
836
|
+
Struct.field(crafter_stats, { optional: true })
|
|
837
|
+
], entity_info.prototype, "crafter", void 0);
|
|
838
|
+
__decorate([
|
|
839
|
+
Struct.field('bool')
|
|
840
|
+
], entity_info.prototype, "is_idle", void 0);
|
|
841
|
+
__decorate([
|
|
842
|
+
Struct.field(task, { optional: true })
|
|
843
|
+
], entity_info.prototype, "current_task", void 0);
|
|
844
|
+
__decorate([
|
|
845
|
+
Struct.field(UInt32)
|
|
846
|
+
], entity_info.prototype, "current_task_elapsed", void 0);
|
|
847
|
+
__decorate([
|
|
848
|
+
Struct.field(UInt32)
|
|
849
|
+
], entity_info.prototype, "current_task_remaining", void 0);
|
|
850
|
+
__decorate([
|
|
851
|
+
Struct.field(task, { array: true })
|
|
852
|
+
], entity_info.prototype, "pending_tasks", void 0);
|
|
853
|
+
__decorate([
|
|
854
|
+
Struct.field(TimePoint, { optional: true })
|
|
855
|
+
], entity_info.prototype, "idle_at", void 0);
|
|
856
|
+
__decorate([
|
|
857
|
+
Struct.field(schedule, { optional: true })
|
|
858
|
+
], entity_info.prototype, "schedule", void 0);
|
|
859
|
+
entity_info = __decorate([
|
|
860
|
+
Struct.type('entity_info')
|
|
861
|
+
], entity_info);
|
|
862
|
+
Types.entity_info = entity_info;
|
|
863
|
+
let slot_def = class slot_def extends Struct {
|
|
864
|
+
};
|
|
865
|
+
__decorate([
|
|
866
|
+
Struct.field(UInt8)
|
|
867
|
+
], slot_def.prototype, "type", void 0);
|
|
868
|
+
__decorate([
|
|
869
|
+
Struct.field(UInt16)
|
|
870
|
+
], slot_def.prototype, "output_pct", void 0);
|
|
871
|
+
slot_def = __decorate([
|
|
872
|
+
Struct.type('slot_def')
|
|
873
|
+
], slot_def);
|
|
874
|
+
Types.slot_def = slot_def;
|
|
875
|
+
let entity_layout = class entity_layout extends Struct {
|
|
876
|
+
};
|
|
877
|
+
__decorate([
|
|
878
|
+
Struct.field(UInt16)
|
|
879
|
+
], entity_layout.prototype, "entity_item_id", void 0);
|
|
880
|
+
__decorate([
|
|
881
|
+
Struct.field(slot_def, { array: true })
|
|
882
|
+
], entity_layout.prototype, "slots", void 0);
|
|
883
|
+
entity_layout = __decorate([
|
|
884
|
+
Struct.type('entity_layout')
|
|
885
|
+
], entity_layout);
|
|
886
|
+
Types.entity_layout = entity_layout;
|
|
887
|
+
let entity_layouts_result = class entity_layouts_result extends Struct {
|
|
888
|
+
};
|
|
889
|
+
__decorate([
|
|
890
|
+
Struct.field(entity_layout, { array: true })
|
|
891
|
+
], entity_layouts_result.prototype, "entities", void 0);
|
|
892
|
+
entity_layouts_result = __decorate([
|
|
893
|
+
Struct.type('entity_layouts_result')
|
|
894
|
+
], entity_layouts_result);
|
|
895
|
+
Types.entity_layouts_result = entity_layouts_result;
|
|
896
|
+
let entity_row = class entity_row extends Struct {
|
|
897
|
+
};
|
|
898
|
+
__decorate([
|
|
899
|
+
Struct.field(UInt64)
|
|
900
|
+
], entity_row.prototype, "id", void 0);
|
|
901
|
+
__decorate([
|
|
902
|
+
Struct.field(Name)
|
|
903
|
+
], entity_row.prototype, "owner", void 0);
|
|
904
|
+
__decorate([
|
|
905
|
+
Struct.field(Name)
|
|
906
|
+
], entity_row.prototype, "kind", void 0);
|
|
907
|
+
__decorate([
|
|
908
|
+
Struct.field('string')
|
|
909
|
+
], entity_row.prototype, "name", void 0);
|
|
910
|
+
__decorate([
|
|
911
|
+
Struct.field(UInt64)
|
|
912
|
+
], entity_row.prototype, "stats", void 0);
|
|
913
|
+
__decorate([
|
|
914
|
+
Struct.field(coordinates)
|
|
915
|
+
], entity_row.prototype, "coordinates", void 0);
|
|
916
|
+
__decorate([
|
|
917
|
+
Struct.field(UInt32, { optional: true })
|
|
918
|
+
], entity_row.prototype, "hullmass", void 0);
|
|
919
|
+
__decorate([
|
|
920
|
+
Struct.field(UInt32, { optional: true })
|
|
921
|
+
], entity_row.prototype, "capacity", void 0);
|
|
922
|
+
__decorate([
|
|
923
|
+
Struct.field(UInt16, { optional: true })
|
|
924
|
+
], entity_row.prototype, "energy", void 0);
|
|
925
|
+
__decorate([
|
|
926
|
+
Struct.field(UInt32)
|
|
927
|
+
], entity_row.prototype, "cargomass", void 0);
|
|
928
|
+
__decorate([
|
|
929
|
+
Struct.field(movement_stats, { optional: true })
|
|
930
|
+
], entity_row.prototype, "engines", void 0);
|
|
931
|
+
__decorate([
|
|
932
|
+
Struct.field(energy_stats, { optional: true })
|
|
933
|
+
], entity_row.prototype, "generator", void 0);
|
|
934
|
+
__decorate([
|
|
935
|
+
Struct.field(loader_stats, { optional: true })
|
|
936
|
+
], entity_row.prototype, "loaders", void 0);
|
|
937
|
+
__decorate([
|
|
938
|
+
Struct.field(gatherer_stats, { optional: true })
|
|
939
|
+
], entity_row.prototype, "gatherer", void 0);
|
|
940
|
+
__decorate([
|
|
941
|
+
Struct.field(warp_stats, { optional: true })
|
|
942
|
+
], entity_row.prototype, "warp", void 0);
|
|
943
|
+
__decorate([
|
|
944
|
+
Struct.field(crafter_stats, { optional: true })
|
|
945
|
+
], entity_row.prototype, "crafter", void 0);
|
|
946
|
+
__decorate([
|
|
947
|
+
Struct.field(hauler_stats, { optional: true })
|
|
948
|
+
], entity_row.prototype, "hauler", void 0);
|
|
949
|
+
__decorate([
|
|
950
|
+
Struct.field(module_entry, { array: true })
|
|
951
|
+
], entity_row.prototype, "modules", void 0);
|
|
952
|
+
__decorate([
|
|
953
|
+
Struct.field(schedule, { optional: true })
|
|
954
|
+
], entity_row.prototype, "schedule", void 0);
|
|
955
|
+
__decorate([
|
|
956
|
+
Struct.field(UInt16)
|
|
957
|
+
], entity_row.prototype, "item_id", void 0);
|
|
958
|
+
entity_row = __decorate([
|
|
959
|
+
Struct.type('entity_row')
|
|
960
|
+
], entity_row);
|
|
961
|
+
Types.entity_row = entity_row;
|
|
962
|
+
let entity_summary = class entity_summary extends Struct {
|
|
963
|
+
};
|
|
964
|
+
__decorate([
|
|
965
|
+
Struct.field(Name)
|
|
966
|
+
], entity_summary.prototype, "type", void 0);
|
|
967
|
+
__decorate([
|
|
968
|
+
Struct.field(UInt64)
|
|
969
|
+
], entity_summary.prototype, "id", void 0);
|
|
970
|
+
__decorate([
|
|
971
|
+
Struct.field(Name)
|
|
972
|
+
], entity_summary.prototype, "owner", void 0);
|
|
973
|
+
__decorate([
|
|
974
|
+
Struct.field('string')
|
|
975
|
+
], entity_summary.prototype, "entity_name", void 0);
|
|
976
|
+
__decorate([
|
|
977
|
+
Struct.field(coordinates)
|
|
978
|
+
], entity_summary.prototype, "coordinates", void 0);
|
|
979
|
+
__decorate([
|
|
980
|
+
Struct.field('bool')
|
|
981
|
+
], entity_summary.prototype, "is_idle", void 0);
|
|
982
|
+
__decorate([
|
|
983
|
+
Struct.field(UInt32)
|
|
984
|
+
], entity_summary.prototype, "resolved_count", void 0);
|
|
985
|
+
__decorate([
|
|
986
|
+
Struct.field(UInt32)
|
|
987
|
+
], entity_summary.prototype, "pending_count", void 0);
|
|
988
|
+
entity_summary = __decorate([
|
|
989
|
+
Struct.type('entity_summary')
|
|
990
|
+
], entity_summary);
|
|
991
|
+
Types.entity_summary = entity_summary;
|
|
992
|
+
let entity_task_info = class entity_task_info extends Struct {
|
|
993
|
+
};
|
|
994
|
+
__decorate([
|
|
995
|
+
Struct.field(UInt64)
|
|
996
|
+
], entity_task_info.prototype, "entity_id", void 0);
|
|
997
|
+
__decorate([
|
|
998
|
+
Struct.field(Name)
|
|
999
|
+
], entity_task_info.prototype, "entity_type", void 0);
|
|
1000
|
+
__decorate([
|
|
1001
|
+
Struct.field(UInt8)
|
|
1002
|
+
], entity_task_info.prototype, "task_count", void 0);
|
|
1003
|
+
__decorate([
|
|
1004
|
+
Struct.field(TimePoint)
|
|
1005
|
+
], entity_task_info.prototype, "schedule_started", void 0);
|
|
1006
|
+
entity_task_info = __decorate([
|
|
1007
|
+
Struct.type('entity_task_info')
|
|
1008
|
+
], entity_task_info);
|
|
1009
|
+
Types.entity_task_info = entity_task_info;
|
|
1010
|
+
let entitygroup_row = class entitygroup_row extends Struct {
|
|
1011
|
+
};
|
|
1012
|
+
__decorate([
|
|
1013
|
+
Struct.field(UInt64)
|
|
1014
|
+
], entitygroup_row.prototype, "id", void 0);
|
|
1015
|
+
__decorate([
|
|
1016
|
+
Struct.field(entity_ref, { array: true })
|
|
1017
|
+
], entitygroup_row.prototype, "participants", void 0);
|
|
1018
|
+
entitygroup_row = __decorate([
|
|
1019
|
+
Struct.type('entitygroup_row')
|
|
1020
|
+
], entitygroup_row);
|
|
1021
|
+
Types.entitygroup_row = entitygroup_row;
|
|
1022
|
+
let enum_member = class enum_member extends Struct {
|
|
1023
|
+
};
|
|
1024
|
+
__decorate([
|
|
1025
|
+
Struct.field(UInt8)
|
|
1026
|
+
], enum_member.prototype, "value", void 0);
|
|
1027
|
+
__decorate([
|
|
1028
|
+
Struct.field('string')
|
|
1029
|
+
], enum_member.prototype, "name", void 0);
|
|
1030
|
+
enum_member = __decorate([
|
|
1031
|
+
Struct.type('enum_member')
|
|
1032
|
+
], enum_member);
|
|
1033
|
+
Types.enum_member = enum_member;
|
|
1034
|
+
let enum_result = class enum_result extends Struct {
|
|
1035
|
+
};
|
|
1036
|
+
__decorate([
|
|
1037
|
+
Struct.field(enum_member, { array: true })
|
|
1038
|
+
], enum_result.prototype, "members", void 0);
|
|
1039
|
+
enum_result = __decorate([
|
|
1040
|
+
Struct.type('enum_result')
|
|
1041
|
+
], enum_result);
|
|
1042
|
+
Types.enum_result = enum_result;
|
|
1043
|
+
let fixcargomass = class fixcargomass extends Struct {
|
|
1044
|
+
};
|
|
1045
|
+
__decorate([
|
|
1046
|
+
Struct.field(UInt64)
|
|
1047
|
+
], fixcargomass.prototype, "entity_id", void 0);
|
|
1048
|
+
fixcargomass = __decorate([
|
|
1049
|
+
Struct.type('fixcargomass')
|
|
1050
|
+
], fixcargomass);
|
|
1051
|
+
Types.fixcargomass = fixcargomass;
|
|
1052
|
+
let gather = class gather extends Struct {
|
|
1053
|
+
};
|
|
1054
|
+
__decorate([
|
|
1055
|
+
Struct.field(UInt64)
|
|
1056
|
+
], gather.prototype, "source_id", void 0);
|
|
1057
|
+
__decorate([
|
|
1058
|
+
Struct.field(UInt64)
|
|
1059
|
+
], gather.prototype, "destination_id", void 0);
|
|
1060
|
+
__decorate([
|
|
1061
|
+
Struct.field(UInt16)
|
|
1062
|
+
], gather.prototype, "stratum", void 0);
|
|
1063
|
+
__decorate([
|
|
1064
|
+
Struct.field(UInt32)
|
|
1065
|
+
], gather.prototype, "quantity", void 0);
|
|
1066
|
+
gather = __decorate([
|
|
1067
|
+
Struct.type('gather')
|
|
1068
|
+
], gather);
|
|
1069
|
+
Types.gather = gather;
|
|
1070
|
+
let getconfig = class getconfig extends Struct {
|
|
1071
|
+
};
|
|
1072
|
+
getconfig = __decorate([
|
|
1073
|
+
Struct.type('getconfig')
|
|
1074
|
+
], getconfig);
|
|
1075
|
+
Types.getconfig = getconfig;
|
|
1076
|
+
let geteligible = class geteligible extends Struct {
|
|
1077
|
+
};
|
|
1078
|
+
__decorate([
|
|
1079
|
+
Struct.field(coordinates)
|
|
1080
|
+
], geteligible.prototype, "coords", void 0);
|
|
1081
|
+
__decorate([
|
|
1082
|
+
Struct.field(UInt16)
|
|
1083
|
+
], geteligible.prototype, "stratum", void 0);
|
|
1084
|
+
geteligible = __decorate([
|
|
1085
|
+
Struct.type('geteligible')
|
|
1086
|
+
], geteligible);
|
|
1087
|
+
Types.geteligible = geteligible;
|
|
1088
|
+
let getentities = class getentities extends Struct {
|
|
1089
|
+
};
|
|
1090
|
+
__decorate([
|
|
1091
|
+
Struct.field(Name)
|
|
1092
|
+
], getentities.prototype, "owner", void 0);
|
|
1093
|
+
__decorate([
|
|
1094
|
+
Struct.field(Name, { optional: true })
|
|
1095
|
+
], getentities.prototype, "entity_type", void 0);
|
|
1096
|
+
getentities = __decorate([
|
|
1097
|
+
Struct.type('getentities')
|
|
1098
|
+
], getentities);
|
|
1099
|
+
Types.getentities = getentities;
|
|
1100
|
+
let getentity = class getentity extends Struct {
|
|
1101
|
+
};
|
|
1102
|
+
__decorate([
|
|
1103
|
+
Struct.field(UInt64)
|
|
1104
|
+
], getentity.prototype, "entity_id", void 0);
|
|
1105
|
+
getentity = __decorate([
|
|
1106
|
+
Struct.type('getentity')
|
|
1107
|
+
], getentity);
|
|
1108
|
+
Types.getentity = getentity;
|
|
1109
|
+
let getitemdata = class getitemdata extends Struct {
|
|
1110
|
+
};
|
|
1111
|
+
getitemdata = __decorate([
|
|
1112
|
+
Struct.type('getitemdata')
|
|
1113
|
+
], getitemdata);
|
|
1114
|
+
Types.getitemdata = getitemdata;
|
|
1115
|
+
let getitemids = class getitemids extends Struct {
|
|
1116
|
+
};
|
|
1117
|
+
getitemids = __decorate([
|
|
1118
|
+
Struct.type('getitemids')
|
|
1119
|
+
], getitemids);
|
|
1120
|
+
Types.getitemids = getitemids;
|
|
1121
|
+
let getitems = class getitems extends Struct {
|
|
1122
|
+
};
|
|
1123
|
+
getitems = __decorate([
|
|
1124
|
+
Struct.type('getitems')
|
|
1125
|
+
], getitems);
|
|
1126
|
+
Types.getitems = getitems;
|
|
1127
|
+
let getitemtypes = class getitemtypes extends Struct {
|
|
1128
|
+
};
|
|
1129
|
+
getitemtypes = __decorate([
|
|
1130
|
+
Struct.type('getitemtypes')
|
|
1131
|
+
], getitemtypes);
|
|
1132
|
+
Types.getitemtypes = getitemtypes;
|
|
1133
|
+
let getlocation = class getlocation extends Struct {
|
|
1134
|
+
};
|
|
1135
|
+
__decorate([
|
|
1136
|
+
Struct.field(Int64)
|
|
1137
|
+
], getlocation.prototype, "x", void 0);
|
|
1138
|
+
__decorate([
|
|
1139
|
+
Struct.field(Int64)
|
|
1140
|
+
], getlocation.prototype, "y", void 0);
|
|
1141
|
+
getlocation = __decorate([
|
|
1142
|
+
Struct.type('getlocation')
|
|
1143
|
+
], getlocation);
|
|
1144
|
+
Types.getlocation = getlocation;
|
|
1145
|
+
let getlocdata = class getlocdata extends Struct {
|
|
1146
|
+
};
|
|
1147
|
+
__decorate([
|
|
1148
|
+
Struct.field(Int64)
|
|
1149
|
+
], getlocdata.prototype, "x", void 0);
|
|
1150
|
+
__decorate([
|
|
1151
|
+
Struct.field(Int64)
|
|
1152
|
+
], getlocdata.prototype, "y", void 0);
|
|
1153
|
+
getlocdata = __decorate([
|
|
1154
|
+
Struct.type('getlocdata')
|
|
1155
|
+
], getlocdata);
|
|
1156
|
+
Types.getlocdata = getlocdata;
|
|
1157
|
+
let getmodtypes = class getmodtypes extends Struct {
|
|
1158
|
+
};
|
|
1159
|
+
getmodtypes = __decorate([
|
|
1160
|
+
Struct.type('getmodtypes')
|
|
1161
|
+
], getmodtypes);
|
|
1162
|
+
Types.getmodtypes = getmodtypes;
|
|
1163
|
+
let getmodules = class getmodules extends Struct {
|
|
1164
|
+
};
|
|
1165
|
+
getmodules = __decorate([
|
|
1166
|
+
Struct.type('getmodules')
|
|
1167
|
+
], getmodules);
|
|
1168
|
+
Types.getmodules = getmodules;
|
|
1169
|
+
let getnearby = class getnearby extends Struct {
|
|
1170
|
+
};
|
|
1171
|
+
__decorate([
|
|
1172
|
+
Struct.field(UInt64)
|
|
1173
|
+
], getnearby.prototype, "entity_id", void 0);
|
|
1174
|
+
__decorate([
|
|
1175
|
+
Struct.field('bool')
|
|
1176
|
+
], getnearby.prototype, "recharge", void 0);
|
|
1177
|
+
getnearby = __decorate([
|
|
1178
|
+
Struct.type('getnearby')
|
|
1179
|
+
], getnearby);
|
|
1180
|
+
Types.getnearby = getnearby;
|
|
1181
|
+
let getnftinfo = class getnftinfo extends Struct {
|
|
1182
|
+
};
|
|
1183
|
+
getnftinfo = __decorate([
|
|
1184
|
+
Struct.type('getnftinfo')
|
|
1185
|
+
], getnftinfo);
|
|
1186
|
+
Types.getnftinfo = getnftinfo;
|
|
1187
|
+
let getplayer = class getplayer extends Struct {
|
|
1188
|
+
};
|
|
1189
|
+
__decorate([
|
|
1190
|
+
Struct.field(Name)
|
|
1191
|
+
], getplayer.prototype, "account", void 0);
|
|
1192
|
+
getplayer = __decorate([
|
|
1193
|
+
Struct.type('getplayer')
|
|
1194
|
+
], getplayer);
|
|
1195
|
+
Types.getplayer = getplayer;
|
|
1196
|
+
let getrecipe = class getrecipe extends Struct {
|
|
1197
|
+
};
|
|
1198
|
+
__decorate([
|
|
1199
|
+
Struct.field(UInt16)
|
|
1200
|
+
], getrecipe.prototype, "output_item_id", void 0);
|
|
1201
|
+
getrecipe = __decorate([
|
|
1202
|
+
Struct.type('getrecipe')
|
|
1203
|
+
], getrecipe);
|
|
1204
|
+
Types.getrecipe = getrecipe;
|
|
1205
|
+
let getrecipes = class getrecipes extends Struct {
|
|
1206
|
+
};
|
|
1207
|
+
__decorate([
|
|
1208
|
+
Struct.field(UInt16)
|
|
1209
|
+
], getrecipes.prototype, "lower_bound", void 0);
|
|
1210
|
+
__decorate([
|
|
1211
|
+
Struct.field(UInt8)
|
|
1212
|
+
], getrecipes.prototype, "limit", void 0);
|
|
1213
|
+
getrecipes = __decorate([
|
|
1214
|
+
Struct.type('getrecipes')
|
|
1215
|
+
], getrecipes);
|
|
1216
|
+
Types.getrecipes = getrecipes;
|
|
1217
|
+
let getrescats = class getrescats extends Struct {
|
|
1218
|
+
};
|
|
1219
|
+
getrescats = __decorate([
|
|
1220
|
+
Struct.type('getrescats')
|
|
1221
|
+
], getrescats);
|
|
1222
|
+
Types.getrescats = getrescats;
|
|
1223
|
+
let getreserves = class getreserves extends Struct {
|
|
1224
|
+
};
|
|
1225
|
+
__decorate([
|
|
1226
|
+
Struct.field(Int64)
|
|
1227
|
+
], getreserves.prototype, "x", void 0);
|
|
1228
|
+
__decorate([
|
|
1229
|
+
Struct.field(Int64)
|
|
1230
|
+
], getreserves.prototype, "y", void 0);
|
|
1231
|
+
getreserves = __decorate([
|
|
1232
|
+
Struct.type('getreserves')
|
|
1233
|
+
], getreserves);
|
|
1234
|
+
Types.getreserves = getreserves;
|
|
1235
|
+
let getresources = class getresources extends Struct {
|
|
1236
|
+
};
|
|
1237
|
+
getresources = __decorate([
|
|
1238
|
+
Struct.type('getresources')
|
|
1239
|
+
], getresources);
|
|
1240
|
+
Types.getresources = getresources;
|
|
1241
|
+
let getslots = class getslots extends Struct {
|
|
1242
|
+
};
|
|
1243
|
+
getslots = __decorate([
|
|
1244
|
+
Struct.type('getslots')
|
|
1245
|
+
], getslots);
|
|
1246
|
+
Types.getslots = getslots;
|
|
1247
|
+
let getstratum = class getstratum extends Struct {
|
|
1248
|
+
};
|
|
1249
|
+
__decorate([
|
|
1250
|
+
Struct.field(Int64)
|
|
1251
|
+
], getstratum.prototype, "x", void 0);
|
|
1252
|
+
__decorate([
|
|
1253
|
+
Struct.field(Int64)
|
|
1254
|
+
], getstratum.prototype, "y", void 0);
|
|
1255
|
+
__decorate([
|
|
1256
|
+
Struct.field(UInt16)
|
|
1257
|
+
], getstratum.prototype, "stratum", void 0);
|
|
1258
|
+
getstratum = __decorate([
|
|
1259
|
+
Struct.type('getstratum')
|
|
1260
|
+
], getstratum);
|
|
1261
|
+
Types.getstratum = getstratum;
|
|
1262
|
+
let getsummaries = class getsummaries extends Struct {
|
|
1263
|
+
};
|
|
1264
|
+
__decorate([
|
|
1265
|
+
Struct.field(Name)
|
|
1266
|
+
], getsummaries.prototype, "owner", void 0);
|
|
1267
|
+
__decorate([
|
|
1268
|
+
Struct.field(Name, { optional: true })
|
|
1269
|
+
], getsummaries.prototype, "entity_type", void 0);
|
|
1270
|
+
getsummaries = __decorate([
|
|
1271
|
+
Struct.type('getsummaries')
|
|
1272
|
+
], getsummaries);
|
|
1273
|
+
Types.getsummaries = getsummaries;
|
|
1274
|
+
let grouptravel = class grouptravel extends Struct {
|
|
1275
|
+
};
|
|
1276
|
+
__decorate([
|
|
1277
|
+
Struct.field(entity_ref, { array: true })
|
|
1278
|
+
], grouptravel.prototype, "entities", void 0);
|
|
1279
|
+
__decorate([
|
|
1280
|
+
Struct.field(Int64)
|
|
1281
|
+
], grouptravel.prototype, "x", void 0);
|
|
1282
|
+
__decorate([
|
|
1283
|
+
Struct.field(Int64)
|
|
1284
|
+
], grouptravel.prototype, "y", void 0);
|
|
1285
|
+
__decorate([
|
|
1286
|
+
Struct.field('bool')
|
|
1287
|
+
], grouptravel.prototype, "recharge", void 0);
|
|
1288
|
+
grouptravel = __decorate([
|
|
1289
|
+
Struct.type('grouptravel')
|
|
1290
|
+
], grouptravel);
|
|
1291
|
+
Types.grouptravel = grouptravel;
|
|
1292
|
+
let hash = class hash extends Struct {
|
|
1293
|
+
};
|
|
1294
|
+
__decorate([
|
|
1295
|
+
Struct.field('string')
|
|
1296
|
+
], hash.prototype, "value", void 0);
|
|
1297
|
+
hash = __decorate([
|
|
1298
|
+
Struct.type('hash')
|
|
1299
|
+
], hash);
|
|
1300
|
+
Types.hash = hash;
|
|
1301
|
+
let hash512 = class hash512 extends Struct {
|
|
1302
|
+
};
|
|
1303
|
+
__decorate([
|
|
1304
|
+
Struct.field('string')
|
|
1305
|
+
], hash512.prototype, "value", void 0);
|
|
1306
|
+
hash512 = __decorate([
|
|
1307
|
+
Struct.type('hash512')
|
|
1308
|
+
], hash512);
|
|
1309
|
+
Types.hash512 = hash512;
|
|
1310
|
+
let initialize = class initialize extends Struct {
|
|
1311
|
+
};
|
|
1312
|
+
__decorate([
|
|
1313
|
+
Struct.field(Checksum256)
|
|
1314
|
+
], initialize.prototype, "seed", void 0);
|
|
1315
|
+
initialize = __decorate([
|
|
1316
|
+
Struct.type('initialize')
|
|
1317
|
+
], initialize);
|
|
1318
|
+
Types.initialize = initialize;
|
|
1319
|
+
let item_id_pair = class item_id_pair extends Struct {
|
|
1320
|
+
};
|
|
1321
|
+
__decorate([
|
|
1322
|
+
Struct.field(UInt16)
|
|
1323
|
+
], item_id_pair.prototype, "id", void 0);
|
|
1324
|
+
__decorate([
|
|
1325
|
+
Struct.field('string')
|
|
1326
|
+
], item_id_pair.prototype, "name", void 0);
|
|
1327
|
+
item_id_pair = __decorate([
|
|
1328
|
+
Struct.type('item_id_pair')
|
|
1329
|
+
], item_id_pair);
|
|
1330
|
+
Types.item_id_pair = item_id_pair;
|
|
1331
|
+
let item_ids_result = class item_ids_result extends Struct {
|
|
1332
|
+
};
|
|
1333
|
+
__decorate([
|
|
1334
|
+
Struct.field(item_id_pair, { array: true })
|
|
1335
|
+
], item_ids_result.prototype, "items", void 0);
|
|
1336
|
+
item_ids_result = __decorate([
|
|
1337
|
+
Struct.type('item_ids_result')
|
|
1338
|
+
], item_ids_result);
|
|
1339
|
+
Types.item_ids_result = item_ids_result;
|
|
1340
|
+
let recipe_input = class recipe_input extends Struct {
|
|
1341
|
+
};
|
|
1342
|
+
__decorate([
|
|
1343
|
+
Struct.field(UInt16)
|
|
1344
|
+
], recipe_input.prototype, "item_id", void 0);
|
|
1345
|
+
__decorate([
|
|
1346
|
+
Struct.field(UInt8)
|
|
1347
|
+
], recipe_input.prototype, "category", void 0);
|
|
1348
|
+
__decorate([
|
|
1349
|
+
Struct.field(UInt8)
|
|
1350
|
+
], recipe_input.prototype, "tier", void 0);
|
|
1351
|
+
__decorate([
|
|
1352
|
+
Struct.field(UInt32)
|
|
1353
|
+
], recipe_input.prototype, "quantity", void 0);
|
|
1354
|
+
recipe_input = __decorate([
|
|
1355
|
+
Struct.type('recipe_input')
|
|
1356
|
+
], recipe_input);
|
|
1357
|
+
Types.recipe_input = recipe_input;
|
|
1358
|
+
let stat_source = class stat_source extends Struct {
|
|
1359
|
+
};
|
|
1360
|
+
__decorate([
|
|
1361
|
+
Struct.field(UInt8)
|
|
1362
|
+
], stat_source.prototype, "input_index", void 0);
|
|
1363
|
+
__decorate([
|
|
1364
|
+
Struct.field(UInt8)
|
|
1365
|
+
], stat_source.prototype, "input_stat_index", void 0);
|
|
1366
|
+
stat_source = __decorate([
|
|
1367
|
+
Struct.type('stat_source')
|
|
1368
|
+
], stat_source);
|
|
1369
|
+
Types.stat_source = stat_source;
|
|
1370
|
+
let stat_slot_response = class stat_slot_response extends Struct {
|
|
1371
|
+
};
|
|
1372
|
+
__decorate([
|
|
1373
|
+
Struct.field(stat_source, { array: true })
|
|
1374
|
+
], stat_slot_response.prototype, "sources", void 0);
|
|
1375
|
+
stat_slot_response = __decorate([
|
|
1376
|
+
Struct.type('stat_slot_response')
|
|
1377
|
+
], stat_slot_response);
|
|
1378
|
+
Types.stat_slot_response = stat_slot_response;
|
|
1379
|
+
let recipe_item_info = class recipe_item_info extends Struct {
|
|
1380
|
+
};
|
|
1381
|
+
__decorate([
|
|
1382
|
+
Struct.field(UInt16)
|
|
1383
|
+
], recipe_item_info.prototype, "id", void 0);
|
|
1384
|
+
__decorate([
|
|
1385
|
+
Struct.field(UInt32)
|
|
1386
|
+
], recipe_item_info.prototype, "mass", void 0);
|
|
1387
|
+
recipe_item_info = __decorate([
|
|
1388
|
+
Struct.type('recipe_item_info')
|
|
1389
|
+
], recipe_item_info);
|
|
1390
|
+
Types.recipe_item_info = recipe_item_info;
|
|
1391
|
+
let recipe_response = class recipe_response extends Struct {
|
|
1392
|
+
};
|
|
1393
|
+
__decorate([
|
|
1394
|
+
Struct.field(UInt16)
|
|
1395
|
+
], recipe_response.prototype, "output_item_id", void 0);
|
|
1396
|
+
__decorate([
|
|
1397
|
+
Struct.field(UInt32)
|
|
1398
|
+
], recipe_response.prototype, "output_mass", void 0);
|
|
1399
|
+
__decorate([
|
|
1400
|
+
Struct.field(recipe_input, { array: true })
|
|
1401
|
+
], recipe_response.prototype, "inputs", void 0);
|
|
1402
|
+
__decorate([
|
|
1403
|
+
Struct.field(stat_slot_response, { array: true })
|
|
1404
|
+
], recipe_response.prototype, "stat_slots", void 0);
|
|
1405
|
+
__decorate([
|
|
1406
|
+
Struct.field(Bytes)
|
|
1407
|
+
], recipe_response.prototype, "blend_weights", void 0);
|
|
1408
|
+
__decorate([
|
|
1409
|
+
Struct.field(recipe_item_info)
|
|
1410
|
+
], recipe_response.prototype, "output_item", void 0);
|
|
1411
|
+
__decorate([
|
|
1412
|
+
Struct.field(recipe_item_info, { array: true })
|
|
1413
|
+
], recipe_response.prototype, "input_items", void 0);
|
|
1414
|
+
recipe_response = __decorate([
|
|
1415
|
+
Struct.type('recipe_response')
|
|
1416
|
+
], recipe_response);
|
|
1417
|
+
Types.recipe_response = recipe_response;
|
|
1418
|
+
let recipes_result = class recipes_result extends Struct {
|
|
1419
|
+
};
|
|
1420
|
+
__decorate([
|
|
1421
|
+
Struct.field(recipe_response, { array: true })
|
|
1422
|
+
], recipes_result.prototype, "recipes", void 0);
|
|
1423
|
+
recipes_result = __decorate([
|
|
1424
|
+
Struct.type('recipes_result')
|
|
1425
|
+
], recipes_result);
|
|
1426
|
+
Types.recipes_result = recipes_result;
|
|
1427
|
+
let itemdata_result = class itemdata_result extends Struct {
|
|
1428
|
+
};
|
|
1429
|
+
__decorate([
|
|
1430
|
+
Struct.field(item_def, { array: true })
|
|
1431
|
+
], itemdata_result.prototype, "items", void 0);
|
|
1432
|
+
__decorate([
|
|
1433
|
+
Struct.field(recipes_result)
|
|
1434
|
+
], itemdata_result.prototype, "recipes", void 0);
|
|
1435
|
+
itemdata_result = __decorate([
|
|
1436
|
+
Struct.type('itemdata_result')
|
|
1437
|
+
], itemdata_result);
|
|
1438
|
+
Types.itemdata_result = itemdata_result;
|
|
1439
|
+
let items_info = class items_info extends Struct {
|
|
1440
|
+
};
|
|
1441
|
+
__decorate([
|
|
1442
|
+
Struct.field(item_def, { array: true })
|
|
1443
|
+
], items_info.prototype, "items", void 0);
|
|
1444
|
+
items_info = __decorate([
|
|
1445
|
+
Struct.type('items_info')
|
|
1446
|
+
], items_info);
|
|
1447
|
+
Types.items_info = items_info;
|
|
1448
|
+
let join = class join extends Struct {
|
|
1449
|
+
};
|
|
1450
|
+
__decorate([
|
|
1451
|
+
Struct.field(Name)
|
|
1452
|
+
], join.prototype, "account", void 0);
|
|
1453
|
+
join = __decorate([
|
|
1454
|
+
Struct.type('join')
|
|
1455
|
+
], join);
|
|
1456
|
+
Types.join = join;
|
|
1457
|
+
let location_static = class location_static extends Struct {
|
|
1458
|
+
};
|
|
1459
|
+
__decorate([
|
|
1460
|
+
Struct.field(coordinates)
|
|
1461
|
+
], location_static.prototype, "coords", void 0);
|
|
1462
|
+
__decorate([
|
|
1463
|
+
Struct.field(UInt8)
|
|
1464
|
+
], location_static.prototype, "type", void 0);
|
|
1465
|
+
__decorate([
|
|
1466
|
+
Struct.field(UInt8)
|
|
1467
|
+
], location_static.prototype, "subtype", void 0);
|
|
1468
|
+
__decorate([
|
|
1469
|
+
Struct.field(UInt8)
|
|
1470
|
+
], location_static.prototype, "seed0", void 0);
|
|
1471
|
+
__decorate([
|
|
1472
|
+
Struct.field(UInt8)
|
|
1473
|
+
], location_static.prototype, "seed1", void 0);
|
|
1474
|
+
location_static = __decorate([
|
|
1475
|
+
Struct.type('location_static')
|
|
1476
|
+
], location_static);
|
|
1477
|
+
Types.location_static = location_static;
|
|
1478
|
+
let location_derived = class location_derived extends Struct {
|
|
1479
|
+
};
|
|
1480
|
+
__decorate([
|
|
1481
|
+
Struct.field(location_static)
|
|
1482
|
+
], location_derived.prototype, "static_props", void 0);
|
|
1483
|
+
__decorate([
|
|
1484
|
+
Struct.field(UInt16)
|
|
1485
|
+
], location_derived.prototype, "size", void 0);
|
|
1486
|
+
location_derived = __decorate([
|
|
1487
|
+
Struct.type('location_derived')
|
|
1488
|
+
], location_derived);
|
|
1489
|
+
Types.location_derived = location_derived;
|
|
1490
|
+
let location_info = class location_info extends Struct {
|
|
1491
|
+
};
|
|
1492
|
+
__decorate([
|
|
1493
|
+
Struct.field(coordinates)
|
|
1494
|
+
], location_info.prototype, "coords", void 0);
|
|
1495
|
+
__decorate([
|
|
1496
|
+
Struct.field('bool')
|
|
1497
|
+
], location_info.prototype, "is_system", void 0);
|
|
1498
|
+
location_info = __decorate([
|
|
1499
|
+
Struct.type('location_info')
|
|
1500
|
+
], location_info);
|
|
1501
|
+
Types.location_info = location_info;
|
|
1502
|
+
let module_info = class module_info extends Struct {
|
|
1503
|
+
};
|
|
1504
|
+
__decorate([
|
|
1505
|
+
Struct.field(UInt16)
|
|
1506
|
+
], module_info.prototype, "id", void 0);
|
|
1507
|
+
__decorate([
|
|
1508
|
+
Struct.field(UInt32)
|
|
1509
|
+
], module_info.prototype, "mass", void 0);
|
|
1510
|
+
__decorate([
|
|
1511
|
+
Struct.field(UInt8)
|
|
1512
|
+
], module_info.prototype, "module_type", void 0);
|
|
1513
|
+
__decorate([
|
|
1514
|
+
Struct.field(UInt8)
|
|
1515
|
+
], module_info.prototype, "tier", void 0);
|
|
1516
|
+
module_info = __decorate([
|
|
1517
|
+
Struct.type('module_info')
|
|
1518
|
+
], module_info);
|
|
1519
|
+
Types.module_info = module_info;
|
|
1520
|
+
let modules_result = class modules_result extends Struct {
|
|
1521
|
+
};
|
|
1522
|
+
__decorate([
|
|
1523
|
+
Struct.field(module_info, { array: true })
|
|
1524
|
+
], modules_result.prototype, "modules", void 0);
|
|
1525
|
+
modules_result = __decorate([
|
|
1526
|
+
Struct.type('modules_result')
|
|
1527
|
+
], modules_result);
|
|
1528
|
+
Types.modules_result = modules_result;
|
|
1529
|
+
let nearby_system = class nearby_system extends Struct {
|
|
1530
|
+
};
|
|
1531
|
+
__decorate([
|
|
1532
|
+
Struct.field(UInt64)
|
|
1533
|
+
], nearby_system.prototype, "distance", void 0);
|
|
1534
|
+
__decorate([
|
|
1535
|
+
Struct.field(UInt64)
|
|
1536
|
+
], nearby_system.prototype, "energy_cost", void 0);
|
|
1537
|
+
__decorate([
|
|
1538
|
+
Struct.field(UInt32)
|
|
1539
|
+
], nearby_system.prototype, "flight_time", void 0);
|
|
1540
|
+
__decorate([
|
|
1541
|
+
Struct.field(location_info)
|
|
1542
|
+
], nearby_system.prototype, "location", void 0);
|
|
1543
|
+
nearby_system = __decorate([
|
|
1544
|
+
Struct.type('nearby_system')
|
|
1545
|
+
], nearby_system);
|
|
1546
|
+
Types.nearby_system = nearby_system;
|
|
1547
|
+
let nearby_info = class nearby_info extends Struct {
|
|
1548
|
+
};
|
|
1549
|
+
__decorate([
|
|
1550
|
+
Struct.field('bool')
|
|
1551
|
+
], nearby_info.prototype, "can_travel", void 0);
|
|
1552
|
+
__decorate([
|
|
1553
|
+
Struct.field(entity_current_state)
|
|
1554
|
+
], nearby_info.prototype, "current", void 0);
|
|
1555
|
+
__decorate([
|
|
1556
|
+
Struct.field(entity_current_state)
|
|
1557
|
+
], nearby_info.prototype, "projected", void 0);
|
|
1558
|
+
__decorate([
|
|
1559
|
+
Struct.field(UInt16)
|
|
1560
|
+
], nearby_info.prototype, "max_energy", void 0);
|
|
1561
|
+
__decorate([
|
|
1562
|
+
Struct.field(nearby_system, { array: true })
|
|
1563
|
+
], nearby_info.prototype, "systems", void 0);
|
|
1564
|
+
nearby_info = __decorate([
|
|
1565
|
+
Struct.type('nearby_info')
|
|
1566
|
+
], nearby_info);
|
|
1567
|
+
Types.nearby_info = nearby_info;
|
|
1568
|
+
let schema_field = class schema_field extends Struct {
|
|
1569
|
+
};
|
|
1570
|
+
__decorate([
|
|
1571
|
+
Struct.field('string')
|
|
1572
|
+
], schema_field.prototype, "name", void 0);
|
|
1573
|
+
__decorate([
|
|
1574
|
+
Struct.field('string')
|
|
1575
|
+
], schema_field.prototype, "field_type", void 0);
|
|
1576
|
+
schema_field = __decorate([
|
|
1577
|
+
Struct.type('schema_field')
|
|
1578
|
+
], schema_field);
|
|
1579
|
+
Types.schema_field = schema_field;
|
|
1580
|
+
let nft_schema_def = class nft_schema_def extends Struct {
|
|
1581
|
+
};
|
|
1582
|
+
__decorate([
|
|
1583
|
+
Struct.field(Name)
|
|
1584
|
+
], nft_schema_def.prototype, "schema_name", void 0);
|
|
1585
|
+
__decorate([
|
|
1586
|
+
Struct.field(schema_field, { array: true })
|
|
1587
|
+
], nft_schema_def.prototype, "fields", void 0);
|
|
1588
|
+
nft_schema_def = __decorate([
|
|
1589
|
+
Struct.type('nft_schema_def')
|
|
1590
|
+
], nft_schema_def);
|
|
1591
|
+
Types.nft_schema_def = nft_schema_def;
|
|
1592
|
+
let nft_template_def = class nft_template_def extends Struct {
|
|
1593
|
+
};
|
|
1594
|
+
__decorate([
|
|
1595
|
+
Struct.field(UInt16)
|
|
1596
|
+
], nft_template_def.prototype, "item_id", void 0);
|
|
1597
|
+
__decorate([
|
|
1598
|
+
Struct.field(Name)
|
|
1599
|
+
], nft_template_def.prototype, "schema_name", void 0);
|
|
1600
|
+
nft_template_def = __decorate([
|
|
1601
|
+
Struct.type('nft_template_def')
|
|
1602
|
+
], nft_template_def);
|
|
1603
|
+
Types.nft_template_def = nft_template_def;
|
|
1604
|
+
let nftconfig_row = class nftconfig_row extends Struct {
|
|
1605
|
+
};
|
|
1606
|
+
__decorate([
|
|
1607
|
+
Struct.field(UInt16)
|
|
1608
|
+
], nftconfig_row.prototype, "item_id", void 0);
|
|
1609
|
+
__decorate([
|
|
1610
|
+
Struct.field(Int32)
|
|
1611
|
+
], nftconfig_row.prototype, "template_id", void 0);
|
|
1612
|
+
__decorate([
|
|
1613
|
+
Struct.field(Name)
|
|
1614
|
+
], nftconfig_row.prototype, "schema_name", void 0);
|
|
1615
|
+
nftconfig_row = __decorate([
|
|
1616
|
+
Struct.type('nftconfig_row')
|
|
1617
|
+
], nftconfig_row);
|
|
1618
|
+
Types.nftconfig_row = nftconfig_row;
|
|
1619
|
+
let nftinfo_result = class nftinfo_result extends Struct {
|
|
1620
|
+
};
|
|
1621
|
+
__decorate([
|
|
1622
|
+
Struct.field(nft_schema_def, { array: true })
|
|
1623
|
+
], nftinfo_result.prototype, "schemas", void 0);
|
|
1624
|
+
__decorate([
|
|
1625
|
+
Struct.field(nft_template_def, { array: true })
|
|
1626
|
+
], nftinfo_result.prototype, "templates", void 0);
|
|
1627
|
+
nftinfo_result = __decorate([
|
|
1628
|
+
Struct.type('nftinfo_result')
|
|
1629
|
+
], nftinfo_result);
|
|
1630
|
+
Types.nftinfo_result = nftinfo_result;
|
|
1631
|
+
let task_event = class task_event extends Struct {
|
|
1632
|
+
};
|
|
1633
|
+
__decorate([
|
|
1634
|
+
Struct.field(UInt8)
|
|
1635
|
+
], task_event.prototype, "event_type", void 0);
|
|
1636
|
+
__decorate([
|
|
1637
|
+
Struct.field(Name)
|
|
1638
|
+
], task_event.prototype, "owner", void 0);
|
|
1639
|
+
__decorate([
|
|
1640
|
+
Struct.field(Name)
|
|
1641
|
+
], task_event.prototype, "entity_type", void 0);
|
|
1642
|
+
__decorate([
|
|
1643
|
+
Struct.field(UInt64)
|
|
1644
|
+
], task_event.prototype, "entity_id", void 0);
|
|
1645
|
+
__decorate([
|
|
1646
|
+
Struct.field(UInt8)
|
|
1647
|
+
], task_event.prototype, "task_index", void 0);
|
|
1648
|
+
__decorate([
|
|
1649
|
+
Struct.field(task)
|
|
1650
|
+
], task_event.prototype, "task", void 0);
|
|
1651
|
+
__decorate([
|
|
1652
|
+
Struct.field(TimePoint)
|
|
1653
|
+
], task_event.prototype, "starts_at", void 0);
|
|
1654
|
+
__decorate([
|
|
1655
|
+
Struct.field(TimePoint)
|
|
1656
|
+
], task_event.prototype, "completes_at", void 0);
|
|
1657
|
+
__decorate([
|
|
1658
|
+
Struct.field(UInt16, { optional: true })
|
|
1659
|
+
], task_event.prototype, "new_energy", void 0);
|
|
1660
|
+
task_event = __decorate([
|
|
1661
|
+
Struct.type('task_event')
|
|
1662
|
+
], task_event);
|
|
1663
|
+
Types.task_event = task_event;
|
|
1664
|
+
let notify = class notify extends Struct {
|
|
1665
|
+
};
|
|
1666
|
+
__decorate([
|
|
1667
|
+
Struct.field(task_event)
|
|
1668
|
+
], notify.prototype, "event", void 0);
|
|
1669
|
+
notify = __decorate([
|
|
1670
|
+
Struct.type('notify')
|
|
1671
|
+
], notify);
|
|
1672
|
+
Types.notify = notify;
|
|
1673
|
+
let player_info = class player_info extends Struct {
|
|
1674
|
+
};
|
|
1675
|
+
__decorate([
|
|
1676
|
+
Struct.field(Name)
|
|
1677
|
+
], player_info.prototype, "owner", void 0);
|
|
1678
|
+
__decorate([
|
|
1679
|
+
Struct.field('bool')
|
|
1680
|
+
], player_info.prototype, "is_player", void 0);
|
|
1681
|
+
__decorate([
|
|
1682
|
+
Struct.field('string')
|
|
1683
|
+
], player_info.prototype, "company_name", void 0);
|
|
1684
|
+
player_info = __decorate([
|
|
1685
|
+
Struct.type('player_info')
|
|
1686
|
+
], player_info);
|
|
1687
|
+
Types.player_info = player_info;
|
|
1688
|
+
let player_row = class player_row extends Struct {
|
|
1689
|
+
};
|
|
1690
|
+
__decorate([
|
|
1691
|
+
Struct.field(Name)
|
|
1692
|
+
], player_row.prototype, "owner", void 0);
|
|
1693
|
+
player_row = __decorate([
|
|
1694
|
+
Struct.type('player_row')
|
|
1695
|
+
], player_row);
|
|
1696
|
+
Types.player_row = player_row;
|
|
1697
|
+
let recharge = class recharge extends Struct {
|
|
1698
|
+
};
|
|
1699
|
+
__decorate([
|
|
1700
|
+
Struct.field(UInt64)
|
|
1701
|
+
], recharge.prototype, "id", void 0);
|
|
1702
|
+
recharge = __decorate([
|
|
1703
|
+
Struct.type('recharge')
|
|
1704
|
+
], recharge);
|
|
1705
|
+
Types.recharge = recharge;
|
|
1706
|
+
let refrshentity = class refrshentity extends Struct {
|
|
1707
|
+
};
|
|
1708
|
+
__decorate([
|
|
1709
|
+
Struct.field(UInt64)
|
|
1710
|
+
], refrshentity.prototype, "entity_id", void 0);
|
|
1711
|
+
refrshentity = __decorate([
|
|
1712
|
+
Struct.type('refrshentity')
|
|
1713
|
+
], refrshentity);
|
|
1714
|
+
Types.refrshentity = refrshentity;
|
|
1715
|
+
let reserve_row = class reserve_row extends Struct {
|
|
1716
|
+
};
|
|
1717
|
+
__decorate([
|
|
1718
|
+
Struct.field(UInt64)
|
|
1719
|
+
], reserve_row.prototype, "id", void 0);
|
|
1720
|
+
__decorate([
|
|
1721
|
+
Struct.field(UInt64)
|
|
1722
|
+
], reserve_row.prototype, "coord_id", void 0);
|
|
1723
|
+
__decorate([
|
|
1724
|
+
Struct.field(UInt16)
|
|
1725
|
+
], reserve_row.prototype, "stratum", void 0);
|
|
1726
|
+
__decorate([
|
|
1727
|
+
Struct.field(UInt32)
|
|
1728
|
+
], reserve_row.prototype, "remaining", void 0);
|
|
1729
|
+
reserve_row = __decorate([
|
|
1730
|
+
Struct.type('reserve_row')
|
|
1731
|
+
], reserve_row);
|
|
1732
|
+
Types.reserve_row = reserve_row;
|
|
1733
|
+
let resolve = class resolve extends Struct {
|
|
1734
|
+
};
|
|
1735
|
+
__decorate([
|
|
1736
|
+
Struct.field(UInt64)
|
|
1737
|
+
], resolve.prototype, "id", void 0);
|
|
1738
|
+
__decorate([
|
|
1739
|
+
Struct.field(UInt64, { optional: true })
|
|
1740
|
+
], resolve.prototype, "count", void 0);
|
|
1741
|
+
resolve = __decorate([
|
|
1742
|
+
Struct.type('resolve')
|
|
1743
|
+
], resolve);
|
|
1744
|
+
Types.resolve = resolve;
|
|
1745
|
+
let resolve_results = class resolve_results extends Struct {
|
|
1746
|
+
};
|
|
1747
|
+
__decorate([
|
|
1748
|
+
Struct.field(UInt64)
|
|
1749
|
+
], resolve_results.prototype, "entity_id", void 0);
|
|
1750
|
+
__decorate([
|
|
1751
|
+
Struct.field(Name)
|
|
1752
|
+
], resolve_results.prototype, "entity_type", void 0);
|
|
1753
|
+
__decorate([
|
|
1754
|
+
Struct.field(UInt8)
|
|
1755
|
+
], resolve_results.prototype, "resolved_count", void 0);
|
|
1756
|
+
__decorate([
|
|
1757
|
+
Struct.field(TimePoint, { optional: true })
|
|
1758
|
+
], resolve_results.prototype, "new_schedule_started", void 0);
|
|
1759
|
+
__decorate([
|
|
1760
|
+
Struct.field(UInt64, { optional: true })
|
|
1761
|
+
], resolve_results.prototype, "entitygroup", void 0);
|
|
1762
|
+
__decorate([
|
|
1763
|
+
Struct.field(entity_ref, { array: true, optional: true })
|
|
1764
|
+
], resolve_results.prototype, "group_members", void 0);
|
|
1765
|
+
resolve_results = __decorate([
|
|
1766
|
+
Struct.type('resolve_results')
|
|
1767
|
+
], resolve_results);
|
|
1768
|
+
Types.resolve_results = resolve_results;
|
|
1769
|
+
let resource_info = class resource_info extends Struct {
|
|
1770
|
+
};
|
|
1771
|
+
__decorate([
|
|
1772
|
+
Struct.field(UInt16)
|
|
1773
|
+
], resource_info.prototype, "id", void 0);
|
|
1774
|
+
__decorate([
|
|
1775
|
+
Struct.field(UInt32)
|
|
1776
|
+
], resource_info.prototype, "mass", void 0);
|
|
1777
|
+
__decorate([
|
|
1778
|
+
Struct.field(UInt8)
|
|
1779
|
+
], resource_info.prototype, "category", void 0);
|
|
1780
|
+
__decorate([
|
|
1781
|
+
Struct.field(UInt8)
|
|
1782
|
+
], resource_info.prototype, "tier", void 0);
|
|
1783
|
+
resource_info = __decorate([
|
|
1784
|
+
Struct.type('resource_info')
|
|
1785
|
+
], resource_info);
|
|
1786
|
+
Types.resource_info = resource_info;
|
|
1787
|
+
let resource_stats = class resource_stats extends Struct {
|
|
1788
|
+
};
|
|
1789
|
+
__decorate([
|
|
1790
|
+
Struct.field(UInt16)
|
|
1791
|
+
], resource_stats.prototype, "stat1", void 0);
|
|
1792
|
+
__decorate([
|
|
1793
|
+
Struct.field(UInt16)
|
|
1794
|
+
], resource_stats.prototype, "stat2", void 0);
|
|
1795
|
+
__decorate([
|
|
1796
|
+
Struct.field(UInt16)
|
|
1797
|
+
], resource_stats.prototype, "stat3", void 0);
|
|
1798
|
+
resource_stats = __decorate([
|
|
1799
|
+
Struct.type('resource_stats')
|
|
1800
|
+
], resource_stats);
|
|
1801
|
+
Types.resource_stats = resource_stats;
|
|
1802
|
+
let resources_result = class resources_result extends Struct {
|
|
1803
|
+
};
|
|
1804
|
+
__decorate([
|
|
1805
|
+
Struct.field(resource_info, { array: true })
|
|
1806
|
+
], resources_result.prototype, "resources", void 0);
|
|
1807
|
+
resources_result = __decorate([
|
|
1808
|
+
Struct.type('resources_result')
|
|
1809
|
+
], resources_result);
|
|
1810
|
+
Types.resources_result = resources_result;
|
|
1811
|
+
let rmmodule = class rmmodule extends Struct {
|
|
1812
|
+
};
|
|
1813
|
+
__decorate([
|
|
1814
|
+
Struct.field(UInt64)
|
|
1815
|
+
], rmmodule.prototype, "entity_id", void 0);
|
|
1816
|
+
__decorate([
|
|
1817
|
+
Struct.field(UInt8)
|
|
1818
|
+
], rmmodule.prototype, "module_index", void 0);
|
|
1819
|
+
__decorate([
|
|
1820
|
+
Struct.field(cargo_ref, { optional: true })
|
|
1821
|
+
], rmmodule.prototype, "target_ref", void 0);
|
|
1822
|
+
rmmodule = __decorate([
|
|
1823
|
+
Struct.type('rmmodule')
|
|
1824
|
+
], rmmodule);
|
|
1825
|
+
Types.rmmodule = rmmodule;
|
|
1826
|
+
let rmnftcfg = class rmnftcfg extends Struct {
|
|
1827
|
+
};
|
|
1828
|
+
__decorate([
|
|
1829
|
+
Struct.field(UInt16)
|
|
1830
|
+
], rmnftcfg.prototype, "item_id", void 0);
|
|
1831
|
+
rmnftcfg = __decorate([
|
|
1832
|
+
Struct.type('rmnftcfg')
|
|
1833
|
+
], rmnftcfg);
|
|
1834
|
+
Types.rmnftcfg = rmnftcfg;
|
|
1835
|
+
let salt = class salt extends Struct {
|
|
1836
|
+
};
|
|
1837
|
+
__decorate([
|
|
1838
|
+
Struct.field(UInt64)
|
|
1839
|
+
], salt.prototype, "salt", void 0);
|
|
1840
|
+
salt = __decorate([
|
|
1841
|
+
Struct.type('salt')
|
|
1842
|
+
], salt);
|
|
1843
|
+
Types.salt = salt;
|
|
1844
|
+
let setnftcfg = class setnftcfg extends Struct {
|
|
1845
|
+
};
|
|
1846
|
+
__decorate([
|
|
1847
|
+
Struct.field(UInt16)
|
|
1848
|
+
], setnftcfg.prototype, "item_id", void 0);
|
|
1849
|
+
__decorate([
|
|
1850
|
+
Struct.field(Int32)
|
|
1851
|
+
], setnftcfg.prototype, "template_id", void 0);
|
|
1852
|
+
__decorate([
|
|
1853
|
+
Struct.field(Name)
|
|
1854
|
+
], setnftcfg.prototype, "schema_name", void 0);
|
|
1855
|
+
setnftcfg = __decorate([
|
|
1856
|
+
Struct.type('setnftcfg')
|
|
1857
|
+
], setnftcfg);
|
|
1858
|
+
Types.setnftcfg = setnftcfg;
|
|
1859
|
+
let skipreveal = class skipreveal extends Struct {
|
|
1860
|
+
};
|
|
1861
|
+
__decorate([
|
|
1862
|
+
Struct.field(Checksum256)
|
|
1863
|
+
], skipreveal.prototype, "commit", void 0);
|
|
1864
|
+
skipreveal = __decorate([
|
|
1865
|
+
Struct.type('skipreveal')
|
|
1866
|
+
], skipreveal);
|
|
1867
|
+
Types.skipreveal = skipreveal;
|
|
1868
|
+
let spawncargo = class spawncargo extends Struct {
|
|
1869
|
+
};
|
|
1870
|
+
__decorate([
|
|
1871
|
+
Struct.field(UInt64)
|
|
1872
|
+
], spawncargo.prototype, "entity_id", void 0);
|
|
1873
|
+
__decorate([
|
|
1874
|
+
Struct.field(UInt64)
|
|
1875
|
+
], spawncargo.prototype, "item_id", void 0);
|
|
1876
|
+
__decorate([
|
|
1877
|
+
Struct.field(UInt64)
|
|
1878
|
+
], spawncargo.prototype, "quantity", void 0);
|
|
1879
|
+
spawncargo = __decorate([
|
|
1880
|
+
Struct.type('spawncargo')
|
|
1881
|
+
], spawncargo);
|
|
1882
|
+
Types.spawncargo = spawncargo;
|
|
1883
|
+
let spawnpacked = class spawnpacked extends Struct {
|
|
1884
|
+
};
|
|
1885
|
+
__decorate([
|
|
1886
|
+
Struct.field(UInt64)
|
|
1887
|
+
], spawnpacked.prototype, "entity_id", void 0);
|
|
1888
|
+
__decorate([
|
|
1889
|
+
Struct.field(UInt16)
|
|
1890
|
+
], spawnpacked.prototype, "item_id", void 0);
|
|
1891
|
+
__decorate([
|
|
1892
|
+
Struct.field(UInt64)
|
|
1893
|
+
], spawnpacked.prototype, "hull_stats", void 0);
|
|
1894
|
+
__decorate([
|
|
1895
|
+
Struct.field(packed_module, { array: true })
|
|
1896
|
+
], spawnpacked.prototype, "installed", void 0);
|
|
1897
|
+
spawnpacked = __decorate([
|
|
1898
|
+
Struct.type('spawnpacked')
|
|
1899
|
+
], spawnpacked);
|
|
1900
|
+
Types.spawnpacked = spawnpacked;
|
|
1901
|
+
let spawnseeded = class spawnseeded extends Struct {
|
|
1902
|
+
};
|
|
1903
|
+
__decorate([
|
|
1904
|
+
Struct.field(UInt64)
|
|
1905
|
+
], spawnseeded.prototype, "entity_id", void 0);
|
|
1906
|
+
__decorate([
|
|
1907
|
+
Struct.field(UInt64)
|
|
1908
|
+
], spawnseeded.prototype, "item_id", void 0);
|
|
1909
|
+
__decorate([
|
|
1910
|
+
Struct.field(UInt64)
|
|
1911
|
+
], spawnseeded.prototype, "quantity", void 0);
|
|
1912
|
+
__decorate([
|
|
1913
|
+
Struct.field(UInt64)
|
|
1914
|
+
], spawnseeded.prototype, "stats", void 0);
|
|
1915
|
+
spawnseeded = __decorate([
|
|
1916
|
+
Struct.type('spawnseeded')
|
|
1917
|
+
], spawnseeded);
|
|
1918
|
+
Types.spawnseeded = spawnseeded;
|
|
1919
|
+
let state_row = class state_row extends Struct {
|
|
1920
|
+
};
|
|
1921
|
+
__decorate([
|
|
1922
|
+
Struct.field('bool')
|
|
1923
|
+
], state_row.prototype, "enabled", void 0);
|
|
1924
|
+
__decorate([
|
|
1925
|
+
Struct.field(UInt32)
|
|
1926
|
+
], state_row.prototype, "epoch", void 0);
|
|
1927
|
+
__decorate([
|
|
1928
|
+
Struct.field(UInt64)
|
|
1929
|
+
], state_row.prototype, "salt", void 0);
|
|
1930
|
+
__decorate([
|
|
1931
|
+
Struct.field(Checksum256)
|
|
1932
|
+
], state_row.prototype, "seed", void 0);
|
|
1933
|
+
__decorate([
|
|
1934
|
+
Struct.field(Checksum256)
|
|
1935
|
+
], state_row.prototype, "commit", void 0);
|
|
1936
|
+
state_row = __decorate([
|
|
1937
|
+
Struct.type('state_row')
|
|
1938
|
+
], state_row);
|
|
1939
|
+
Types.state_row = state_row;
|
|
1940
|
+
let stratum_info = class stratum_info extends Struct {
|
|
1941
|
+
};
|
|
1942
|
+
__decorate([
|
|
1943
|
+
Struct.field(UInt16)
|
|
1944
|
+
], stratum_info.prototype, "item_id", void 0);
|
|
1945
|
+
__decorate([
|
|
1946
|
+
Struct.field(UInt64)
|
|
1947
|
+
], stratum_info.prototype, "seed", void 0);
|
|
1948
|
+
__decorate([
|
|
1949
|
+
Struct.field(UInt16)
|
|
1950
|
+
], stratum_info.prototype, "richness", void 0);
|
|
1951
|
+
__decorate([
|
|
1952
|
+
Struct.field(UInt32)
|
|
1953
|
+
], stratum_info.prototype, "reserve", void 0);
|
|
1954
|
+
__decorate([
|
|
1955
|
+
Struct.field(UInt32)
|
|
1956
|
+
], stratum_info.prototype, "reserve_max", void 0);
|
|
1957
|
+
stratum_info = __decorate([
|
|
1958
|
+
Struct.type('stratum_info')
|
|
1959
|
+
], stratum_info);
|
|
1960
|
+
Types.stratum_info = stratum_info;
|
|
1961
|
+
let stratum_data = class stratum_data extends Struct {
|
|
1962
|
+
};
|
|
1963
|
+
__decorate([
|
|
1964
|
+
Struct.field(stratum_info)
|
|
1965
|
+
], stratum_data.prototype, "stratum", void 0);
|
|
1966
|
+
__decorate([
|
|
1967
|
+
Struct.field(resource_stats)
|
|
1968
|
+
], stratum_data.prototype, "stats", void 0);
|
|
1969
|
+
stratum_data = __decorate([
|
|
1970
|
+
Struct.type('stratum_data')
|
|
1971
|
+
], stratum_data);
|
|
1972
|
+
Types.stratum_data = stratum_data;
|
|
1973
|
+
let stratum_remaining = class stratum_remaining extends Struct {
|
|
1974
|
+
};
|
|
1975
|
+
__decorate([
|
|
1976
|
+
Struct.field(UInt16)
|
|
1977
|
+
], stratum_remaining.prototype, "stratum", void 0);
|
|
1978
|
+
__decorate([
|
|
1979
|
+
Struct.field(UInt32)
|
|
1980
|
+
], stratum_remaining.prototype, "remaining", void 0);
|
|
1981
|
+
stratum_remaining = __decorate([
|
|
1982
|
+
Struct.type('stratum_remaining')
|
|
1983
|
+
], stratum_remaining);
|
|
1984
|
+
Types.stratum_remaining = stratum_remaining;
|
|
1985
|
+
let task_results = class task_results extends Struct {
|
|
1986
|
+
};
|
|
1987
|
+
__decorate([
|
|
1988
|
+
Struct.field(entity_task_info, { array: true })
|
|
1989
|
+
], task_results.prototype, "entities", void 0);
|
|
1990
|
+
task_results = __decorate([
|
|
1991
|
+
Struct.type('task_results')
|
|
1992
|
+
], task_results);
|
|
1993
|
+
Types.task_results = task_results;
|
|
1994
|
+
let transfer = class transfer extends Struct {
|
|
1995
|
+
};
|
|
1996
|
+
__decorate([
|
|
1997
|
+
Struct.field(UInt64)
|
|
1998
|
+
], transfer.prototype, "source_id", void 0);
|
|
1999
|
+
__decorate([
|
|
2000
|
+
Struct.field(UInt64)
|
|
2001
|
+
], transfer.prototype, "dest_id", void 0);
|
|
2002
|
+
__decorate([
|
|
2003
|
+
Struct.field(cargo_item, { array: true })
|
|
2004
|
+
], transfer.prototype, "items", void 0);
|
|
2005
|
+
transfer = __decorate([
|
|
2006
|
+
Struct.type('transfer')
|
|
2007
|
+
], transfer);
|
|
2008
|
+
Types.transfer = transfer;
|
|
2009
|
+
let travel = class travel extends Struct {
|
|
2010
|
+
};
|
|
2011
|
+
__decorate([
|
|
2012
|
+
Struct.field(UInt64)
|
|
2013
|
+
], travel.prototype, "id", void 0);
|
|
2014
|
+
__decorate([
|
|
2015
|
+
Struct.field(Int64)
|
|
2016
|
+
], travel.prototype, "x", void 0);
|
|
2017
|
+
__decorate([
|
|
2018
|
+
Struct.field(Int64)
|
|
2019
|
+
], travel.prototype, "y", void 0);
|
|
2020
|
+
__decorate([
|
|
2021
|
+
Struct.field('bool')
|
|
2022
|
+
], travel.prototype, "recharge", void 0);
|
|
2023
|
+
travel = __decorate([
|
|
2024
|
+
Struct.type('travel')
|
|
2025
|
+
], travel);
|
|
2026
|
+
Types.travel = travel;
|
|
2027
|
+
let types_row = class types_row extends Struct {
|
|
2028
|
+
};
|
|
2029
|
+
__decorate([
|
|
2030
|
+
Struct.field(UInt64)
|
|
2031
|
+
], types_row.prototype, "id", void 0);
|
|
2032
|
+
__decorate([
|
|
2033
|
+
Struct.field(entity_summary)
|
|
2034
|
+
], types_row.prototype, "entity_summary_type", void 0);
|
|
2035
|
+
__decorate([
|
|
2036
|
+
Struct.field(game_config)
|
|
2037
|
+
], types_row.prototype, "game_config_type", void 0);
|
|
2038
|
+
__decorate([
|
|
2039
|
+
Struct.field(stratum_remaining)
|
|
2040
|
+
], types_row.prototype, "stratum_remaining_type", void 0);
|
|
2041
|
+
types_row = __decorate([
|
|
2042
|
+
Struct.type('types_row')
|
|
2043
|
+
], types_row);
|
|
2044
|
+
Types.types_row = types_row;
|
|
2045
|
+
let undeploy = class undeploy extends Struct {
|
|
2046
|
+
};
|
|
2047
|
+
__decorate([
|
|
2048
|
+
Struct.field(UInt64)
|
|
2049
|
+
], undeploy.prototype, "host_id", void 0);
|
|
2050
|
+
__decorate([
|
|
2051
|
+
Struct.field(UInt64)
|
|
2052
|
+
], undeploy.prototype, "target_id", void 0);
|
|
2053
|
+
undeploy = __decorate([
|
|
2054
|
+
Struct.type('undeploy')
|
|
2055
|
+
], undeploy);
|
|
2056
|
+
Types.undeploy = undeploy;
|
|
2057
|
+
let warp = class warp extends Struct {
|
|
2058
|
+
};
|
|
2059
|
+
__decorate([
|
|
2060
|
+
Struct.field(UInt64)
|
|
2061
|
+
], warp.prototype, "id", void 0);
|
|
2062
|
+
__decorate([
|
|
2063
|
+
Struct.field(Int64)
|
|
2064
|
+
], warp.prototype, "x", void 0);
|
|
2065
|
+
__decorate([
|
|
2066
|
+
Struct.field(Int64)
|
|
2067
|
+
], warp.prototype, "y", void 0);
|
|
2068
|
+
warp = __decorate([
|
|
2069
|
+
Struct.type('warp')
|
|
2070
|
+
], warp);
|
|
2071
|
+
Types.warp = warp;
|
|
2072
|
+
let wipe = class wipe extends Struct {
|
|
2073
|
+
};
|
|
2074
|
+
wipe = __decorate([
|
|
2075
|
+
Struct.type('wipe')
|
|
2076
|
+
], wipe);
|
|
2077
|
+
Types.wipe = wipe;
|
|
2078
|
+
let wrap = class wrap extends Struct {
|
|
2079
|
+
};
|
|
2080
|
+
__decorate([
|
|
2081
|
+
Struct.field(Name)
|
|
2082
|
+
], wrap.prototype, "owner", void 0);
|
|
2083
|
+
__decorate([
|
|
2084
|
+
Struct.field(UInt64)
|
|
2085
|
+
], wrap.prototype, "entity_id", void 0);
|
|
2086
|
+
__decorate([
|
|
2087
|
+
Struct.field(UInt64)
|
|
2088
|
+
], wrap.prototype, "nexus_id", void 0);
|
|
2089
|
+
__decorate([
|
|
2090
|
+
Struct.field(cargo_item, { array: true })
|
|
2091
|
+
], wrap.prototype, "items", void 0);
|
|
2092
|
+
wrap = __decorate([
|
|
2093
|
+
Struct.type('wrap')
|
|
2094
|
+
], wrap);
|
|
2095
|
+
Types.wrap = wrap;
|
|
2096
|
+
let wrapentity = class wrapentity extends Struct {
|
|
2097
|
+
};
|
|
2098
|
+
__decorate([
|
|
2099
|
+
Struct.field(UInt64)
|
|
2100
|
+
], wrapentity.prototype, "entity_id", void 0);
|
|
2101
|
+
__decorate([
|
|
2102
|
+
Struct.field(UInt64)
|
|
2103
|
+
], wrapentity.prototype, "nexus_id", void 0);
|
|
2104
|
+
wrapentity = __decorate([
|
|
2105
|
+
Struct.type('wrapentity')
|
|
2106
|
+
], wrapentity);
|
|
2107
|
+
Types.wrapentity = wrapentity;
|
|
2108
|
+
})(Types || (Types = {}));
|
|
2109
|
+
({
|
|
2110
|
+
cargo: Types.cargo_row,
|
|
2111
|
+
entity: Types.entity_row,
|
|
2112
|
+
entitygroup: Types.entitygroup_row,
|
|
2113
|
+
nftconfig: Types.nftconfig_row,
|
|
2114
|
+
player: Types.player_row,
|
|
2115
|
+
reserve: Types.reserve_row,
|
|
2116
|
+
state: Types.state_row,
|
|
2117
|
+
types: Types.types_row,
|
|
2118
|
+
});
|
|
2119
|
+
|
|
2120
|
+
var items = [
|
|
2121
|
+
{
|
|
2122
|
+
id: 101,
|
|
2123
|
+
mass: 52000,
|
|
2124
|
+
type: "resource",
|
|
2125
|
+
tier: 1,
|
|
2126
|
+
category: "ore"
|
|
2127
|
+
},
|
|
2128
|
+
{
|
|
2129
|
+
id: 102,
|
|
2130
|
+
mass: 58000,
|
|
2131
|
+
type: "resource",
|
|
2132
|
+
tier: 2,
|
|
2133
|
+
category: "ore"
|
|
2134
|
+
},
|
|
2135
|
+
{
|
|
2136
|
+
id: 103,
|
|
2137
|
+
mass: 64000,
|
|
2138
|
+
type: "resource",
|
|
2139
|
+
tier: 3,
|
|
2140
|
+
category: "ore"
|
|
2141
|
+
},
|
|
2142
|
+
{
|
|
2143
|
+
id: 104,
|
|
2144
|
+
mass: 71000,
|
|
2145
|
+
type: "resource",
|
|
2146
|
+
tier: 4,
|
|
2147
|
+
category: "ore"
|
|
2148
|
+
},
|
|
2149
|
+
{
|
|
2150
|
+
id: 105,
|
|
2151
|
+
mass: 78000,
|
|
2152
|
+
type: "resource",
|
|
2153
|
+
tier: 5,
|
|
2154
|
+
category: "ore"
|
|
2155
|
+
},
|
|
2156
|
+
{
|
|
2157
|
+
id: 106,
|
|
2158
|
+
mass: 87000,
|
|
2159
|
+
type: "resource",
|
|
2160
|
+
tier: 6,
|
|
2161
|
+
category: "ore"
|
|
2162
|
+
},
|
|
2163
|
+
{
|
|
2164
|
+
id: 107,
|
|
2165
|
+
mass: 96000,
|
|
2166
|
+
type: "resource",
|
|
2167
|
+
tier: 7,
|
|
2168
|
+
category: "ore"
|
|
2169
|
+
},
|
|
2170
|
+
{
|
|
2171
|
+
id: 108,
|
|
2172
|
+
mass: 107000,
|
|
2173
|
+
type: "resource",
|
|
2174
|
+
tier: 8,
|
|
2175
|
+
category: "ore"
|
|
2176
|
+
},
|
|
2177
|
+
{
|
|
2178
|
+
id: 109,
|
|
2179
|
+
mass: 118000,
|
|
2180
|
+
type: "resource",
|
|
2181
|
+
tier: 9,
|
|
2182
|
+
category: "ore"
|
|
2183
|
+
},
|
|
2184
|
+
{
|
|
2185
|
+
id: 110,
|
|
2186
|
+
mass: 130000,
|
|
2187
|
+
type: "resource",
|
|
2188
|
+
tier: 10,
|
|
2189
|
+
category: "ore"
|
|
2190
|
+
},
|
|
2191
|
+
{
|
|
2192
|
+
id: 201,
|
|
2193
|
+
mass: 35000,
|
|
2194
|
+
type: "resource",
|
|
2195
|
+
tier: 1,
|
|
2196
|
+
category: "crystal"
|
|
2197
|
+
},
|
|
2198
|
+
{
|
|
2199
|
+
id: 202,
|
|
2200
|
+
mass: 35000,
|
|
2201
|
+
type: "resource",
|
|
2202
|
+
tier: 2,
|
|
2203
|
+
category: "crystal"
|
|
2204
|
+
},
|
|
2205
|
+
{
|
|
2206
|
+
id: 203,
|
|
2207
|
+
mass: 35000,
|
|
2208
|
+
type: "resource",
|
|
2209
|
+
tier: 3,
|
|
2210
|
+
category: "crystal"
|
|
2211
|
+
},
|
|
2212
|
+
{
|
|
2213
|
+
id: 204,
|
|
2214
|
+
mass: 35000,
|
|
2215
|
+
type: "resource",
|
|
2216
|
+
tier: 4,
|
|
2217
|
+
category: "crystal"
|
|
2218
|
+
},
|
|
2219
|
+
{
|
|
2220
|
+
id: 205,
|
|
2221
|
+
mass: 35000,
|
|
2222
|
+
type: "resource",
|
|
2223
|
+
tier: 5,
|
|
2224
|
+
category: "crystal"
|
|
2225
|
+
},
|
|
2226
|
+
{
|
|
2227
|
+
id: 206,
|
|
2228
|
+
mass: 35000,
|
|
2229
|
+
type: "resource",
|
|
2230
|
+
tier: 6,
|
|
2231
|
+
category: "crystal"
|
|
2232
|
+
},
|
|
2233
|
+
{
|
|
2234
|
+
id: 207,
|
|
2235
|
+
mass: 35000,
|
|
2236
|
+
type: "resource",
|
|
2237
|
+
tier: 7,
|
|
2238
|
+
category: "crystal"
|
|
2239
|
+
},
|
|
2240
|
+
{
|
|
2241
|
+
id: 208,
|
|
2242
|
+
mass: 35000,
|
|
2243
|
+
type: "resource",
|
|
2244
|
+
tier: 8,
|
|
2245
|
+
category: "crystal"
|
|
2246
|
+
},
|
|
2247
|
+
{
|
|
2248
|
+
id: 209,
|
|
2249
|
+
mass: 35000,
|
|
2250
|
+
type: "resource",
|
|
2251
|
+
tier: 9,
|
|
2252
|
+
category: "crystal"
|
|
2253
|
+
},
|
|
2254
|
+
{
|
|
2255
|
+
id: 210,
|
|
2256
|
+
mass: 35000,
|
|
2257
|
+
type: "resource",
|
|
2258
|
+
tier: 10,
|
|
2259
|
+
category: "crystal"
|
|
2260
|
+
},
|
|
2261
|
+
{
|
|
2262
|
+
id: 301,
|
|
2263
|
+
mass: 15000,
|
|
2264
|
+
type: "resource",
|
|
2265
|
+
tier: 1,
|
|
2266
|
+
category: "gas"
|
|
2267
|
+
},
|
|
2268
|
+
{
|
|
2269
|
+
id: 302,
|
|
2270
|
+
mass: 13500,
|
|
2271
|
+
type: "resource",
|
|
2272
|
+
tier: 2,
|
|
2273
|
+
category: "gas"
|
|
2274
|
+
},
|
|
2275
|
+
{
|
|
2276
|
+
id: 303,
|
|
2277
|
+
mass: 12000,
|
|
2278
|
+
type: "resource",
|
|
2279
|
+
tier: 3,
|
|
2280
|
+
category: "gas"
|
|
2281
|
+
},
|
|
2282
|
+
{
|
|
2283
|
+
id: 304,
|
|
2284
|
+
mass: 11000,
|
|
2285
|
+
type: "resource",
|
|
2286
|
+
tier: 4,
|
|
2287
|
+
category: "gas"
|
|
2288
|
+
},
|
|
2289
|
+
{
|
|
2290
|
+
id: 305,
|
|
2291
|
+
mass: 10000,
|
|
2292
|
+
type: "resource",
|
|
2293
|
+
tier: 5,
|
|
2294
|
+
category: "gas"
|
|
2295
|
+
},
|
|
2296
|
+
{
|
|
2297
|
+
id: 306,
|
|
2298
|
+
mass: 9000,
|
|
2299
|
+
type: "resource",
|
|
2300
|
+
tier: 6,
|
|
2301
|
+
category: "gas"
|
|
2302
|
+
},
|
|
2303
|
+
{
|
|
2304
|
+
id: 307,
|
|
2305
|
+
mass: 8000,
|
|
2306
|
+
type: "resource",
|
|
2307
|
+
tier: 7,
|
|
2308
|
+
category: "gas"
|
|
2309
|
+
},
|
|
2310
|
+
{
|
|
2311
|
+
id: 308,
|
|
2312
|
+
mass: 7500,
|
|
2313
|
+
type: "resource",
|
|
2314
|
+
tier: 8,
|
|
2315
|
+
category: "gas"
|
|
2316
|
+
},
|
|
2317
|
+
{
|
|
2318
|
+
id: 309,
|
|
2319
|
+
mass: 6500,
|
|
2320
|
+
type: "resource",
|
|
2321
|
+
tier: 9,
|
|
2322
|
+
category: "gas"
|
|
2323
|
+
},
|
|
2324
|
+
{
|
|
2325
|
+
id: 310,
|
|
2326
|
+
mass: 6000,
|
|
2327
|
+
type: "resource",
|
|
2328
|
+
tier: 10,
|
|
2329
|
+
category: "gas"
|
|
2330
|
+
},
|
|
2331
|
+
{
|
|
2332
|
+
id: 401,
|
|
2333
|
+
mass: 22000,
|
|
2334
|
+
type: "resource",
|
|
2335
|
+
tier: 1,
|
|
2336
|
+
category: "regolith"
|
|
2337
|
+
},
|
|
2338
|
+
{
|
|
2339
|
+
id: 402,
|
|
2340
|
+
mass: 25000,
|
|
2341
|
+
type: "resource",
|
|
2342
|
+
tier: 2,
|
|
2343
|
+
category: "regolith"
|
|
2344
|
+
},
|
|
2345
|
+
{
|
|
2346
|
+
id: 403,
|
|
2347
|
+
mass: 28000,
|
|
2348
|
+
type: "resource",
|
|
2349
|
+
tier: 3,
|
|
2350
|
+
category: "regolith"
|
|
2351
|
+
},
|
|
2352
|
+
{
|
|
2353
|
+
id: 404,
|
|
2354
|
+
mass: 32000,
|
|
2355
|
+
type: "resource",
|
|
2356
|
+
tier: 4,
|
|
2357
|
+
category: "regolith"
|
|
2358
|
+
},
|
|
2359
|
+
{
|
|
2360
|
+
id: 405,
|
|
2361
|
+
mass: 36000,
|
|
2362
|
+
type: "resource",
|
|
2363
|
+
tier: 5,
|
|
2364
|
+
category: "regolith"
|
|
2365
|
+
},
|
|
2366
|
+
{
|
|
2367
|
+
id: 406,
|
|
2368
|
+
mass: 40500,
|
|
2369
|
+
type: "resource",
|
|
2370
|
+
tier: 6,
|
|
2371
|
+
category: "regolith"
|
|
2372
|
+
},
|
|
2373
|
+
{
|
|
2374
|
+
id: 407,
|
|
2375
|
+
mass: 46000,
|
|
2376
|
+
type: "resource",
|
|
2377
|
+
tier: 7,
|
|
2378
|
+
category: "regolith"
|
|
2379
|
+
},
|
|
2380
|
+
{
|
|
2381
|
+
id: 408,
|
|
2382
|
+
mass: 52000,
|
|
2383
|
+
type: "resource",
|
|
2384
|
+
tier: 8,
|
|
2385
|
+
category: "regolith"
|
|
2386
|
+
},
|
|
2387
|
+
{
|
|
2388
|
+
id: 409,
|
|
2389
|
+
mass: 58500,
|
|
2390
|
+
type: "resource",
|
|
2391
|
+
tier: 9,
|
|
2392
|
+
category: "regolith"
|
|
2393
|
+
},
|
|
2394
|
+
{
|
|
2395
|
+
id: 410,
|
|
2396
|
+
mass: 66000,
|
|
2397
|
+
type: "resource",
|
|
2398
|
+
tier: 10,
|
|
2399
|
+
category: "regolith"
|
|
2400
|
+
},
|
|
2401
|
+
{
|
|
2402
|
+
id: 501,
|
|
2403
|
+
mass: 42000,
|
|
2404
|
+
type: "resource",
|
|
2405
|
+
tier: 1,
|
|
2406
|
+
category: "biomass"
|
|
2407
|
+
},
|
|
2408
|
+
{
|
|
2409
|
+
id: 502,
|
|
2410
|
+
mass: 37000,
|
|
2411
|
+
type: "resource",
|
|
2412
|
+
tier: 2,
|
|
2413
|
+
category: "biomass"
|
|
2414
|
+
},
|
|
2415
|
+
{
|
|
2416
|
+
id: 503,
|
|
2417
|
+
mass: 33000,
|
|
2418
|
+
type: "resource",
|
|
2419
|
+
tier: 3,
|
|
2420
|
+
category: "biomass"
|
|
2421
|
+
},
|
|
2422
|
+
{
|
|
2423
|
+
id: 504,
|
|
2424
|
+
mass: 29000,
|
|
2425
|
+
type: "resource",
|
|
2426
|
+
tier: 4,
|
|
2427
|
+
category: "biomass"
|
|
2428
|
+
},
|
|
2429
|
+
{
|
|
2430
|
+
id: 505,
|
|
2431
|
+
mass: 26000,
|
|
2432
|
+
type: "resource",
|
|
2433
|
+
tier: 5,
|
|
2434
|
+
category: "biomass"
|
|
2435
|
+
},
|
|
2436
|
+
{
|
|
2437
|
+
id: 506,
|
|
2438
|
+
mass: 23000,
|
|
2439
|
+
type: "resource",
|
|
2440
|
+
tier: 6,
|
|
2441
|
+
category: "biomass"
|
|
2442
|
+
},
|
|
2443
|
+
{
|
|
2444
|
+
id: 507,
|
|
2445
|
+
mass: 20000,
|
|
2446
|
+
type: "resource",
|
|
2447
|
+
tier: 7,
|
|
2448
|
+
category: "biomass"
|
|
2449
|
+
},
|
|
2450
|
+
{
|
|
2451
|
+
id: 508,
|
|
2452
|
+
mass: 18000,
|
|
2453
|
+
type: "resource",
|
|
2454
|
+
tier: 8,
|
|
2455
|
+
category: "biomass"
|
|
2456
|
+
},
|
|
2457
|
+
{
|
|
2458
|
+
id: 509,
|
|
2459
|
+
mass: 16000,
|
|
2460
|
+
type: "resource",
|
|
2461
|
+
tier: 9,
|
|
2462
|
+
category: "biomass"
|
|
2463
|
+
},
|
|
2464
|
+
{
|
|
2465
|
+
id: 510,
|
|
2466
|
+
mass: 14000,
|
|
2467
|
+
type: "resource",
|
|
2468
|
+
tier: 10,
|
|
2469
|
+
category: "biomass"
|
|
2470
|
+
},
|
|
2471
|
+
{
|
|
2472
|
+
id: 10001,
|
|
2473
|
+
mass: 50000,
|
|
2474
|
+
type: "component",
|
|
2475
|
+
tier: 1
|
|
2476
|
+
},
|
|
2477
|
+
{
|
|
2478
|
+
id: 10002,
|
|
2479
|
+
mass: 30000,
|
|
2480
|
+
type: "component",
|
|
2481
|
+
tier: 1
|
|
2482
|
+
},
|
|
2483
|
+
{
|
|
2484
|
+
id: 10003,
|
|
2485
|
+
mass: 50000,
|
|
2486
|
+
type: "component",
|
|
2487
|
+
tier: 1
|
|
2488
|
+
},
|
|
2489
|
+
{
|
|
2490
|
+
id: 10004,
|
|
2491
|
+
mass: 30000,
|
|
2492
|
+
type: "component",
|
|
2493
|
+
tier: 1
|
|
2494
|
+
},
|
|
2495
|
+
{
|
|
2496
|
+
id: 10005,
|
|
2497
|
+
mass: 50000,
|
|
2498
|
+
type: "component",
|
|
2499
|
+
tier: 1
|
|
2500
|
+
},
|
|
2501
|
+
{
|
|
2502
|
+
id: 10006,
|
|
2503
|
+
mass: 30000,
|
|
2504
|
+
type: "component",
|
|
2505
|
+
tier: 1
|
|
2506
|
+
},
|
|
2507
|
+
{
|
|
2508
|
+
id: 10007,
|
|
2509
|
+
mass: 30000,
|
|
2510
|
+
type: "component",
|
|
2511
|
+
tier: 1
|
|
2512
|
+
},
|
|
2513
|
+
{
|
|
2514
|
+
id: 10008,
|
|
2515
|
+
mass: 30000,
|
|
2516
|
+
type: "component",
|
|
2517
|
+
tier: 1
|
|
2518
|
+
},
|
|
2519
|
+
{
|
|
2520
|
+
id: 10009,
|
|
2521
|
+
mass: 50000,
|
|
2522
|
+
type: "component",
|
|
2523
|
+
tier: 1
|
|
2524
|
+
},
|
|
2525
|
+
{
|
|
2526
|
+
id: 10010,
|
|
2527
|
+
mass: 40000,
|
|
2528
|
+
type: "component",
|
|
2529
|
+
tier: 1
|
|
2530
|
+
},
|
|
2531
|
+
{
|
|
2532
|
+
id: 10100,
|
|
2533
|
+
mass: 150000,
|
|
2534
|
+
type: "module",
|
|
2535
|
+
tier: 1,
|
|
2536
|
+
subtype: "engine"
|
|
2537
|
+
},
|
|
2538
|
+
{
|
|
2539
|
+
id: 10101,
|
|
2540
|
+
mass: 75000,
|
|
2541
|
+
type: "module",
|
|
2542
|
+
tier: 1,
|
|
2543
|
+
subtype: "generator"
|
|
2544
|
+
},
|
|
2545
|
+
{
|
|
2546
|
+
id: 10102,
|
|
2547
|
+
mass: 145000,
|
|
2548
|
+
type: "module",
|
|
2549
|
+
tier: 1,
|
|
2550
|
+
subtype: "gatherer"
|
|
2551
|
+
},
|
|
2552
|
+
{
|
|
2553
|
+
id: 10103,
|
|
2554
|
+
mass: 90000,
|
|
2555
|
+
type: "module",
|
|
2556
|
+
tier: 1,
|
|
2557
|
+
subtype: "loader"
|
|
2558
|
+
},
|
|
2559
|
+
{
|
|
2560
|
+
id: 10104,
|
|
2561
|
+
mass: 120000,
|
|
2562
|
+
type: "module",
|
|
2563
|
+
tier: 1,
|
|
2564
|
+
subtype: "crafter"
|
|
2565
|
+
},
|
|
2566
|
+
{
|
|
2567
|
+
id: 10105,
|
|
2568
|
+
mass: 100000,
|
|
2569
|
+
type: "module",
|
|
2570
|
+
tier: 1,
|
|
2571
|
+
subtype: "storage"
|
|
2572
|
+
},
|
|
2573
|
+
{
|
|
2574
|
+
id: 10106,
|
|
2575
|
+
mass: 120000,
|
|
2576
|
+
type: "module",
|
|
2577
|
+
tier: 1,
|
|
2578
|
+
subtype: "hauler"
|
|
2579
|
+
},
|
|
2580
|
+
{
|
|
2581
|
+
id: 10107,
|
|
2582
|
+
mass: 180000,
|
|
2583
|
+
type: "module",
|
|
2584
|
+
tier: 1,
|
|
2585
|
+
subtype: "warp"
|
|
2586
|
+
},
|
|
2587
|
+
{
|
|
2588
|
+
id: 10200,
|
|
2589
|
+
mass: 80000,
|
|
2590
|
+
type: "entity",
|
|
2591
|
+
tier: 1
|
|
2592
|
+
},
|
|
2593
|
+
{
|
|
2594
|
+
id: 10201,
|
|
2595
|
+
mass: 100000,
|
|
2596
|
+
type: "entity",
|
|
2597
|
+
tier: 1
|
|
2598
|
+
},
|
|
2599
|
+
{
|
|
2600
|
+
id: 10202,
|
|
2601
|
+
mass: 1300000,
|
|
2602
|
+
type: "entity",
|
|
2603
|
+
tier: 1
|
|
2604
|
+
},
|
|
2605
|
+
{
|
|
2606
|
+
id: 10203,
|
|
2607
|
+
mass: 800000,
|
|
2608
|
+
type: "entity",
|
|
2609
|
+
tier: 1
|
|
2610
|
+
},
|
|
2611
|
+
{
|
|
2612
|
+
id: 10204,
|
|
2613
|
+
mass: 800000,
|
|
2614
|
+
type: "entity",
|
|
2615
|
+
tier: 1
|
|
2616
|
+
},
|
|
2617
|
+
{
|
|
2618
|
+
id: 20001,
|
|
2619
|
+
mass: 50000,
|
|
2620
|
+
type: "component",
|
|
2621
|
+
tier: 2
|
|
2622
|
+
},
|
|
2623
|
+
{
|
|
2624
|
+
id: 20002,
|
|
2625
|
+
mass: 30000,
|
|
2626
|
+
type: "component",
|
|
2627
|
+
tier: 2
|
|
2628
|
+
},
|
|
2629
|
+
{
|
|
2630
|
+
id: 20200,
|
|
2631
|
+
mass: 80000,
|
|
2632
|
+
type: "entity",
|
|
2633
|
+
tier: 2
|
|
2634
|
+
}
|
|
2635
|
+
];
|
|
2636
|
+
|
|
2637
|
+
const itemMetadata = {
|
|
2638
|
+
101: { name: 'Ore', description: 'Crude metallic ore.', color: '#C26D3F' },
|
|
2639
|
+
102: { name: 'Ore', description: 'Refined metallic ore with improved purity.', color: '#C26D3F' },
|
|
2640
|
+
103: {
|
|
2641
|
+
name: 'Ore',
|
|
2642
|
+
description: 'High-grade metallic ore with exceptional density.',
|
|
2643
|
+
color: '#C26D3F',
|
|
2644
|
+
},
|
|
2645
|
+
104: { name: 'Ore', description: '', color: '#C26D3F' },
|
|
2646
|
+
105: { name: 'Ore', description: '', color: '#C26D3F' },
|
|
2647
|
+
106: { name: 'Ore', description: '', color: '#C26D3F' },
|
|
2648
|
+
107: { name: 'Ore', description: '', color: '#C26D3F' },
|
|
2649
|
+
108: { name: 'Ore', description: '', color: '#C26D3F' },
|
|
2650
|
+
109: { name: 'Ore', description: '', color: '#C26D3F' },
|
|
2651
|
+
110: { name: 'Ore', description: '', color: '#C26D3F' },
|
|
2652
|
+
201: { name: 'Crystal', description: 'Raw resonant crystal.', color: '#4ADBFF' },
|
|
2653
|
+
202: {
|
|
2654
|
+
name: 'Crystal',
|
|
2655
|
+
description: 'Refined resonant crystal with improved clarity.',
|
|
2656
|
+
color: '#4ADBFF',
|
|
2657
|
+
},
|
|
2658
|
+
203: {
|
|
2659
|
+
name: 'Crystal',
|
|
2660
|
+
description: 'High-grade resonant crystal with exceptional purity.',
|
|
2661
|
+
color: '#4ADBFF',
|
|
2662
|
+
},
|
|
2663
|
+
204: { name: 'Crystal', description: '', color: '#4ADBFF' },
|
|
2664
|
+
205: { name: 'Crystal', description: '', color: '#4ADBFF' },
|
|
2665
|
+
206: { name: 'Crystal', description: '', color: '#4ADBFF' },
|
|
2666
|
+
207: { name: 'Crystal', description: '', color: '#4ADBFF' },
|
|
2667
|
+
208: { name: 'Crystal', description: '', color: '#4ADBFF' },
|
|
2668
|
+
209: { name: 'Crystal', description: '', color: '#4ADBFF' },
|
|
2669
|
+
210: { name: 'Crystal', description: '', color: '#4ADBFF' },
|
|
2670
|
+
301: { name: 'Gas', description: 'Raw volatile gas.', color: '#B8E4A0' },
|
|
2671
|
+
302: {
|
|
2672
|
+
name: 'Gas',
|
|
2673
|
+
description: 'Refined volatile gas with improved reactivity.',
|
|
2674
|
+
color: '#B8E4A0',
|
|
2675
|
+
},
|
|
2676
|
+
303: {
|
|
2677
|
+
name: 'Gas',
|
|
2678
|
+
description: 'High-grade volatile gas with exceptional energy density.',
|
|
2679
|
+
color: '#B8E4A0',
|
|
2680
|
+
},
|
|
2681
|
+
304: { name: 'Gas', description: '', color: '#B8E4A0' },
|
|
2682
|
+
305: { name: 'Gas', description: '', color: '#B8E4A0' },
|
|
2683
|
+
306: { name: 'Gas', description: '', color: '#B8E4A0' },
|
|
2684
|
+
307: { name: 'Gas', description: '', color: '#B8E4A0' },
|
|
2685
|
+
308: { name: 'Gas', description: '', color: '#B8E4A0' },
|
|
2686
|
+
309: { name: 'Gas', description: '', color: '#B8E4A0' },
|
|
2687
|
+
310: { name: 'Gas', description: '', color: '#B8E4A0' },
|
|
2688
|
+
401: { name: 'Regolith', description: 'Crude regolith dust.', color: '#C4A57B' },
|
|
2689
|
+
402: {
|
|
2690
|
+
name: 'Regolith',
|
|
2691
|
+
description: 'Refined regolith with improved fineness.',
|
|
2692
|
+
color: '#C4A57B',
|
|
2693
|
+
},
|
|
2694
|
+
403: {
|
|
2695
|
+
name: 'Regolith',
|
|
2696
|
+
description: 'High-grade regolith with exceptional uniformity.',
|
|
2697
|
+
color: '#C4A57B',
|
|
2698
|
+
},
|
|
2699
|
+
404: { name: 'Regolith', description: '', color: '#C4A57B' },
|
|
2700
|
+
405: { name: 'Regolith', description: '', color: '#C4A57B' },
|
|
2701
|
+
406: { name: 'Regolith', description: '', color: '#C4A57B' },
|
|
2702
|
+
407: { name: 'Regolith', description: '', color: '#C4A57B' },
|
|
2703
|
+
408: { name: 'Regolith', description: '', color: '#C4A57B' },
|
|
2704
|
+
409: { name: 'Regolith', description: '', color: '#C4A57B' },
|
|
2705
|
+
410: { name: 'Regolith', description: '', color: '#C4A57B' },
|
|
2706
|
+
501: { name: 'Biomass', description: 'Crude organic biomass.', color: '#5A8B3E' },
|
|
2707
|
+
502: {
|
|
2708
|
+
name: 'Biomass',
|
|
2709
|
+
description: 'Refined biomass with improved plasticity.',
|
|
2710
|
+
color: '#5A8B3E',
|
|
2711
|
+
},
|
|
2712
|
+
503: {
|
|
2713
|
+
name: 'Biomass',
|
|
2714
|
+
description: 'High-grade biomass with exceptional saturation.',
|
|
2715
|
+
color: '#5A8B3E',
|
|
2716
|
+
},
|
|
2717
|
+
504: { name: 'Biomass', description: '', color: '#5A8B3E' },
|
|
2718
|
+
505: { name: 'Biomass', description: '', color: '#5A8B3E' },
|
|
2719
|
+
506: { name: 'Biomass', description: '', color: '#5A8B3E' },
|
|
2720
|
+
507: { name: 'Biomass', description: '', color: '#5A8B3E' },
|
|
2721
|
+
508: { name: 'Biomass', description: '', color: '#5A8B3E' },
|
|
2722
|
+
509: { name: 'Biomass', description: '', color: '#5A8B3E' },
|
|
2723
|
+
510: { name: 'Biomass', description: '', color: '#5A8B3E' },
|
|
2724
|
+
10001: {
|
|
2725
|
+
name: 'Hull Plates',
|
|
2726
|
+
description: 'Structural plating formed from ore. Used in hulls, containers, and frames.',
|
|
2727
|
+
color: '#7B8D9E',
|
|
2728
|
+
},
|
|
2729
|
+
10002: {
|
|
2730
|
+
name: 'Cargo Lining',
|
|
2731
|
+
description: 'Composite lining formed from fine regolith bound in biomass polymer. Dense enough to seal cargo holds, flexible enough to absorb vibration.',
|
|
2732
|
+
color: '#C4A57B',
|
|
2733
|
+
},
|
|
2734
|
+
10003: {
|
|
2735
|
+
name: 'Thruster Core',
|
|
2736
|
+
description: 'High-energy propulsion component formed from volatile gases.',
|
|
2737
|
+
color: '#E86344',
|
|
2738
|
+
},
|
|
2739
|
+
10004: {
|
|
2740
|
+
name: 'Power Cell',
|
|
2741
|
+
description: 'Crystalline energy storage matrix. Resonant lattices retain and release charge.',
|
|
2742
|
+
color: '#4ADBFF',
|
|
2743
|
+
},
|
|
2744
|
+
10005: {
|
|
2745
|
+
name: 'Matter Conduit',
|
|
2746
|
+
description: 'Heavy-duty ore shaft used in gathering equipment.',
|
|
2747
|
+
color: '#7B8D9E',
|
|
2748
|
+
},
|
|
2749
|
+
10006: {
|
|
2750
|
+
name: 'Survey Probe',
|
|
2751
|
+
description: 'Crystal-lattice sensor array for deep resource detection.',
|
|
2752
|
+
color: '#4ADBFF',
|
|
2753
|
+
},
|
|
2754
|
+
10007: {
|
|
2755
|
+
name: 'Cargo Arm',
|
|
2756
|
+
description: 'Flexible biomass composite arm for cargo handling.',
|
|
2757
|
+
color: '#5A8B3E',
|
|
2758
|
+
},
|
|
2759
|
+
10008: {
|
|
2760
|
+
name: 'Tool Bit',
|
|
2761
|
+
description: 'Dense regolith cutting head for crafting operations.',
|
|
2762
|
+
color: '#C4A57B',
|
|
2763
|
+
},
|
|
2764
|
+
10009: {
|
|
2765
|
+
name: 'Reaction Chamber',
|
|
2766
|
+
description: 'Gas-pressurized vessel for controlled crafting reactions.',
|
|
2767
|
+
color: '#B8E4A0',
|
|
2768
|
+
},
|
|
2769
|
+
10010: {
|
|
2770
|
+
name: 'Focusing Array',
|
|
2771
|
+
description: "Precision-formed crystal lens array. Routes the haul beam's energy efficiently to the target lock.",
|
|
2772
|
+
color: '#4ADBFF',
|
|
2773
|
+
},
|
|
2774
|
+
10100: {
|
|
2775
|
+
name: 'Engine',
|
|
2776
|
+
description: 'Basic propulsion system. Converts volatile gases into thrust.',
|
|
2777
|
+
color: '#E86344',
|
|
2778
|
+
},
|
|
2779
|
+
10101: {
|
|
2780
|
+
name: 'Generator',
|
|
2781
|
+
description: 'Basic energy system. Stores and recharges energy from resonant crystals.',
|
|
2782
|
+
color: '#4ADBFF',
|
|
2783
|
+
},
|
|
2784
|
+
10102: {
|
|
2785
|
+
name: 'Gatherer',
|
|
2786
|
+
description: 'Basic gathering system. Probes and conduits for raw resources.',
|
|
2787
|
+
color: '#7B8D9E',
|
|
2788
|
+
},
|
|
2789
|
+
10103: {
|
|
2790
|
+
name: 'Loader',
|
|
2791
|
+
description: 'Basic cargo handling system. Loads and unloads cargo with articulated arms.',
|
|
2792
|
+
color: '#5A8B3E',
|
|
2793
|
+
},
|
|
2794
|
+
10104: {
|
|
2795
|
+
name: 'Crafter',
|
|
2796
|
+
description: 'Basic crafting system. Processes materials using reaction chambers and cutting tools.',
|
|
2797
|
+
color: '#B8E4A0',
|
|
2798
|
+
},
|
|
2799
|
+
10105: {
|
|
2800
|
+
name: 'Storage',
|
|
2801
|
+
description: 'Expands cargo capacity based on hull material quality.',
|
|
2802
|
+
color: '#8B7355',
|
|
2803
|
+
},
|
|
2804
|
+
10106: {
|
|
2805
|
+
name: 'Hauler',
|
|
2806
|
+
description: 'Projects a haul beam to lock onto and transport containers or warehouses through group travel.',
|
|
2807
|
+
color: '#4ADBFF',
|
|
2808
|
+
},
|
|
2809
|
+
10107: {
|
|
2810
|
+
name: 'Warp',
|
|
2811
|
+
description: 'Folds local space-time around the hull, projecting the ship across vast distances in a single discharge of the entire energy reserve.',
|
|
2812
|
+
color: '#9be4ff',
|
|
2813
|
+
},
|
|
2814
|
+
10200: {
|
|
2815
|
+
name: 'Container',
|
|
2816
|
+
description: 'Passive floating cargo storage in space. Towed by ships.',
|
|
2817
|
+
color: '#7B8D9E',
|
|
2818
|
+
},
|
|
2819
|
+
10201: {
|
|
2820
|
+
name: 'Ship',
|
|
2821
|
+
description: 'General-purpose vessel with 5 module slots.',
|
|
2822
|
+
color: '#4AE898',
|
|
2823
|
+
},
|
|
2824
|
+
10202: {
|
|
2825
|
+
name: 'Warehouse',
|
|
2826
|
+
description: 'Massive stationary storage facility with a single loader module slot.',
|
|
2827
|
+
color: '#EAB308',
|
|
2828
|
+
},
|
|
2829
|
+
10203: {
|
|
2830
|
+
name: 'Extractor',
|
|
2831
|
+
description: 'Planetary resource extraction facility with generator and gatherer module slots.',
|
|
2832
|
+
color: '#D4726F',
|
|
2833
|
+
},
|
|
2834
|
+
10204: {
|
|
2835
|
+
name: 'Factory',
|
|
2836
|
+
description: 'Planetary fabrication facility with generator and crafter module slots.',
|
|
2837
|
+
color: '#7BA7D4',
|
|
2838
|
+
},
|
|
2839
|
+
20001: {
|
|
2840
|
+
name: 'Hull Plates',
|
|
2841
|
+
description: 'Advanced structural plating reinforced with tier 2 ore.',
|
|
2842
|
+
color: '#9BADB8',
|
|
2843
|
+
},
|
|
2844
|
+
20002: {
|
|
2845
|
+
name: 'Cargo Lining',
|
|
2846
|
+
description: 'Advanced composite lining reinforced with tier 2 regolith and biomass polymer.',
|
|
2847
|
+
color: '#C4A57B',
|
|
2848
|
+
},
|
|
2849
|
+
20200: {
|
|
2850
|
+
name: 'Container',
|
|
2851
|
+
description: 'Advanced cargo container with improved capacity formulas.',
|
|
2852
|
+
color: '#9BADB8',
|
|
2853
|
+
},
|
|
2854
|
+
};
|
|
2855
|
+
for (const item of items) {
|
|
2856
|
+
if (!itemMetadata[item.id]) {
|
|
2857
|
+
throw new Error(`Missing metadata for item ${item.id}. Add an entry to metadata.ts.`);
|
|
2858
|
+
}
|
|
2859
|
+
}
|
|
2860
|
+
|
|
2861
|
+
var TaskType;
|
|
2862
|
+
(function (TaskType) {
|
|
2863
|
+
TaskType[TaskType["IDLE"] = 0] = "IDLE";
|
|
2864
|
+
TaskType[TaskType["TRAVEL"] = 1] = "TRAVEL";
|
|
2865
|
+
TaskType[TaskType["RECHARGE"] = 2] = "RECHARGE";
|
|
2866
|
+
TaskType[TaskType["LOAD"] = 3] = "LOAD";
|
|
2867
|
+
TaskType[TaskType["UNLOAD"] = 4] = "UNLOAD";
|
|
2868
|
+
TaskType[TaskType["GATHER"] = 5] = "GATHER";
|
|
2869
|
+
TaskType[TaskType["WARP"] = 6] = "WARP";
|
|
2870
|
+
TaskType[TaskType["CRAFT"] = 7] = "CRAFT";
|
|
2871
|
+
TaskType[TaskType["DEPLOY"] = 8] = "DEPLOY";
|
|
2872
|
+
TaskType[TaskType["WRAP"] = 9] = "WRAP";
|
|
2873
|
+
TaskType[TaskType["UNWRAP"] = 10] = "UNWRAP";
|
|
2874
|
+
TaskType[TaskType["UNDEPLOY"] = 11] = "UNDEPLOY";
|
|
2875
|
+
TaskType[TaskType["WRAP_ENTITY"] = 12] = "WRAP_ENTITY";
|
|
2876
|
+
TaskType[TaskType["DEMOLISH"] = 13] = "DEMOLISH";
|
|
2877
|
+
})(TaskType || (TaskType = {}));
|
|
2878
|
+
var LocationType;
|
|
2879
|
+
(function (LocationType) {
|
|
2880
|
+
LocationType[LocationType["EMPTY"] = 0] = "EMPTY";
|
|
2881
|
+
LocationType[LocationType["PLANET"] = 1] = "PLANET";
|
|
2882
|
+
LocationType[LocationType["ASTEROID"] = 2] = "ASTEROID";
|
|
2883
|
+
LocationType[LocationType["NEBULA"] = 3] = "NEBULA";
|
|
2884
|
+
LocationType[LocationType["ICE_FIELD"] = 4] = "ICE_FIELD";
|
|
2885
|
+
})(LocationType || (LocationType = {}));
|
|
2886
|
+
var TaskCancelable;
|
|
2887
|
+
(function (TaskCancelable) {
|
|
2888
|
+
TaskCancelable[TaskCancelable["NEVER"] = 0] = "NEVER";
|
|
2889
|
+
TaskCancelable[TaskCancelable["BEFORE_START"] = 1] = "BEFORE_START";
|
|
2890
|
+
TaskCancelable[TaskCancelable["ALWAYS"] = 2] = "ALWAYS";
|
|
2891
|
+
})(TaskCancelable || (TaskCancelable = {}));
|
|
2892
|
+
class Coordinates extends Types.coordinates {
|
|
2893
|
+
static from(value) {
|
|
2894
|
+
return super.from(value);
|
|
2895
|
+
}
|
|
2896
|
+
equals(other) {
|
|
2897
|
+
const coords = Coordinates.from(other);
|
|
2898
|
+
return this.x.equals(coords.x) && this.y.equals(coords.y);
|
|
2899
|
+
}
|
|
2900
|
+
toLocationId() {
|
|
2901
|
+
return coordsToLocationId(this);
|
|
2902
|
+
}
|
|
2903
|
+
}
|
|
2904
|
+
function coordsToLocationId(coords) {
|
|
2905
|
+
const c = Coordinates.from(coords);
|
|
2906
|
+
const mask = BigInt(0xffffffff);
|
|
2907
|
+
const x = BigInt(c.x.toNumber()) & mask;
|
|
2908
|
+
const y = BigInt(c.y.toNumber()) & mask;
|
|
2909
|
+
const id = (x << BigInt(32)) | y;
|
|
2910
|
+
return UInt64.from(id);
|
|
2911
|
+
}
|
|
2912
|
+
|
|
2913
|
+
const itemsById = new Map();
|
|
2914
|
+
for (const raw of items) {
|
|
2915
|
+
const meta = itemMetadata[raw.id];
|
|
2916
|
+
if (!meta) {
|
|
2917
|
+
throw new Error(`Missing metadata for item ${raw.id}. Add an entry to metadata.ts.`);
|
|
2918
|
+
}
|
|
2919
|
+
itemsById.set(raw.id, {
|
|
2920
|
+
id: raw.id,
|
|
2921
|
+
name: meta.name,
|
|
2922
|
+
description: meta.description,
|
|
2923
|
+
color: meta.color,
|
|
2924
|
+
mass: raw.mass,
|
|
2925
|
+
type: raw.type,
|
|
2926
|
+
tier: raw.tier,
|
|
2927
|
+
category: raw.category,
|
|
2928
|
+
moduleType: raw.type === 'module' ? raw.subtype : undefined,
|
|
2929
|
+
});
|
|
2930
|
+
}
|
|
2931
|
+
Array.from(itemsById.keys());
|
|
2932
|
+
|
|
2933
|
+
function cargoItemToStack(item) {
|
|
2934
|
+
return {
|
|
2935
|
+
item_id: UInt16.from(item.item_id),
|
|
2936
|
+
quantity: UInt32.from(item.quantity),
|
|
2937
|
+
stats: UInt64.from(item.stats),
|
|
2938
|
+
modules: item.modules ?? [],
|
|
2939
|
+
};
|
|
2940
|
+
}
|
|
2941
|
+
function statsEquals(a, b) {
|
|
2942
|
+
return a.equals(b);
|
|
2943
|
+
}
|
|
2944
|
+
function stackIdentityEqual(a, b) {
|
|
2945
|
+
return a.item_id.equals(b.item_id) && statsEquals(a.stats, b.stats);
|
|
2946
|
+
}
|
|
2947
|
+
function mergeStacks(stacks, add) {
|
|
2948
|
+
const idx = stacks.findIndex((s) => stackIdentityEqual(s, add));
|
|
2949
|
+
if (idx === -1) {
|
|
2950
|
+
return [...stacks, { ...add }];
|
|
2951
|
+
}
|
|
2952
|
+
const result = stacks.slice();
|
|
2953
|
+
result[idx] = {
|
|
2954
|
+
...result[idx],
|
|
2955
|
+
quantity: UInt32.from(result[idx].quantity.adding(add.quantity)),
|
|
2956
|
+
};
|
|
2957
|
+
return result;
|
|
2958
|
+
}
|
|
2959
|
+
|
|
2960
|
+
function assertProjectionEquals(contract, sdk, options = {}) {
|
|
2961
|
+
const mismatches = [];
|
|
2962
|
+
const record = (name, c, s) => {
|
|
2963
|
+
if (c !== s)
|
|
2964
|
+
mismatches.push(` ${name}: contract=${fmt(c)} sdk=${fmt(s)}`);
|
|
2965
|
+
};
|
|
2966
|
+
const recordStatBlock = (name, c, s) => {
|
|
2967
|
+
const cPresent = c !== undefined && c !== null;
|
|
2968
|
+
const sPresent = s !== undefined && s !== null;
|
|
2969
|
+
if (cPresent !== sPresent) {
|
|
2970
|
+
mismatches.push(` ${name}: contract=${cPresent ? 'present' : 'absent'} sdk=${sPresent ? 'present' : 'absent'}`);
|
|
2971
|
+
return;
|
|
2972
|
+
}
|
|
2973
|
+
if (!cPresent)
|
|
2974
|
+
return;
|
|
2975
|
+
const cn = JSON.stringify(normaliseStatBlock(c));
|
|
2976
|
+
const sn = JSON.stringify(normaliseStatBlock(s));
|
|
2977
|
+
if (cn !== sn)
|
|
2978
|
+
mismatches.push(` ${name}: contract=${cn} sdk=${sn}`);
|
|
2979
|
+
};
|
|
2980
|
+
record('coordinates.x', toNum(contract.coordinates.x), Number(sdk.location.x));
|
|
2981
|
+
record('coordinates.y', toNum(contract.coordinates.y), Number(sdk.location.y));
|
|
2982
|
+
record('energy', toNum(contract.energy), Number(sdk.energy));
|
|
2983
|
+
record('cargomass', toNum(contract.cargomass), Number(sdk.cargoMass));
|
|
2984
|
+
record('hullmass', toNum(contract.hullmass), Number(sdk.shipMass));
|
|
2985
|
+
record('capacity', toNum(contract.capacity), sdk.capacity ? Number(sdk.capacity) : undefined);
|
|
2986
|
+
recordStatBlock('engines', contract.engines, sdk.engines);
|
|
2987
|
+
recordStatBlock('loaders', contract.loaders, sdk.loaders);
|
|
2988
|
+
recordStatBlock('generator', contract.generator, sdk.generator);
|
|
2989
|
+
recordStatBlock('hauler', contract.hauler, sdk.hauler);
|
|
2990
|
+
if (contract.cargo.length > 0 || sdk.cargo.length > 0) {
|
|
2991
|
+
const contractCargo = normaliseCargo(mergeContractCargo(contract.cargo));
|
|
2992
|
+
const sdkCargo = normaliseCargo(sdk.cargo);
|
|
2993
|
+
if (contractCargo.length !== sdkCargo.length) {
|
|
2994
|
+
mismatches.push(` cargo.length: contract=${contractCargo.length} sdk=${sdkCargo.length}`);
|
|
2995
|
+
}
|
|
2996
|
+
else {
|
|
2997
|
+
for (let i = 0; i < contractCargo.length; i++) {
|
|
2998
|
+
const c = contractCargo[i];
|
|
2999
|
+
const s = sdkCargo[i];
|
|
3000
|
+
if (c.itemId !== s.itemId || c.stats !== s.stats || c.quantity !== s.quantity) {
|
|
3001
|
+
mismatches.push(` cargo[${i}]: contract={item:${c.itemId},stats:${c.stats},qty:${c.quantity}} sdk={item:${s.itemId},stats:${s.stats},qty:${s.quantity}}`);
|
|
3002
|
+
}
|
|
3003
|
+
}
|
|
3004
|
+
}
|
|
3005
|
+
}
|
|
3006
|
+
if (mismatches.length > 0) {
|
|
3007
|
+
const header = options.step !== undefined
|
|
3008
|
+
? `projection divergence at step ${options.step}:`
|
|
3009
|
+
: 'projection divergence:';
|
|
3010
|
+
throw new Error([header, ...mismatches].join('\n'));
|
|
3011
|
+
}
|
|
3012
|
+
}
|
|
3013
|
+
function mergeContractCargo(cargo) {
|
|
3014
|
+
return cargo.reduce((acc, row) => mergeStacks(acc, cargoItemToStack(row)), []);
|
|
3015
|
+
}
|
|
3016
|
+
function normaliseCargo(cargo) {
|
|
3017
|
+
return cargo
|
|
3018
|
+
.map((s) => ({
|
|
3019
|
+
itemId: Number(s.item_id),
|
|
3020
|
+
stats: BigInt(s.stats.toString()).toString(),
|
|
3021
|
+
quantity: BigInt(s.quantity.toString()).toString(),
|
|
3022
|
+
}))
|
|
3023
|
+
.sort(stackSort);
|
|
3024
|
+
}
|
|
3025
|
+
function stackSort(a, b) {
|
|
3026
|
+
if (a.itemId !== b.itemId)
|
|
3027
|
+
return a.itemId - b.itemId;
|
|
3028
|
+
return a.stats < b.stats ? -1 : a.stats > b.stats ? 1 : 0;
|
|
3029
|
+
}
|
|
3030
|
+
function toNum(v) {
|
|
3031
|
+
if (v === undefined || v === null)
|
|
3032
|
+
return undefined;
|
|
3033
|
+
if (typeof v === 'number')
|
|
3034
|
+
return v;
|
|
3035
|
+
if (typeof v === 'bigint')
|
|
3036
|
+
return Number(v);
|
|
3037
|
+
if (typeof v.toNumber === 'function') {
|
|
3038
|
+
return v.toNumber();
|
|
3039
|
+
}
|
|
3040
|
+
return Number(v);
|
|
3041
|
+
}
|
|
3042
|
+
function fmt(v) {
|
|
3043
|
+
if (v === undefined)
|
|
3044
|
+
return 'undefined';
|
|
3045
|
+
if (v === null)
|
|
3046
|
+
return 'null';
|
|
3047
|
+
return String(v);
|
|
3048
|
+
}
|
|
3049
|
+
function normaliseStatBlock(block) {
|
|
3050
|
+
const out = {};
|
|
3051
|
+
const obj = block;
|
|
3052
|
+
for (const k of Object.keys(obj).sort()) {
|
|
3053
|
+
out[k] = toNum(obj[k]) ?? 0;
|
|
3054
|
+
}
|
|
3055
|
+
return out;
|
|
3056
|
+
}
|
|
3057
|
+
|
|
3058
|
+
export { CATALOG_FILES_REL, assertProjectionEquals, computeCatalogHash };
|
|
3059
|
+
//# sourceMappingURL=testing.m.js.map
|