coreum-js 2.5.11 → 2.5.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.
Files changed (81) hide show
  1. package/dist/main/cosmos/authz/v1beta1/authz.d.ts +167 -0
  2. package/dist/main/cosmos/authz/v1beta1/authz.js +320 -0
  3. package/dist/main/cosmos/authz/v1beta1/event.d.ts +80 -0
  4. package/dist/main/cosmos/authz/v1beta1/event.js +163 -0
  5. package/dist/main/cosmos/authz/v1beta1/genesis.d.ts +121 -0
  6. package/dist/main/cosmos/authz/v1beta1/genesis.js +69 -0
  7. package/dist/main/cosmos/authz/v1beta1/pagination.d.ts +128 -0
  8. package/dist/main/cosmos/authz/v1beta1/pagination.js +228 -0
  9. package/dist/main/cosmos/authz/v1beta1/query.d.ts +616 -0
  10. package/dist/main/cosmos/authz/v1beta1/query.js +513 -0
  11. package/dist/main/cosmos/authz/v1beta1/tx.d.ts +264 -0
  12. package/dist/main/cosmos/authz/v1beta1/tx.js +436 -0
  13. package/dist/main/cosmos/index.d.ts +307 -0
  14. package/dist/main/cosmos/index.js +72 -2
  15. package/dist/main/cosmos/staking/v1beta1/authz.d.ts +145 -0
  16. package/dist/main/cosmos/staking/v1beta1/authz.js +225 -0
  17. package/dist/main/cosmos/staking/v1beta1/genesis.d.ts +899 -0
  18. package/dist/main/cosmos/staking/v1beta1/genesis.js +306 -0
  19. package/dist/main/cosmos/staking/v1beta1/pagination.d.ts +128 -0
  20. package/dist/main/cosmos/staking/v1beta1/pagination.js +228 -0
  21. package/dist/main/cosmos/staking/v1beta1/query.d.ts +4165 -0
  22. package/dist/main/cosmos/staking/v1beta1/query.js +2020 -0
  23. package/dist/main/cosmos/staking/v1beta1/staking.d.ts +2059 -0
  24. package/dist/main/cosmos/staking/v1beta1/staking.js +2128 -0
  25. package/dist/main/cosmos/staking/v1beta1/tx.d.ts +748 -0
  26. package/dist/main/cosmos/staking/v1beta1/tx.js +1142 -0
  27. package/dist/main/tendermint/abci/types.d.ts +7075 -0
  28. package/dist/main/tendermint/abci/types.js +4934 -0
  29. package/dist/main/tendermint/crypto/keys.d.ts +38 -0
  30. package/dist/main/tendermint/crypto/keys.js +118 -0
  31. package/dist/main/tendermint/crypto/proof.d.ts +226 -0
  32. package/dist/main/tendermint/crypto/proof.js +427 -0
  33. package/dist/main/tendermint/types/params.d.ts +313 -0
  34. package/dist/main/tendermint/types/params.js +488 -0
  35. package/dist/main/tendermint/types/types.d.ts +1970 -0
  36. package/dist/main/tendermint/types/types.js +1602 -0
  37. package/dist/main/tendermint/types/validator.d.ts +277 -0
  38. package/dist/main/tendermint/types/validator.js +303 -0
  39. package/dist/main/tendermint/version/types.d.ts +71 -0
  40. package/dist/main/tendermint/version/types.js +162 -0
  41. package/dist/module/cosmos/authz/v1beta1/authz.d.ts +167 -0
  42. package/dist/module/cosmos/authz/v1beta1/authz.js +310 -0
  43. package/dist/module/cosmos/authz/v1beta1/event.d.ts +80 -0
  44. package/dist/module/cosmos/authz/v1beta1/event.js +155 -0
  45. package/dist/module/cosmos/authz/v1beta1/genesis.d.ts +121 -0
  46. package/dist/module/cosmos/authz/v1beta1/genesis.js +62 -0
  47. package/dist/module/cosmos/authz/v1beta1/pagination.d.ts +128 -0
  48. package/dist/module/cosmos/authz/v1beta1/pagination.js +220 -0
  49. package/dist/module/cosmos/authz/v1beta1/query.d.ts +616 -0
  50. package/dist/module/cosmos/authz/v1beta1/query.js +502 -0
  51. package/dist/module/cosmos/authz/v1beta1/tx.d.ts +264 -0
  52. package/dist/module/cosmos/authz/v1beta1/tx.js +427 -0
  53. package/dist/module/cosmos/index.d.ts +307 -0
  54. package/dist/module/cosmos/index.js +71 -1
  55. package/dist/module/cosmos/staking/v1beta1/authz.d.ts +145 -0
  56. package/dist/module/cosmos/staking/v1beta1/authz.js +215 -0
  57. package/dist/module/cosmos/staking/v1beta1/genesis.d.ts +899 -0
  58. package/dist/module/cosmos/staking/v1beta1/genesis.js +298 -0
  59. package/dist/module/cosmos/staking/v1beta1/pagination.d.ts +128 -0
  60. package/dist/module/cosmos/staking/v1beta1/pagination.js +220 -0
  61. package/dist/module/cosmos/staking/v1beta1/query.d.ts +4165 -0
  62. package/dist/module/cosmos/staking/v1beta1/query.js +1996 -0
  63. package/dist/module/cosmos/staking/v1beta1/staking.d.ts +2059 -0
  64. package/dist/module/cosmos/staking/v1beta1/staking.js +2098 -0
  65. package/dist/module/cosmos/staking/v1beta1/tx.d.ts +748 -0
  66. package/dist/module/cosmos/staking/v1beta1/tx.js +1128 -0
  67. package/dist/module/tendermint/abci/types.d.ts +7075 -0
  68. package/dist/module/tendermint/abci/types.js +4878 -0
  69. package/dist/module/tendermint/crypto/keys.d.ts +38 -0
  70. package/dist/module/tendermint/crypto/keys.js +111 -0
  71. package/dist/module/tendermint/crypto/proof.d.ts +226 -0
  72. package/dist/module/tendermint/crypto/proof.js +416 -0
  73. package/dist/module/tendermint/types/params.d.ts +313 -0
  74. package/dist/module/tendermint/types/params.js +477 -0
  75. package/dist/module/tendermint/types/types.d.ts +1970 -0
  76. package/dist/module/tendermint/types/types.js +1581 -0
  77. package/dist/module/tendermint/types/validator.d.ts +277 -0
  78. package/dist/module/tendermint/types/validator.js +294 -0
  79. package/dist/module/tendermint/version/types.d.ts +71 -0
  80. package/dist/module/tendermint/version/types.js +154 -0
  81. package/package.json +2 -2
@@ -0,0 +1,436 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MsgClientImpl = exports.MsgRevokeResponse = exports.MsgRevoke = exports.MsgGrantResponse = exports.MsgExec = exports.MsgExecResponse = exports.MsgGrant = exports.protobufPackage = void 0;
7
+ /* eslint-disable */
8
+ const minimal_1 = __importDefault(require("protobufjs/minimal"));
9
+ const any_1 = require("../../../google/protobuf/any");
10
+ const authz_1 = require("./authz");
11
+ exports.protobufPackage = "cosmos.authz.v1beta1";
12
+ function createBaseMsgGrant() {
13
+ return { granter: "", grantee: "", grant: undefined };
14
+ }
15
+ exports.MsgGrant = {
16
+ encode(message, writer = minimal_1.default.Writer.create()) {
17
+ if (message.granter !== "") {
18
+ writer.uint32(10).string(message.granter);
19
+ }
20
+ if (message.grantee !== "") {
21
+ writer.uint32(18).string(message.grantee);
22
+ }
23
+ if (message.grant !== undefined) {
24
+ authz_1.Grant.encode(message.grant, writer.uint32(26).fork()).ldelim();
25
+ }
26
+ return writer;
27
+ },
28
+ decode(input, length) {
29
+ const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
30
+ let end = length === undefined ? reader.len : reader.pos + length;
31
+ const message = createBaseMsgGrant();
32
+ while (reader.pos < end) {
33
+ const tag = reader.uint32();
34
+ switch (tag >>> 3) {
35
+ case 1:
36
+ if (tag !== 10) {
37
+ break;
38
+ }
39
+ message.granter = reader.string();
40
+ continue;
41
+ case 2:
42
+ if (tag !== 18) {
43
+ break;
44
+ }
45
+ message.grantee = reader.string();
46
+ continue;
47
+ case 3:
48
+ if (tag !== 26) {
49
+ break;
50
+ }
51
+ message.grant = authz_1.Grant.decode(reader, reader.uint32());
52
+ continue;
53
+ }
54
+ if ((tag & 7) === 4 || tag === 0) {
55
+ break;
56
+ }
57
+ reader.skipType(tag & 7);
58
+ }
59
+ return message;
60
+ },
61
+ fromJSON(object) {
62
+ return {
63
+ granter: isSet(object.granter) ? String(object.granter) : "",
64
+ grantee: isSet(object.grantee) ? String(object.grantee) : "",
65
+ grant: isSet(object.grant) ? authz_1.Grant.fromJSON(object.grant) : undefined,
66
+ };
67
+ },
68
+ toJSON(message) {
69
+ const obj = {};
70
+ message.granter !== undefined && (obj.granter = message.granter);
71
+ message.grantee !== undefined && (obj.grantee = message.grantee);
72
+ message.grant !== undefined &&
73
+ (obj.grant = message.grant ? authz_1.Grant.toJSON(message.grant) : undefined);
74
+ return obj;
75
+ },
76
+ create(base) {
77
+ return exports.MsgGrant.fromPartial(base !== null && base !== void 0 ? base : {});
78
+ },
79
+ fromPartial(object) {
80
+ var _a, _b;
81
+ const message = createBaseMsgGrant();
82
+ message.granter = (_a = object.granter) !== null && _a !== void 0 ? _a : "";
83
+ message.grantee = (_b = object.grantee) !== null && _b !== void 0 ? _b : "";
84
+ message.grant =
85
+ object.grant !== undefined && object.grant !== null
86
+ ? authz_1.Grant.fromPartial(object.grant)
87
+ : undefined;
88
+ return message;
89
+ },
90
+ };
91
+ function createBaseMsgExecResponse() {
92
+ return { results: [] };
93
+ }
94
+ exports.MsgExecResponse = {
95
+ encode(message, writer = minimal_1.default.Writer.create()) {
96
+ for (const v of message.results) {
97
+ writer.uint32(10).bytes(v);
98
+ }
99
+ return writer;
100
+ },
101
+ decode(input, length) {
102
+ const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
103
+ let end = length === undefined ? reader.len : reader.pos + length;
104
+ const message = createBaseMsgExecResponse();
105
+ while (reader.pos < end) {
106
+ const tag = reader.uint32();
107
+ switch (tag >>> 3) {
108
+ case 1:
109
+ if (tag !== 10) {
110
+ break;
111
+ }
112
+ message.results.push(reader.bytes());
113
+ continue;
114
+ }
115
+ if ((tag & 7) === 4 || tag === 0) {
116
+ break;
117
+ }
118
+ reader.skipType(tag & 7);
119
+ }
120
+ return message;
121
+ },
122
+ fromJSON(object) {
123
+ return {
124
+ results: Array.isArray(object === null || object === void 0 ? void 0 : object.results)
125
+ ? object.results.map((e) => bytesFromBase64(e))
126
+ : [],
127
+ };
128
+ },
129
+ toJSON(message) {
130
+ const obj = {};
131
+ if (message.results) {
132
+ obj.results = message.results.map((e) => base64FromBytes(e !== undefined ? e : new Uint8Array()));
133
+ }
134
+ else {
135
+ obj.results = [];
136
+ }
137
+ return obj;
138
+ },
139
+ create(base) {
140
+ return exports.MsgExecResponse.fromPartial(base !== null && base !== void 0 ? base : {});
141
+ },
142
+ fromPartial(object) {
143
+ var _a;
144
+ const message = createBaseMsgExecResponse();
145
+ message.results = ((_a = object.results) === null || _a === void 0 ? void 0 : _a.map((e) => e)) || [];
146
+ return message;
147
+ },
148
+ };
149
+ function createBaseMsgExec() {
150
+ return { grantee: "", msgs: [] };
151
+ }
152
+ exports.MsgExec = {
153
+ encode(message, writer = minimal_1.default.Writer.create()) {
154
+ if (message.grantee !== "") {
155
+ writer.uint32(10).string(message.grantee);
156
+ }
157
+ for (const v of message.msgs) {
158
+ any_1.Any.encode(v, writer.uint32(18).fork()).ldelim();
159
+ }
160
+ return writer;
161
+ },
162
+ decode(input, length) {
163
+ const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
164
+ let end = length === undefined ? reader.len : reader.pos + length;
165
+ const message = createBaseMsgExec();
166
+ while (reader.pos < end) {
167
+ const tag = reader.uint32();
168
+ switch (tag >>> 3) {
169
+ case 1:
170
+ if (tag !== 10) {
171
+ break;
172
+ }
173
+ message.grantee = reader.string();
174
+ continue;
175
+ case 2:
176
+ if (tag !== 18) {
177
+ break;
178
+ }
179
+ message.msgs.push(any_1.Any.decode(reader, reader.uint32()));
180
+ continue;
181
+ }
182
+ if ((tag & 7) === 4 || tag === 0) {
183
+ break;
184
+ }
185
+ reader.skipType(tag & 7);
186
+ }
187
+ return message;
188
+ },
189
+ fromJSON(object) {
190
+ return {
191
+ grantee: isSet(object.grantee) ? String(object.grantee) : "",
192
+ msgs: Array.isArray(object === null || object === void 0 ? void 0 : object.msgs)
193
+ ? object.msgs.map((e) => any_1.Any.fromJSON(e))
194
+ : [],
195
+ };
196
+ },
197
+ toJSON(message) {
198
+ const obj = {};
199
+ message.grantee !== undefined && (obj.grantee = message.grantee);
200
+ if (message.msgs) {
201
+ obj.msgs = message.msgs.map((e) => (e ? any_1.Any.toJSON(e) : undefined));
202
+ }
203
+ else {
204
+ obj.msgs = [];
205
+ }
206
+ return obj;
207
+ },
208
+ create(base) {
209
+ return exports.MsgExec.fromPartial(base !== null && base !== void 0 ? base : {});
210
+ },
211
+ fromPartial(object) {
212
+ var _a, _b;
213
+ const message = createBaseMsgExec();
214
+ message.grantee = (_a = object.grantee) !== null && _a !== void 0 ? _a : "";
215
+ message.msgs = ((_b = object.msgs) === null || _b === void 0 ? void 0 : _b.map((e) => any_1.Any.fromPartial(e))) || [];
216
+ return message;
217
+ },
218
+ };
219
+ function createBaseMsgGrantResponse() {
220
+ return {};
221
+ }
222
+ exports.MsgGrantResponse = {
223
+ encode(_, writer = minimal_1.default.Writer.create()) {
224
+ return writer;
225
+ },
226
+ decode(input, length) {
227
+ const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
228
+ let end = length === undefined ? reader.len : reader.pos + length;
229
+ const message = createBaseMsgGrantResponse();
230
+ while (reader.pos < end) {
231
+ const tag = reader.uint32();
232
+ switch (tag >>> 3) {
233
+ }
234
+ if ((tag & 7) === 4 || tag === 0) {
235
+ break;
236
+ }
237
+ reader.skipType(tag & 7);
238
+ }
239
+ return message;
240
+ },
241
+ fromJSON(_) {
242
+ return {};
243
+ },
244
+ toJSON(_) {
245
+ const obj = {};
246
+ return obj;
247
+ },
248
+ create(base) {
249
+ return exports.MsgGrantResponse.fromPartial(base !== null && base !== void 0 ? base : {});
250
+ },
251
+ fromPartial(_) {
252
+ const message = createBaseMsgGrantResponse();
253
+ return message;
254
+ },
255
+ };
256
+ function createBaseMsgRevoke() {
257
+ return { granter: "", grantee: "", msgTypeUrl: "" };
258
+ }
259
+ exports.MsgRevoke = {
260
+ encode(message, writer = minimal_1.default.Writer.create()) {
261
+ if (message.granter !== "") {
262
+ writer.uint32(10).string(message.granter);
263
+ }
264
+ if (message.grantee !== "") {
265
+ writer.uint32(18).string(message.grantee);
266
+ }
267
+ if (message.msgTypeUrl !== "") {
268
+ writer.uint32(26).string(message.msgTypeUrl);
269
+ }
270
+ return writer;
271
+ },
272
+ decode(input, length) {
273
+ const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
274
+ let end = length === undefined ? reader.len : reader.pos + length;
275
+ const message = createBaseMsgRevoke();
276
+ while (reader.pos < end) {
277
+ const tag = reader.uint32();
278
+ switch (tag >>> 3) {
279
+ case 1:
280
+ if (tag !== 10) {
281
+ break;
282
+ }
283
+ message.granter = reader.string();
284
+ continue;
285
+ case 2:
286
+ if (tag !== 18) {
287
+ break;
288
+ }
289
+ message.grantee = reader.string();
290
+ continue;
291
+ case 3:
292
+ if (tag !== 26) {
293
+ break;
294
+ }
295
+ message.msgTypeUrl = reader.string();
296
+ continue;
297
+ }
298
+ if ((tag & 7) === 4 || tag === 0) {
299
+ break;
300
+ }
301
+ reader.skipType(tag & 7);
302
+ }
303
+ return message;
304
+ },
305
+ fromJSON(object) {
306
+ return {
307
+ granter: isSet(object.granter) ? String(object.granter) : "",
308
+ grantee: isSet(object.grantee) ? String(object.grantee) : "",
309
+ msgTypeUrl: isSet(object.msgTypeUrl) ? String(object.msgTypeUrl) : "",
310
+ };
311
+ },
312
+ toJSON(message) {
313
+ const obj = {};
314
+ message.granter !== undefined && (obj.granter = message.granter);
315
+ message.grantee !== undefined && (obj.grantee = message.grantee);
316
+ message.msgTypeUrl !== undefined && (obj.msgTypeUrl = message.msgTypeUrl);
317
+ return obj;
318
+ },
319
+ create(base) {
320
+ return exports.MsgRevoke.fromPartial(base !== null && base !== void 0 ? base : {});
321
+ },
322
+ fromPartial(object) {
323
+ var _a, _b, _c;
324
+ const message = createBaseMsgRevoke();
325
+ message.granter = (_a = object.granter) !== null && _a !== void 0 ? _a : "";
326
+ message.grantee = (_b = object.grantee) !== null && _b !== void 0 ? _b : "";
327
+ message.msgTypeUrl = (_c = object.msgTypeUrl) !== null && _c !== void 0 ? _c : "";
328
+ return message;
329
+ },
330
+ };
331
+ function createBaseMsgRevokeResponse() {
332
+ return {};
333
+ }
334
+ exports.MsgRevokeResponse = {
335
+ encode(_, writer = minimal_1.default.Writer.create()) {
336
+ return writer;
337
+ },
338
+ decode(input, length) {
339
+ const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
340
+ let end = length === undefined ? reader.len : reader.pos + length;
341
+ const message = createBaseMsgRevokeResponse();
342
+ while (reader.pos < end) {
343
+ const tag = reader.uint32();
344
+ switch (tag >>> 3) {
345
+ }
346
+ if ((tag & 7) === 4 || tag === 0) {
347
+ break;
348
+ }
349
+ reader.skipType(tag & 7);
350
+ }
351
+ return message;
352
+ },
353
+ fromJSON(_) {
354
+ return {};
355
+ },
356
+ toJSON(_) {
357
+ const obj = {};
358
+ return obj;
359
+ },
360
+ create(base) {
361
+ return exports.MsgRevokeResponse.fromPartial(base !== null && base !== void 0 ? base : {});
362
+ },
363
+ fromPartial(_) {
364
+ const message = createBaseMsgRevokeResponse();
365
+ return message;
366
+ },
367
+ };
368
+ class MsgClientImpl {
369
+ constructor(rpc, opts) {
370
+ this.service = (opts === null || opts === void 0 ? void 0 : opts.service) || "cosmos.authz.v1beta1.Msg";
371
+ this.rpc = rpc;
372
+ this.Grant = this.Grant.bind(this);
373
+ this.Exec = this.Exec.bind(this);
374
+ this.Revoke = this.Revoke.bind(this);
375
+ }
376
+ Grant(request) {
377
+ const data = exports.MsgGrant.encode(request).finish();
378
+ const promise = this.rpc.request(this.service, "Grant", data);
379
+ return promise.then((data) => exports.MsgGrantResponse.decode(minimal_1.default.Reader.create(data)));
380
+ }
381
+ Exec(request) {
382
+ const data = exports.MsgExec.encode(request).finish();
383
+ const promise = this.rpc.request(this.service, "Exec", data);
384
+ return promise.then((data) => exports.MsgExecResponse.decode(minimal_1.default.Reader.create(data)));
385
+ }
386
+ Revoke(request) {
387
+ const data = exports.MsgRevoke.encode(request).finish();
388
+ const promise = this.rpc.request(this.service, "Revoke", data);
389
+ return promise.then((data) => exports.MsgRevokeResponse.decode(minimal_1.default.Reader.create(data)));
390
+ }
391
+ }
392
+ exports.MsgClientImpl = MsgClientImpl;
393
+ var tsProtoGlobalThis = (() => {
394
+ if (typeof globalThis !== "undefined") {
395
+ return globalThis;
396
+ }
397
+ if (typeof self !== "undefined") {
398
+ return self;
399
+ }
400
+ if (typeof window !== "undefined") {
401
+ return window;
402
+ }
403
+ if (typeof global !== "undefined") {
404
+ return global;
405
+ }
406
+ throw "Unable to locate global object";
407
+ })();
408
+ function bytesFromBase64(b64) {
409
+ if (tsProtoGlobalThis.Buffer) {
410
+ return Uint8Array.from(tsProtoGlobalThis.Buffer.from(b64, "base64"));
411
+ }
412
+ else {
413
+ const bin = tsProtoGlobalThis.atob(b64);
414
+ const arr = new Uint8Array(bin.length);
415
+ for (let i = 0; i < bin.length; ++i) {
416
+ arr[i] = bin.charCodeAt(i);
417
+ }
418
+ return arr;
419
+ }
420
+ }
421
+ function base64FromBytes(arr) {
422
+ if (tsProtoGlobalThis.Buffer) {
423
+ return tsProtoGlobalThis.Buffer.from(arr).toString("base64");
424
+ }
425
+ else {
426
+ const bin = [];
427
+ arr.forEach((byte) => {
428
+ bin.push(String.fromCharCode(byte));
429
+ });
430
+ return tsProtoGlobalThis.btoa(bin.join(""));
431
+ }
432
+ }
433
+ function isSet(value) {
434
+ return value !== null && value !== undefined;
435
+ }
436
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29zbW9zL2F1dGh6L3YxYmV0YTEvdHgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsb0JBQW9CO0FBQ3BCLGlFQUFxQztBQUNyQyxzREFBbUQ7QUFDbkQsbUNBQWdDO0FBRW5CLFFBQUEsZUFBZSxHQUFHLHNCQUFzQixDQUFDO0FBa0R0RCxTQUFTLGtCQUFrQjtJQUN6QixPQUFPLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsQ0FBQztBQUN4RCxDQUFDO0FBRVksUUFBQSxRQUFRLEdBQUc7SUFDdEIsTUFBTSxDQUNKLE9BQWlCLEVBQ2pCLFNBQXFCLGlCQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtRQUV4QyxJQUFJLE9BQU8sQ0FBQyxPQUFPLEtBQUssRUFBRSxFQUFFO1lBQzFCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUMzQztRQUNELElBQUksT0FBTyxDQUFDLE9BQU8sS0FBSyxFQUFFLEVBQUU7WUFDMUIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzNDO1FBQ0QsSUFBSSxPQUFPLENBQUMsS0FBSyxLQUFLLFNBQVMsRUFBRTtZQUMvQixhQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ2hFO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUE4QixFQUFFLE1BQWU7UUFDcEQsTUFBTSxNQUFNLEdB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