@shipload/sdk 1.0.0-next.64 → 1.0.0-next.66
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/shipload.d.ts +754 -316
- package/lib/shipload.js +2650 -1336
- package/lib/shipload.js.map +1 -1
- package/lib/shipload.m.js +2564 -1308
- package/lib/shipload.m.js.map +1 -1
- package/lib/testing.d.ts +219 -145
- package/lib/testing.js +910 -557
- package/lib/testing.js.map +1 -1
- package/lib/testing.m.js +910 -557
- package/lib/testing.m.js.map +1 -1
- package/package.json +1 -1
- package/src/capabilities/crafting.test.ts +51 -6
- package/src/capabilities/crafting.ts +19 -4
- package/src/capabilities/gathering.ts +2 -2
- package/src/capabilities/storage.test.ts +26 -0
- package/src/capabilities/storage.ts +6 -6
- package/src/contracts/fund.ts +110 -5
- package/src/contracts/platform.ts +10 -1
- package/src/contracts/server.ts +498 -331
- package/src/data/charters.json +325 -127
- package/src/data/entities.json +24 -24
- package/src/data/items.json +114 -114
- package/src/data/kind-registry.json +3 -3
- package/src/data/kind-registry.ts +5 -0
- package/src/data/recipes.json +56 -95
- package/src/derivation/build-methods.test.ts +59 -1
- package/src/derivation/build-methods.ts +2 -0
- package/src/derivation/capabilities.ts +7 -7
- package/src/derivation/strata.ts +5 -3
- package/src/derivation/tiers.ts +5 -5
- package/src/entity/hydrate.test.ts +156 -0
- package/src/entity/hydrate.ts +86 -0
- package/src/errors.ts +9 -0
- package/src/format.ts +15 -13
- package/src/index-module.ts +33 -5
- package/src/influence/ballot.test.ts +103 -0
- package/src/influence/ballot.ts +98 -0
- package/src/influence/charter-metadata.test.ts +136 -0
- package/src/influence/charter-metadata.ts +236 -0
- package/src/influence/charters.test.ts +51 -65
- package/src/influence/charters.ts +70 -40
- package/src/influence/civic.test.ts +278 -0
- package/src/influence/civic.ts +269 -0
- package/src/influence/constants.ts +30 -9
- package/src/influence/decomp.ts +15 -15
- package/src/influence/duration.ts +42 -6
- package/src/influence/index.ts +49 -6
- package/src/influence/influence.test.ts +76 -9
- package/src/influence/valuation.ts +17 -17
- package/src/managers/actions.ts +65 -37
- package/src/managers/base.ts +4 -0
- package/src/managers/context.ts +3 -1
- package/src/managers/index.ts +5 -2
- package/src/managers/influence.test.ts +18 -20
- package/src/managers/influence.ts +162 -84
- package/src/managers/jobs.test.ts +2 -2
- package/src/managers/jobs.ts +4 -4
- package/src/nft/description.ts +10 -11
- package/src/planner/index.ts +54 -0
- package/src/planner/planner.test.ts +127 -2
- package/src/resolution/display-name.ts +1 -1
- package/src/scheduling/availability.test.ts +113 -0
- package/src/scheduling/availability.ts +48 -8
- package/src/scheduling/jobs.ts +1 -1
- package/src/scheduling/projection.ts +2 -16
- package/src/scheduling/task-cargo.test.ts +62 -1
- package/src/scheduling/task-cargo.ts +25 -10
- package/src/scheduling/task-effects.test.ts +35 -0
- package/src/scheduling/task-effects.ts +34 -0
- package/src/scheduling/unwrap.test.ts +3 -3
- package/src/scheduling/unwrap.ts +3 -3
- package/src/shipload.ts +23 -4
- package/src/travel/reach.test.ts +86 -0
- package/src/travel/reach.ts +23 -10
- package/src/travel/route-build.test.ts +63 -0
- package/src/travel/route-build.ts +60 -0
- package/src/travel/travel.ts +2 -1
- package/src/types.ts +6 -2
- package/src/utils/hash.ts +18 -2
package/package.json
CHANGED
|
@@ -1,11 +1,25 @@
|
|
|
1
|
+
import {UInt16, UInt32} from '@wharfkit/antelope'
|
|
1
2
|
import {describe, expect, test} from 'bun:test'
|
|
3
|
+
import type {ServerContract} from '../contracts'
|
|
4
|
+
import {computeInputMass} from '../derivation/crafting'
|
|
5
|
+
import {getRecipe} from '../data/recipes-runtime'
|
|
2
6
|
import {
|
|
3
7
|
calc_craft_energy,
|
|
4
8
|
calcClusterIntake,
|
|
5
9
|
calcClustercraftDuration,
|
|
10
|
+
craftEnergyCost,
|
|
6
11
|
INTAKE_RATE,
|
|
7
12
|
} from './crafting'
|
|
8
13
|
|
|
14
|
+
function crafterLane(drain: number): ServerContract.Types.crafter_lane {
|
|
15
|
+
return {
|
|
16
|
+
slot_index: UInt16.from(0),
|
|
17
|
+
speed: UInt16.from(1000),
|
|
18
|
+
drain: UInt32.from(drain),
|
|
19
|
+
output_pct: UInt16.from(100),
|
|
20
|
+
} as unknown as ServerContract.Types.crafter_lane
|
|
21
|
+
}
|
|
22
|
+
|
|
9
23
|
test('calc_craft_energy does not clamp above the old uint16 ceiling', () => {
|
|
10
24
|
const energy = calc_craft_energy(30, 400_000_000)
|
|
11
25
|
expect(Number(energy)).toBeGreaterThan(65535)
|
|
@@ -13,10 +27,10 @@ test('calc_craft_energy does not clamp above the old uint16 ceiling', () => {
|
|
|
13
27
|
|
|
14
28
|
describe('calcClusterIntake', () => {
|
|
15
29
|
test('is floor(sourcedMass / INTAKE_RATE)', () => {
|
|
16
|
-
expect(INTAKE_RATE).toBe(
|
|
17
|
-
expect(calcClusterIntake(
|
|
18
|
-
expect(calcClusterIntake(
|
|
19
|
-
expect(calcClusterIntake(
|
|
30
|
+
expect(INTAKE_RATE).toBe(360)
|
|
31
|
+
expect(calcClusterIntake(360)).toBe(1)
|
|
32
|
+
expect(calcClusterIntake(359)).toBe(0)
|
|
33
|
+
expect(calcClusterIntake(196_800)).toBe(546)
|
|
20
34
|
})
|
|
21
35
|
|
|
22
36
|
test('zero sourced mass (all own-hold) charges no intake', () => {
|
|
@@ -28,8 +42,39 @@ describe('calcClustercraftDuration', () => {
|
|
|
28
42
|
test('adds intake to the base craft duration', () => {
|
|
29
43
|
// calc_craft_duration = floor(inputMass/speed) + 1
|
|
30
44
|
const speed = 1000
|
|
31
|
-
const inputMass =
|
|
32
|
-
const sourcedMass =
|
|
45
|
+
const inputMass = 1000 // base craft = 100 + 1 = 101s
|
|
46
|
+
const sourcedMass = 720 // intake = 2s
|
|
33
47
|
expect(calcClustercraftDuration(speed, inputMass, sourcedMass).toNumber()).toBe(103)
|
|
34
48
|
})
|
|
35
49
|
})
|
|
50
|
+
|
|
51
|
+
describe('craftEnergyCost', () => {
|
|
52
|
+
const OUTPUT_ITEM_ID = 10001
|
|
53
|
+
const DRAIN = 100_000
|
|
54
|
+
|
|
55
|
+
test('matches calc_craft_energy against the recipe input mass times units', () => {
|
|
56
|
+
const recipe = getRecipe(OUTPUT_ITEM_ID)!
|
|
57
|
+
const lane = crafterLane(DRAIN)
|
|
58
|
+
const units = 5
|
|
59
|
+
|
|
60
|
+
const cost = craftEnergyCost(lane, recipe, units)
|
|
61
|
+
|
|
62
|
+
const expected = Number(calc_craft_energy(DRAIN, computeInputMass(OUTPUT_ITEM_ID) * units))
|
|
63
|
+
expect(cost).toBe(expected)
|
|
64
|
+
})
|
|
65
|
+
|
|
66
|
+
test('is 0 for non-positive units', () => {
|
|
67
|
+
const recipe = getRecipe(OUTPUT_ITEM_ID)!
|
|
68
|
+
const lane = crafterLane(DRAIN)
|
|
69
|
+
expect(craftEnergyCost(lane, recipe, 0)).toBe(0)
|
|
70
|
+
expect(craftEnergyCost(lane, recipe, -1)).toBe(0)
|
|
71
|
+
})
|
|
72
|
+
|
|
73
|
+
test('scales with unit count', () => {
|
|
74
|
+
const recipe = getRecipe(OUTPUT_ITEM_ID)!
|
|
75
|
+
const lane = crafterLane(DRAIN)
|
|
76
|
+
const one = craftEnergyCost(lane, recipe, 1)
|
|
77
|
+
const ten = craftEnergyCost(lane, recipe, 10)
|
|
78
|
+
expect(ten).toBeGreaterThan(one)
|
|
79
|
+
})
|
|
80
|
+
})
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import {UInt32} from '@wharfkit/antelope'
|
|
2
|
-
import {CRAFT_ENERGY_DIVISOR} from '../types'
|
|
2
|
+
import {CRAFT_ENERGY_DIVISOR, MASS_STAT_SCALE} from '../types'
|
|
3
3
|
import type {CrafterStats, EntityCapabilities} from '../types/capabilities'
|
|
4
|
+
import type {ServerContract} from '../contracts'
|
|
5
|
+
import {getItem} from '../data/catalog'
|
|
6
|
+
import type {Recipe} from '../data/recipes-runtime'
|
|
4
7
|
|
|
5
8
|
export interface CrafterCapability {
|
|
6
9
|
crafter: CrafterStats
|
|
@@ -11,12 +14,11 @@ export function capsHasCrafter(caps: EntityCapabilities): boolean {
|
|
|
11
14
|
}
|
|
12
15
|
|
|
13
16
|
export function calc_craft_duration(speed: number, totalInputMass: number): UInt32 {
|
|
14
|
-
const duration = Math.floor(totalInputMass / speed)
|
|
17
|
+
const duration = Math.floor((totalInputMass * MASS_STAT_SCALE) / speed)
|
|
15
18
|
return UInt32.from(duration + 1)
|
|
16
19
|
}
|
|
17
20
|
|
|
18
|
-
|
|
19
|
-
export const INTAKE_RATE = 36000
|
|
21
|
+
export const INTAKE_RATE = 360
|
|
20
22
|
|
|
21
23
|
// Mirrors calc_cluster_intake: whole seconds of intake for cargo sourced off other cluster members.
|
|
22
24
|
export function calcClusterIntake(sourcedMass: number): number {
|
|
@@ -39,6 +41,19 @@ export function calc_craft_energy(drain: number, totalInputMass: number): UInt32
|
|
|
39
41
|
return UInt32.from(Math.min(Math.max(raw + 1, 1000), 4294967295))
|
|
40
42
|
}
|
|
41
43
|
|
|
44
|
+
export function craftEnergyCost(
|
|
45
|
+
lane: ServerContract.Types.crafter_lane,
|
|
46
|
+
recipe: Recipe,
|
|
47
|
+
units: number
|
|
48
|
+
): number {
|
|
49
|
+
if (units <= 0) return 0
|
|
50
|
+
const inputMassPerUnit = recipe.inputs.reduce(
|
|
51
|
+
(sum, input) => sum + getItem(input.itemId).mass * input.quantity,
|
|
52
|
+
0
|
|
53
|
+
)
|
|
54
|
+
return Number(calc_craft_energy(lane.drain.toNumber(), inputMassPerUnit * units))
|
|
55
|
+
}
|
|
56
|
+
|
|
42
57
|
// Craft-identical today; forked so build balance can diverge from craft without touching it.
|
|
43
58
|
export function calc_build_duration(speed: number, totalInputMass: number): UInt32 {
|
|
44
59
|
return calc_craft_duration(speed, totalInputMass)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {UInt32} from '@wharfkit/antelope'
|
|
2
2
|
import type {GathererStats} from '../types/capabilities'
|
|
3
|
-
import {PRECISION} from '../types'
|
|
3
|
+
import {MASS_STAT_SCALE, PRECISION} from '../types'
|
|
4
4
|
|
|
5
5
|
const GATHER_TIME_SCALE = 100
|
|
6
6
|
export const GATHER_MASS_DIVISOR = 228
|
|
@@ -17,7 +17,7 @@ function gather_duration_raw(
|
|
|
17
17
|
|
|
18
18
|
if (yieldValue === 0 || richness === 0) return 0
|
|
19
19
|
|
|
20
|
-
const massFactor = itemMass / GATHER_MASS_DIVISOR
|
|
20
|
+
const massFactor = (itemMass * MASS_STAT_SCALE) / GATHER_MASS_DIVISOR
|
|
21
21
|
const depthPenalty = 1 + stratum / DEPTH_PENALTY_DIVISOR
|
|
22
22
|
const richnessMul = richness / 1000
|
|
23
23
|
return (quantity * massFactor * GATHER_TIME_SCALE * depthPenalty) / (yieldValue * richnessMul)
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import {expect, test} from 'bun:test'
|
|
2
|
+
import {UInt32, UInt64} from '@wharfkit/antelope'
|
|
3
|
+
import {hasSpaceForMass, isFull, isFullFromMass} from './storage'
|
|
4
|
+
|
|
5
|
+
test('hasSpaceForMass accepts raw numbers', () => {
|
|
6
|
+
expect(hasSpaceForMass(100, 40, 50)).toBe(true)
|
|
7
|
+
expect(hasSpaceForMass(100, 60, 50)).toBe(false)
|
|
8
|
+
expect(hasSpaceForMass(100, 50, 50)).toBe(true)
|
|
9
|
+
})
|
|
10
|
+
|
|
11
|
+
test('hasSpaceForMass accepts wrapped values', () => {
|
|
12
|
+
expect(hasSpaceForMass(UInt64.from(100), UInt64.from(40), UInt64.from(50))).toBe(true)
|
|
13
|
+
expect(hasSpaceForMass(UInt64.from(100), UInt32.from(60), UInt32.from(50))).toBe(false)
|
|
14
|
+
})
|
|
15
|
+
|
|
16
|
+
test('isFullFromMass accepts raw numbers', () => {
|
|
17
|
+
expect(isFullFromMass(100, 100)).toBe(true)
|
|
18
|
+
expect(isFullFromMass(100, 101)).toBe(true)
|
|
19
|
+
expect(isFullFromMass(100, 99)).toBe(false)
|
|
20
|
+
})
|
|
21
|
+
|
|
22
|
+
test('isFull accepts raw numbers on the entity', () => {
|
|
23
|
+
expect(isFull({capacity: 100, cargomass: 100})).toBe(true)
|
|
24
|
+
expect(isFull({capacity: 100, cargomass: 99})).toBe(false)
|
|
25
|
+
expect(isFull({capacity: UInt32.from(100), cargomass: UInt32.from(120)})).toBe(true)
|
|
26
|
+
})
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {UInt16, UInt32, UInt64, type UInt64Type} from '@wharfkit/antelope'
|
|
1
|
+
import {UInt16, UInt32, UInt64, type UInt32Type, type UInt64Type} from '@wharfkit/antelope'
|
|
2
2
|
import {ServerContract} from '../contracts'
|
|
3
3
|
import type {StorageCapability} from '../types/capabilities'
|
|
4
4
|
import {getItem} from '../data/catalog'
|
|
@@ -9,11 +9,11 @@ export interface HasCargo {
|
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
export interface HasCapacity {
|
|
12
|
-
capacity:
|
|
12
|
+
capacity: UInt32Type
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
export interface HasCargomass {
|
|
16
|
-
cargomass:
|
|
16
|
+
cargomass: UInt32Type
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
interface MassInput {
|
|
@@ -75,15 +75,15 @@ export function hasSpaceForMass(
|
|
|
75
75
|
currentMass: UInt64Type,
|
|
76
76
|
additionalMass: UInt64Type
|
|
77
77
|
): boolean {
|
|
78
|
-
return UInt64.from(currentMass).adding(additionalMass).lte(capacity)
|
|
78
|
+
return UInt64.from(currentMass).adding(additionalMass).lte(UInt64.from(capacity))
|
|
79
79
|
}
|
|
80
80
|
|
|
81
81
|
export function isFull(entity: HasCapacity & HasCargomass): boolean {
|
|
82
|
-
return UInt64.from(entity.cargomass).gte(entity.capacity)
|
|
82
|
+
return UInt64.from(entity.cargomass).gte(UInt64.from(entity.capacity))
|
|
83
83
|
}
|
|
84
84
|
|
|
85
85
|
export function isFullFromMass(capacity: UInt64Type, cargoMass: UInt64Type): boolean {
|
|
86
|
-
return UInt64.from(cargoMass).gte(capacity)
|
|
86
|
+
return UInt64.from(cargoMass).gte(UInt64.from(capacity))
|
|
87
87
|
}
|
|
88
88
|
|
|
89
89
|
export interface CargoStack {
|
package/src/contracts/fund.ts
CHANGED
|
@@ -10,17 +10,24 @@ import {ABI, Asset, Blob, Name, Struct, UInt16, UInt32, UInt64} from '@wharfkit/
|
|
|
10
10
|
import type {ActionOptions, ContractArgs, PartialBy, Table} from '@wharfkit/contract'
|
|
11
11
|
import {Contract as BaseContract} from '@wharfkit/contract'
|
|
12
12
|
export const abiBlob = Blob.from(
|
|
13
|
-
'
|
|
13
|
+
'DmVvc2lvOjphYmkvMS4yABkLYWNjcnVlZF9yb3cAAg50b2tlbl9jb250cmFjdARuYW1lB2JhbGFuY2UFYXNzZXQIYWRkdG9rZW4AAg50b2tlbl9jb250cmFjdARuYW1lDHRva2VuX3N5bWJvbAZzeW1ib2wJYmVuZWZfcm93AAIHYWNjb3VudARuYW1lA2JwcwZ1aW50MTYLYmVuZWZpY2lhcnkAAgdhY2NvdW50BG5hbWUDYnBzBnVpbnQxNgVjbGFpbQABE2JlbmVmaWNpYXJ5X2FjY291bnQEbmFtZQdjb2xsZWN0AAALY29sbGVjdGZlZXMAAApjdXJzb3Jfcm93AAENbmV4dF9hc3NldF9pZAZ1aW50NjQIZGVsdG9rZW4AAQ50b2tlbl9jb250cmFjdARuYW1lB2dldGxvdHMAAgtsb3dlcl9ib3VuZAZ1aW50NjQIbWF4X2xvdHMGdWludDMyC2dldHRlbmRhYmxlAAEIbWF4X2xvdHMGdWludDMyCGxvdF9pbmZvAAYIYXNzZXRfaWQGdWludDY0BWdyYWRlBG5hbWUKYXVjdGlvbl9pZAZ1aW50NjQHaXRlbV9pZAZ1aW50MTYIcXVhbnRpdHkGdWludDMyBXN0YXRzBnVpbnQ2NAtsb3RzX3Jlc3VsdAACBGxvdHMKbG90X2luZm9bXQRuZXh0BnVpbnQ2NAhsb3RzX3JvdwADCGFzc2V0X2lkBnVpbnQ2NAVncmFkZQRuYW1lCmF1Y3Rpb25faWQGdWludDY0CXJlc2N1ZW5mdAADCWFzc2V0X2lkcwh1aW50NjRbXQJ0bwRuYW1lBG1lbW8Gc3RyaW5nCHNldGJlbmVmAAEIcmVnaXN0cnkNYmVuZWZpY2lhcnlbXQlzZXRtYXJrZXQAAgZtYXJrZXQEbmFtZRFtYWtlcl9tYXJrZXRwbGFjZQRuYW1lCHNldHRlcm1zAAMFZ3JhZGUEbmFtZQxzdGFydGluZ19iaWQFYXNzZXQIZHVyYXRpb24GdWludDMyDHNldHRpbmdzX3JvdwAEBm1hcmtldARuYW1lDnRva2VuX2NvbnRyYWN0BG5hbWUMdG9rZW5fc3ltYm9sBnN5bWJvbBFtYWtlcl9tYXJrZXRwbGFjZQRuYW1lCHNldHRva2VuAAIOdG9rZW5fY29udHJhY3QEbmFtZQx0b2tlbl9zeW1ib2wGc3ltYm9sBXN3ZWVwAAEIbWF4X2xvdHMGdWludDMyBHRlbmQAAQlhc3NldF9pZHMIdWludDY0W10JdGVybXNfcm93AAMFZ3JhZGUEbmFtZQxzdGFydGluZ19iaWQFYXNzZXQIZHVyYXRpb24GdWludDMyCXRva2VuX3JvdwACDnRva2VuX2NvbnRyYWN0BG5hbWUMdG9rZW5fc3ltYm9sBnN5bWJvbAR3aXBlAAAPAAAAU0GaUzIIYWRkdG9rZW4AAAAAAADpTEQFY2xhaW0AAAAAICMVI0UHY29sbGVjdAAAsFIrIxUjRQtjb2xsZWN0ZmVlcwAAAABTQZqjSghkZWx0b2tlbgAAAAAAZxqzYgdnZXRsb3RzAABUPCZNlbNiC2dldHRlbmRhYmxlAAAAyGsqjbC6CXJlc2N1ZW5mdAAAAABLTXWywghzZXRiZW5lZgAAAMgKXiOzwglzZXRtYXJrZXQAAAAAWF6Vs8IIc2V0dGVybXMAAAAAU0Gas8IIc2V0dG9rZW4AAAAAAICqFMcFc3dlZXAAAAAAAACQpsoEdGVuZAAAAAAAAKCq4wR3aXBlAAcAAAAgKX0RMgNpNjQAAAthY2NydWVkX3JvdwAAAADgpaY6A2k2NAAACWJlbmVmX3JvdwAAAABciq9GA2k2NAAACmN1cnNvcl9yb3cAAAAAAIAzjQNpNjQAAAhsb3RzX3JvdwAAAJhNl7PCA2k2NAAADHNldHRpbmdzX3JvdwAAAAAALK/KA2k2NAAACXRlcm1zX3JvdwAAAADgqSDNA2k2NAAACXRva2VuX3JvdwAAAAACAAAAAGcas2ILbG90c19yZXN1bHQAVDwmTZWzYgh1aW50NjRbXQ=='
|
|
14
14
|
)
|
|
15
15
|
export const abi = ABI.from(abiBlob)
|
|
16
16
|
export namespace Types {
|
|
17
17
|
@Struct.type('accrued_row')
|
|
18
18
|
export class accrued_row extends Struct {
|
|
19
19
|
@Struct.field(Name)
|
|
20
|
-
declare
|
|
20
|
+
declare token_contract: Name
|
|
21
21
|
@Struct.field(Asset)
|
|
22
22
|
declare balance: Asset
|
|
23
23
|
}
|
|
24
|
+
@Struct.type('addtoken')
|
|
25
|
+
export class addtoken extends Struct {
|
|
26
|
+
@Struct.field(Name)
|
|
27
|
+
declare token_contract: Name
|
|
28
|
+
@Struct.field(Asset.Symbol)
|
|
29
|
+
declare token_symbol: Asset.Symbol
|
|
30
|
+
}
|
|
24
31
|
@Struct.type('benef_row')
|
|
25
32
|
export class benef_row extends Struct {
|
|
26
33
|
@Struct.field(Name)
|
|
@@ -40,11 +47,54 @@ export namespace Types {
|
|
|
40
47
|
@Struct.field(Name)
|
|
41
48
|
declare beneficiary_account: Name
|
|
42
49
|
}
|
|
50
|
+
@Struct.type('collect')
|
|
51
|
+
export class collect extends Struct {}
|
|
52
|
+
@Struct.type('collectfees')
|
|
53
|
+
export class collectfees extends Struct {}
|
|
43
54
|
@Struct.type('cursor_row')
|
|
44
55
|
export class cursor_row extends Struct {
|
|
45
56
|
@Struct.field(UInt64)
|
|
46
57
|
declare next_asset_id: UInt64
|
|
47
58
|
}
|
|
59
|
+
@Struct.type('deltoken')
|
|
60
|
+
export class deltoken extends Struct {
|
|
61
|
+
@Struct.field(Name)
|
|
62
|
+
declare token_contract: Name
|
|
63
|
+
}
|
|
64
|
+
@Struct.type('getlots')
|
|
65
|
+
export class getlots extends Struct {
|
|
66
|
+
@Struct.field(UInt64)
|
|
67
|
+
declare lower_bound: UInt64
|
|
68
|
+
@Struct.field(UInt32)
|
|
69
|
+
declare max_lots: UInt32
|
|
70
|
+
}
|
|
71
|
+
@Struct.type('gettendable')
|
|
72
|
+
export class gettendable extends Struct {
|
|
73
|
+
@Struct.field(UInt32)
|
|
74
|
+
declare max_lots: UInt32
|
|
75
|
+
}
|
|
76
|
+
@Struct.type('lot_info')
|
|
77
|
+
export class lot_info extends Struct {
|
|
78
|
+
@Struct.field(UInt64)
|
|
79
|
+
declare asset_id: UInt64
|
|
80
|
+
@Struct.field(Name)
|
|
81
|
+
declare grade: Name
|
|
82
|
+
@Struct.field(UInt64)
|
|
83
|
+
declare auction_id: UInt64
|
|
84
|
+
@Struct.field(UInt16)
|
|
85
|
+
declare item_id: UInt16
|
|
86
|
+
@Struct.field(UInt32)
|
|
87
|
+
declare quantity: UInt32
|
|
88
|
+
@Struct.field(UInt64)
|
|
89
|
+
declare stats: UInt64
|
|
90
|
+
}
|
|
91
|
+
@Struct.type('lots_result')
|
|
92
|
+
export class lots_result extends Struct {
|
|
93
|
+
@Struct.field(lot_info, {array: true})
|
|
94
|
+
declare lots: lot_info[]
|
|
95
|
+
@Struct.field(UInt64)
|
|
96
|
+
declare next: UInt64
|
|
97
|
+
}
|
|
48
98
|
@Struct.type('lots_row')
|
|
49
99
|
export class lots_row extends Struct {
|
|
50
100
|
@Struct.field(UInt64)
|
|
@@ -102,11 +152,16 @@ export namespace Types {
|
|
|
102
152
|
@Struct.field(Asset.Symbol)
|
|
103
153
|
declare token_symbol: Asset.Symbol
|
|
104
154
|
}
|
|
105
|
-
@Struct.type('
|
|
106
|
-
export class
|
|
155
|
+
@Struct.type('sweep')
|
|
156
|
+
export class sweep extends Struct {
|
|
107
157
|
@Struct.field(UInt32)
|
|
108
158
|
declare max_lots: UInt32
|
|
109
159
|
}
|
|
160
|
+
@Struct.type('tend')
|
|
161
|
+
export class tend extends Struct {
|
|
162
|
+
@Struct.field(UInt64, {array: true})
|
|
163
|
+
declare asset_ids: UInt64[]
|
|
164
|
+
}
|
|
110
165
|
@Struct.type('terms_row')
|
|
111
166
|
export class terms_row extends Struct {
|
|
112
167
|
@Struct.field(Name)
|
|
@@ -116,6 +171,15 @@ export namespace Types {
|
|
|
116
171
|
@Struct.field(UInt32)
|
|
117
172
|
declare duration: UInt32
|
|
118
173
|
}
|
|
174
|
+
@Struct.type('token_row')
|
|
175
|
+
export class token_row extends Struct {
|
|
176
|
+
@Struct.field(Name)
|
|
177
|
+
declare token_contract: Name
|
|
178
|
+
@Struct.field(Asset.Symbol)
|
|
179
|
+
declare token_symbol: Asset.Symbol
|
|
180
|
+
}
|
|
181
|
+
@Struct.type('wipe')
|
|
182
|
+
export class wipe extends Struct {}
|
|
119
183
|
}
|
|
120
184
|
export const TableMap = {
|
|
121
185
|
accrued: Types.accrued_row,
|
|
@@ -124,6 +188,7 @@ export const TableMap = {
|
|
|
124
188
|
lots: Types.lots_row,
|
|
125
189
|
settings: Types.settings_row,
|
|
126
190
|
terms: Types.terms_row,
|
|
191
|
+
tokens: Types.token_row,
|
|
127
192
|
}
|
|
128
193
|
export interface TableTypes {
|
|
129
194
|
accrued: Types.accrued_row
|
|
@@ -132,6 +197,7 @@ export interface TableTypes {
|
|
|
132
197
|
lots: Types.lots_row
|
|
133
198
|
settings: Types.settings_row
|
|
134
199
|
terms: Types.terms_row
|
|
200
|
+
tokens: Types.token_row
|
|
135
201
|
}
|
|
136
202
|
export type RowType<T> = T extends keyof TableTypes ? TableTypes[T] : any
|
|
137
203
|
export type TableNames = keyof TableTypes
|
|
@@ -142,9 +208,25 @@ export namespace ActionParams {
|
|
|
142
208
|
bps: UInt16Type
|
|
143
209
|
}
|
|
144
210
|
}
|
|
211
|
+
export interface addtoken {
|
|
212
|
+
token_contract: NameType
|
|
213
|
+
token_symbol: Asset.SymbolType
|
|
214
|
+
}
|
|
145
215
|
export interface claim {
|
|
146
216
|
beneficiary_account: NameType
|
|
147
217
|
}
|
|
218
|
+
export interface collect {}
|
|
219
|
+
export interface collectfees {}
|
|
220
|
+
export interface deltoken {
|
|
221
|
+
token_contract: NameType
|
|
222
|
+
}
|
|
223
|
+
export interface getlots {
|
|
224
|
+
lower_bound: UInt64Type
|
|
225
|
+
max_lots: UInt32Type
|
|
226
|
+
}
|
|
227
|
+
export interface gettendable {
|
|
228
|
+
max_lots: UInt32Type
|
|
229
|
+
}
|
|
148
230
|
export interface rescuenft {
|
|
149
231
|
asset_ids: UInt64Type[]
|
|
150
232
|
to: NameType
|
|
@@ -166,20 +248,37 @@ export namespace ActionParams {
|
|
|
166
248
|
token_contract: NameType
|
|
167
249
|
token_symbol: Asset.SymbolType
|
|
168
250
|
}
|
|
169
|
-
export interface
|
|
251
|
+
export interface sweep {
|
|
170
252
|
max_lots: UInt32Type
|
|
171
253
|
}
|
|
254
|
+
export interface tend {
|
|
255
|
+
asset_ids: UInt64Type[]
|
|
256
|
+
}
|
|
257
|
+
export interface wipe {}
|
|
172
258
|
}
|
|
173
259
|
export interface ActionNameParams {
|
|
260
|
+
addtoken: ActionParams.addtoken
|
|
174
261
|
claim: ActionParams.claim
|
|
262
|
+
collect: ActionParams.collect
|
|
263
|
+
collectfees: ActionParams.collectfees
|
|
264
|
+
deltoken: ActionParams.deltoken
|
|
265
|
+
getlots: ActionParams.getlots
|
|
266
|
+
gettendable: ActionParams.gettendable
|
|
175
267
|
rescuenft: ActionParams.rescuenft
|
|
176
268
|
setbenef: ActionParams.setbenef
|
|
177
269
|
setmarket: ActionParams.setmarket
|
|
178
270
|
setterms: ActionParams.setterms
|
|
179
271
|
settoken: ActionParams.settoken
|
|
272
|
+
sweep: ActionParams.sweep
|
|
180
273
|
tend: ActionParams.tend
|
|
274
|
+
wipe: ActionParams.wipe
|
|
181
275
|
}
|
|
182
276
|
export type ActionNames = keyof ActionNameParams
|
|
277
|
+
export interface ActionReturnValues {
|
|
278
|
+
getlots: Types.lots_result
|
|
279
|
+
gettendable: UInt64[]
|
|
280
|
+
}
|
|
281
|
+
export type ActionReturnNames = keyof ActionReturnValues
|
|
183
282
|
export class Contract extends BaseContract {
|
|
184
283
|
constructor(args: PartialBy<ContractArgs, 'abi' | 'account'>) {
|
|
185
284
|
super({
|
|
@@ -195,6 +294,12 @@ export class Contract extends BaseContract {
|
|
|
195
294
|
): Action {
|
|
196
295
|
return super.action(name, data, options)
|
|
197
296
|
}
|
|
297
|
+
readonly<T extends ActionReturnNames>(
|
|
298
|
+
name: T,
|
|
299
|
+
data?: ActionNameParams[T]
|
|
300
|
+
): ActionReturnValues[T] {
|
|
301
|
+
return super.readonly(name, data) as unknown as ActionReturnValues[T]
|
|
302
|
+
}
|
|
198
303
|
table<T extends TableNames>(name: T, scope?: NameType): Table<RowType<T>> {
|
|
199
304
|
return super.table(name, scope, TableMap[name])
|
|
200
305
|
}
|
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
import type {ActionOptions, ContractArgs, PartialBy, Table} from '@wharfkit/contract'
|
|
29
29
|
import {Contract as BaseContract} from '@wharfkit/contract'
|
|
30
30
|
export const abiBlob = Blob.from(
|
|
31
|
-
'DmVvc2lvOjphYmkvMS4yACELYmFsYW5jZV9yb3cAAg50b2tlbl9jb250cmFjdARuYW1lB2JhbGFuY2UFYXNzZXQKY2FyZ29faXRlbQAFB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCHF1YW50aXR5BnVpbnQzMgllbnRpdHlfaWQHdWludDY0PwpjbGVhcnRhYmxlAAMKdGFibGVfbmFtZQRuYW1lBXNjb3BlBW5hbWU/CG1heF9yb3dzB3VpbnQ2ND8FY2xvc2UAAwVvd25lcgRuYW1lDnRva2VuX2NvbnRyYWN0BG5hbWUMdG9rZW5fc3ltYm9sBnN5bWJvbAtjb21wYW55X3JvdwACB2FjY291bnQEbmFtZQRuYW1lBnN0cmluZwpjb250cmlidXRlAAYEZ2FtZQRuYW1lBnBsYXllcgRuYW1lCWVudGl0eV9pZAZ1aW50NjQBeAVpbnQ2NAF5BWludDY0BmJ1bmRsZQxjYXJnb19pdGVtW10MZGViaXRkZXBvc2l0AAUFb3duZXIEbmFtZQV0b2tlbgRuYW1lBmxvY2tlZAVhc3NldAtmZWVfYWNjb3VudARuYW1lA2ZlZQVhc3NldA5kZXBvc2l0Y2ZnX3JvdwACDnRva2VuX2NvbnRyYWN0BG5hbWUMdG9rZW5fc3ltYm9sBnN5bWJvbAZlbmFibGUAAQdlbmFibGVkBGJvb2wKZW5hYmxlZ2FtZQACCGNvbnRyYWN0BG5hbWUHZW5hYmxlZARib29sDGZvdW5kY29tcGFueQACB2FjY291bnQEbmFtZQRuYW1lBnN0cmluZwtnYW1lX2NvbmZpZwAEBHNlZWQLY2hlY2tzdW0yNTYJZXBvY2h0aW1lBnVpbnQzMgVzdGFydA50aW1lX3BvaW50X3NlYwNlbmQOdGltZV9wb2ludF9zZWMJZ2FtZV9tZXRhAAQEbmFtZQZzdHJpbmcLZGVzY3JpcHRpb24Gc3RyaW5nA3VybAZzdHJpbmcHdmVyc2lvbgZzdHJpbmcIZ2FtZV9yb3cABAhjb250cmFjdARuYW1lBmNvbmZpZwtnYW1lX2NvbmZpZwRtZXRhCWdhbWVfbWV0YQVzdGF0ZQpnYW1lX3N0YXRlCmdhbWVfc3RhdGUAAQdlbmFibGVkBGJvb2wMbW9kdWxlX2VudHJ5AAIEdHlwZQV1aW50OAlpbnN0YWxsZWQOcGFja2VkX21vZHVsZT8Eb3BlbgADBW93bmVyBG5hbWUOdG9rZW5fY29udHJhY3QEbmFtZQx0b2tlbl9zeW1ib2wGc3ltYm9sDXBhY2tlZF9tb2R1bGUAAgdpdGVtX2lkBnVpbnQxNgVzdGF0cwZ1aW50NjQMcmVsZ2F0ZWFzc2V0AAEIYXNzZXRfaWQGdWludDY0DHJlbGdhdGVvd25lcgABBW93bmVyBG5hbWUMc2V0ZXBvY2h0aW1lAAIIY29udHJhY3QEbmFtZQllcG9jaHRpbWUGdWludDMyCHNldHRva2VuAAIOdG9rZW5fY29udHJhY3QEbmFtZQx0b2tlbl9zeW1ib2wGc3ltYm9sCXN0YXJ0Z2FtZQAECGNvbnRyYWN0BG5hbWUGY29uZmlnC2dhbWVfY29uZmlnBG1ldGEJZ2FtZV9tZXRhBXN0YXRlCmdhbWVfc3RhdGUJc3RhdGVfcm93AAEHZW5hYmxlZARib29sC3Vud3JhcGNhcmdvAAMEZ2FtZQRuYW1lBW93bmVyBG5hbWUIYXNzZXRfaWQGdWludDY0DnVud3JhcGN1c3Rfcm93AAIIYXNzZXRfaWQGdWludDY0BW93bmVyBG5hbWUMdW53cmFwZW50aXR5AAMEZ2FtZQRuYW1lBW93bmVyBG5hbWUIYXNzZXRfaWQGdWludDY0CnVwZGF0ZWdhbWUAAghjb250cmFjdARuYW1lBG1ldGEJZ2FtZV9tZXRhBHdpcGUAAAh3aXRoZHJhdwADBW93bmVyBG5hbWUIcXVhbnRpdHkOZXh0ZW5kZWRfYXNzZXQEbWVtbwZzdHJpbmcJd3JhcGNhcmdvAAYEZ2FtZQRuYW1lBW93bmVyBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAhuZXh1c19pZAZ1aW50NjQIY2FyZ29faWQGdWludDY0CHF1YW50aXR5BnVpbnQ2NAp3cmFwZW50aXR5AAQEZ2FtZQRuYW1lBW93bmVyBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAhuZXh1c19pZAZ1aW50NjQMd3JhcGdhdGVfcm93AAMFb3duZXIEbmFtZQRnYW1lBG5hbWUNbGFzdF9hc3NldF9pZAZ1aW50NjQUAICKx+RrVEQKY2xlYXJ0YWJsZb4BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNsZWFydGFibGUKc3VtbWFyeTogJ0RFQlVHOiBjbGVhcnRhYmxlIGFjdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAAAAAhWlEBWNsb3Nl4gItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY2xvc2UKc3VtbWFyeTogJ0Nsb3NlIGEgZGVwb3NpdCBiYWxhbmNlIHJvdycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KCkNsb3NlIHRoZSBvd25lcidzIGRlcG9zaXQgYmFsYW5jZSByb3cgZm9yIHRoZSBnaXZlbiB0b2tlbiBhbmQgZnJlZSBpdHMgUkFNLiBUaGUgYmFsYW5jZSBtdXN0IGJlIHplcm8gYmVmb3JlIGNsb3NpbmcuIFJlcXVpcmVzIHRoZSBvd25lcidzIGF1dGhvcml0eS4AgMr6uJsnRQpjb250cmlidXRlAJAdplWl7I5KDGRlYml0ZGVwb3NpdJ0ELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGRlYml0ZGVwb3NpdApzdW1tYXJ5OiAnRGViaXQgYSBkZXBvc2l0IGJhbGFuY2UgZm9yIGEgd3JhcCBvcGVyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gY2FsbGVkIGlubGluZSBieSBhIHJlZ2lzdGVyZWQsIGVuYWJsZWQgZ2FtZSBjb250cmFjdCBvbmx5LiBEZWJpdHMgdGhlIG93bmVyJ3MgZGVwb3NpdCBiYWxhbmNlIGJ5IHRoZSBsb2NrZWQgYW1vdW50IHBsdXMgdGhlIGZlZSwgYW5kIGNyZWRpdHMgdGhlIGZlZSB0byB0aGUgY29uZmlndXJlZCBmZWUgYWNjb3VudC4gVXNlZCBieSBhIGdhbWUncyB3cmFwIGZsb3cgdG8gY29sbGVjdCB0aGUgd3JhcCBjb3N0LiBDYW5ub3QgYmUgY2FsbGVkIGRpcmVjdGx5IGJ5IHBsYXllcnMgb3IgdW5yZWdpc3RlcmVkIGFjY291bnRzLgAAAACoeMxUBmVuYWJsZfMBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGVuYWJsZQpzdW1tYXJ5OiAnRW5hYmxlL2Rpc2FibGUgcGxhdGZvcm0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGUgcGxhdGZvcm0gY29udHJhY3QuAICShql4zFQKZW5hYmxlZ2FtZfwBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGVuYWJsZWdhbWUKc3VtbWFyeTogJ0VuYWJsZS9kaXNiYWJsZSBhIGdhbWUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGUgc3BlY2lmaWVkIGdhbWUgY29udHJhY3Qu4KepkqI0NV0MZm91bmRjb21wYW55gwItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZm91bmRjb21wYW55CnN1bW1hcnk6ICdGb3VuZCBhIG5ldyBjb21wYW55JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKRm91bmQgYSBuZXcgY29tcGFueSBpbiB0aGUgU2hpcGxvYWQgcGxhdGZvcm0gY29udHJhY3QuAAAAAAAwVaUEb3BlbpsDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IG9wZW4Kc3VtbWFyeTogJ09wZW4gYSBkZXBvc2l0IGJhbGFuY2Ugcm93JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKT3BlbiBhIHplcm8tYmFsYW5jZSBkZXBvc2l0IHJvdyBmb3IgdGhlIGdpdmVuIG93bmVyIGFuZCB0b2tlbiwgd2l0aCBSQU0gcGFpZCBieSB0aGUgb3duZXIuIEhhcyBubyBlZmZlY3QgaWYgdGhlIHJvdyBhbHJlYWR5IGV4aXN0cy4gTXVzdCBiZSBjYWxsZWQgYmVmb3JlIHRoZSBvd25lciBjYW4gcmVjZWl2ZSB0b2tlbiBkZXBvc2l0cyBvciB3cmFwIHJlZnVuZHMukBXGRmXDoroMcmVsZ2F0ZWFzc2V0AHDV5FRlw6K6DHJlbGdhdGVvd25lcgCgpMsN0aqywgxzZXRlcG9jaHRpbWXEAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzZXRlcG9jaHRpbWUKc3VtbWFyeTogJ0RFQlVHOiBvdmVycmlkZSBhIGdhbWUnJ3MgZXBvY2ggdGltZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKT3ZlcnJpZGUgdGhlIGVwb2NoIGR1cmF0aW9uIGluIHRoZSBjb25maWd1cmF0aW9uIG9mIHRoZSBzcGVjaWZpZWQgZ2FtZSBjb250cmFjdC4gUmVxdWlyZXMgcGxhdGZvcm0gY29udHJhY3QgYXV0aG9yaXR5LgAAAFNBmrPCCHNldHRva2VunQMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogc2V0dG9rZW4Kc3VtbWFyeTogJ1NldCB0aGUgYWNjZXB0ZWQgZGVwb3NpdCB0b2tlbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KCkFkbWluIGFjdGlvbiB0aGF0IHNldHMgdGhlIGFjY2VwdGVkIGRlcG9zaXQgdG9rZW4gKGNvbnRyYWN0IGFjY291bnQgYW5kIHN5bWJvbCkgZm9yIHRoZSBwbGF0Zm9ybS4gQWxsIHBsYXllciBkZXBvc2l0cyBhbmQgd3JhcCBjb3N0cyBhcmUgZGVub21pbmF0ZWQgaW4gdGhpcyB0b2tlbi4gUmVxdWlyZXMgcGxhdGZvcm0gY29udHJhY3QgYXV0aG9yaXR5LgAAUNKwfE3GCXN0YXJ0Z2FtZf8BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHN0YXJ0Z2FtZQpzdW1tYXJ5OiAnU3RhcnQgYSBuZXcgZ2FtZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KClN0YXJ0IGEgbmV3IGdhbWUgb2YgU2hpcGxvYWQgZGVwbG95ZWQgdG8gYSBuZXcgY29udHJhY3QuACi7BlVz+dQLdW53cmFwY2FyZ2/PBC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1bndyYXBjYXJnbwpzdW1tYXJ5OiAnRGVwb3NpdCBhbiBORlQgaW50byBhIGhvc3QgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpEZXBvc2l0IGFuIEF0b21pY0Fzc2V0cyBORlQgaW50byBhIGhvc3QgZW50aXR5J3MgY2FyZ28uIFBhaXJzIHdpdGggYW4gYXRvbWljYXNzZXRzOjp0cmFuc2ZlciBjYXJyeWluZyB0aGUgJ3Vud3JhcCcgbWVtbyBpbiB0aGUgc2FtZSB0cmFuc2FjdGlvbi4gVGhlIGNhbGxlciBtdXN0IG93biB0aGUgaG9zdCwgdGhlIGhvc3QgbXVzdCBoYXZlIGxvYWRlcnMsIGFuZCB0aGUgaG9zdCBtdXN0IGhhdmUgY2FwYWNpdHkgaGVhZHJvb20gZm9yIHRoZSB1bndyYXBwZWQgbWFzcy4gU2NoZWR1bGVzIGEgVEFTS19VTldSQVAgb24gdGhlIGhvc3QgdGhhdCwgb24gcmVzb2x1dGlvbiwgcGxhY2VzIHRoZSBkZWNvZGVkIGl0ZW0gaW50byB0aGUgaG9zdCdzIGNhcmdvIGFuZCBidXJucyB0aGUgTkZULuCzy1NVc/nUDHVud3JhcGVudGl0eeIELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHVud3JhcGVudGl0eQpzdW1tYXJ5OiAnRGVwbG95IGFuIGVudGl0eSBORlQgZGlyZWN0bHkgdG8gYSBuZXh1cycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRGVwbG95IGEgcGFja2VkLWVudGl0eSBBdG9taWNBc3NldHMgTkZUIChvcmJpdGFsIHZlc3NlbDogc2hpcCBvciBjb250YWluZXIpIGRpcmVjdGx5IGFzIGEgbGl2ZSBlbnRpdHkuIFBhaXJzIHdpdGggYW4gYXRvbWljYXNzZXRzOjp0cmFuc2ZlciBjYXJyeWluZyB0aGUgJ2RlcGxveScgbWVtbyBpbiB0aGUgc2FtZSB0cmFuc2FjdGlvbi4gVGhlIE5GVCBpcyBidXJuZWQsIGEgbmV3IGVudGl0eSByb3cgaXMgZW1wbGFjZWQgYXQgdGhlIE5GVCdzIHdyYXAgb3JpZ2luIHBhaWQgYnkgdGhlIG93bmVyLCBhbmQgVEFTS19UUkFWRUwgcGx1cyBUQVNLX1JFQ0hBUkdFIGFyZSBxdWV1ZWQgdG8gZGVsaXZlciB0aGUgZW50aXR5IHRvIHRoZSB0YXJnZXQgbmV4dXMgYW5kIGJyaW5nIGl0IHRvIGZ1bGwgZW5lcmd5LgCAkoapbFLVCnVwZGF0ZWdhbWWNAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1cGRhdGVnYW1lCnN1bW1hcnk6ICdVcGRhdGUgZ2FtZSBpbmZvcm1hdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KClVwZGF0ZSB0aGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNwZWNpZmllZCBnYW1lIGNvbnRyYWN0LgoKLS0tAAAAAACgquMEd2lwZbIBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHdpcGUKc3VtbWFyeTogJ0RFQlVHOiB3aXBlIGFjdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAANzc1LLjCHdpdGhkcmF3lwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd2l0aGRyYXcKc3VtbWFyeTogJ1dpdGhkcmF3IHRva2VucyBmcm9tIGEgZGVwb3NpdCBiYWxhbmNlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKV2l0aGRyYXcgdG9rZW5zIGZyb20gdGhlIG93bmVyJ3MgZGVwb3NpdCBiYWxhbmNlLiBEZWJpdHMgdGhlIGxlZGdlciBieSB0aGUgcmVxdWVzdGVkIGFtb3VudCBhbmQgdHJhbnNmZXJzIHRoZSB0b2tlbnMgdG8gdGhlIG93bmVyLiBSZXF1aXJlcyBhIHN1ZmZpY2llbnQgYmFsYW5jZSBhbmQgdGhlIG93bmVyJ3MgYXV0aG9yaXR5LgAAoOwaVM3lCXdyYXBjYXJnbwAAgM8uT1XN5Qp3cmFwZW50aXR5tQQtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd3JhcGVudGl0eQpzdW1tYXJ5OiAnV3JhcCBhIGRlcGxveWVkIGVudGl0eSBpbnRvIGFuIE5GVCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKV3JhcCBhbiBlbnRpdHkgaW50byBhbiBBdG9taWNBc3NldHMgTkZUIG1pbnRlZCB0byBpdHMgb3duZXIuIFRoZSBlbnRpdHkgbXVzdCBiZSBhdCBhIG5leHVzLCBpZGxlIHdpdGggZW1wdHkgY2FyZ28sIGFuZCBoYXZlIGFuIG5mdGNvbmZpZyBtYXBwaW5nIGZvciBpdHMgaXRlbSBpZC4gRXJhc2VzIHRoZSBlbnRpdHkgYW5kIG1pbnRzIHRoZSBORlQgaW5saW5lLCBwcmVzZXJ2aW5nIGl0cyBzdGF0cyBhbmQgaW5zdGFsbGVkIG1vZHVsZXM7IHRoZSBwbGF5ZXIgcGF5cyBSQU0gZm9yIHRoZSBuZXcgYXNzZXQgcm93LiBSZXF1aXJlcyB0aGUgb3duZXIncyBhY3RpdmUgcGVybWlzc2lvbiAobm8gc2Vzc2lvbi1rZXkgY29tcGF0aWJpbGl0eSkuBwAAAEChaaI5A2k2NAAAC2JhbGFuY2Vfcm93AAAAwE9TJUUDaTY0AAALY29tcGFueV9yb3cAAFsoO0yrSgNpNjQAAA5kZXBvc2l0Y2ZnX3JvdwAAAAAArKRhA2k2NAAACGdhbWVfcm93AAAAAACVTcYDaTY0AAAJc3RhdGVfcm93AEDGGlVz+dQDaTY0AAAOdW53cmFwY3VzdF9yb3cAAAAqG1bN5QNpNjQAAAx3cmFwZ2F0ZV9yb3cBE1NoaXBsb2FkIChQbGF0Zm9ybSkTU2hpcGxvYWQgKFBsYXRmb3JtKQAAAAA='
|
|
31
|
+
'DmVvc2lvOjphYmkvMS4yACILYmFsYW5jZV9yb3cAAg50b2tlbl9jb250cmFjdARuYW1lB2JhbGFuY2UFYXNzZXQKY2FyZ29faXRlbQAFB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCHF1YW50aXR5BnVpbnQzMgllbnRpdHlfaWQHdWludDY0PwpjbGVhcnRhYmxlAAMKdGFibGVfbmFtZQRuYW1lBXNjb3BlBW5hbWU/CG1heF9yb3dzB3VpbnQ2ND8FY2xvc2UAAwVvd25lcgRuYW1lDnRva2VuX2NvbnRyYWN0BG5hbWUMdG9rZW5fc3ltYm9sBnN5bWJvbAtjb21wYW55X3JvdwACB2FjY291bnQEbmFtZQRuYW1lBnN0cmluZwpjb250cmlidXRlAAYEZ2FtZQRuYW1lBnBsYXllcgRuYW1lCWVudGl0eV9pZAZ1aW50NjQBeAVpbnQ2NAF5BWludDY0BmJ1bmRsZQxjYXJnb19pdGVtW10JZGJncmVmdW5kAAEGb3duZXJzBm5hbWVbXQxkZWJpdGRlcG9zaXQABQVvd25lcgRuYW1lBXRva2VuBG5hbWUGbG9ja2VkBWFzc2V0C2ZlZV9hY2NvdW50BG5hbWUDZmVlBWFzc2V0DmRlcG9zaXRjZmdfcm93AAIOdG9rZW5fY29udHJhY3QEbmFtZQx0b2tlbl9zeW1ib2wGc3ltYm9sBmVuYWJsZQABB2VuYWJsZWQEYm9vbAplbmFibGVnYW1lAAIIY29udHJhY3QEbmFtZQdlbmFibGVkBGJvb2wMZm91bmRjb21wYW55AAIHYWNjb3VudARuYW1lBG5hbWUGc3RyaW5nC2dhbWVfY29uZmlnAAQEc2VlZAtjaGVja3N1bTI1NgllcG9jaHRpbWUGdWludDMyBXN0YXJ0DnRpbWVfcG9pbnRfc2VjA2VuZA50aW1lX3BvaW50X3NlYwlnYW1lX21ldGEABARuYW1lBnN0cmluZwtkZXNjcmlwdGlvbgZzdHJpbmcDdXJsBnN0cmluZwd2ZXJzaW9uBnN0cmluZwhnYW1lX3JvdwAECGNvbnRyYWN0BG5hbWUGY29uZmlnC2dhbWVfY29uZmlnBG1ldGEJZ2FtZV9tZXRhBXN0YXRlCmdhbWVfc3RhdGUKZ2FtZV9zdGF0ZQABB2VuYWJsZWQEYm9vbAxtb2R1bGVfZW50cnkAAgR0eXBlBXVpbnQ4CWluc3RhbGxlZA5wYWNrZWRfbW9kdWxlPwRvcGVuAAMFb3duZXIEbmFtZQ50b2tlbl9jb250cmFjdARuYW1lDHRva2VuX3N5bWJvbAZzeW1ib2wNcGFja2VkX21vZHVsZQACB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAxyZWxnYXRlYXNzZXQAAQhhc3NldF9pZAZ1aW50NjQMcmVsZ2F0ZW93bmVyAAEFb3duZXIEbmFtZQxzZXRlcG9jaHRpbWUAAghjb250cmFjdARuYW1lCWVwb2NodGltZQZ1aW50MzIIc2V0dG9rZW4AAg50b2tlbl9jb250cmFjdARuYW1lDHRva2VuX3N5bWJvbAZzeW1ib2wJc3RhcnRnYW1lAAQIY29udHJhY3QEbmFtZQZjb25maWcLZ2FtZV9jb25maWcEbWV0YQlnYW1lX21ldGEFc3RhdGUKZ2FtZV9zdGF0ZQlzdGF0ZV9yb3cAAQdlbmFibGVkBGJvb2wLdW53cmFwY2FyZ28AAwRnYW1lBG5hbWUFb3duZXIEbmFtZQhhc3NldF9pZAZ1aW50NjQOdW53cmFwY3VzdF9yb3cAAghhc3NldF9pZAZ1aW50NjQFb3duZXIEbmFtZQx1bndyYXBlbnRpdHkAAwRnYW1lBG5hbWUFb3duZXIEbmFtZQhhc3NldF9pZAZ1aW50NjQKdXBkYXRlZ2FtZQACCGNvbnRyYWN0BG5hbWUEbWV0YQlnYW1lX21ldGEEd2lwZQAACHdpdGhkcmF3AAMFb3duZXIEbmFtZQhxdWFudGl0eQ5leHRlbmRlZF9hc3NldARtZW1vBnN0cmluZwl3cmFwY2FyZ28ABgRnYW1lBG5hbWUFb3duZXIEbmFtZQllbnRpdHlfaWQGdWludDY0CG5leHVzX2lkBnVpbnQ2NAhjYXJnb19pZAZ1aW50NjQIcXVhbnRpdHkGdWludDY0CndyYXBlbnRpdHkABARnYW1lBG5hbWUFb3duZXIEbmFtZQllbnRpdHlfaWQGdWludDY0CG5leHVzX2lkBnVpbnQ2NAx3cmFwZ2F0ZV9yb3cAAwVvd25lcgRuYW1lBGdhbWUEbmFtZQ1sYXN0X2Fzc2V0X2lkBnVpbnQ2NBUAgIrH5GtURApjbGVhcnRhYmxlvgEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY2xlYXJ0YWJsZQpzdW1tYXJ5OiAnREVCVUc6IGNsZWFydGFibGUgYWN0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAAACFaUQFY2xvc2XiAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjbG9zZQpzdW1tYXJ5OiAnQ2xvc2UgYSBkZXBvc2l0IGJhbGFuY2Ugcm93JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKQ2xvc2UgdGhlIG93bmVyJ3MgZGVwb3NpdCBiYWxhbmNlIHJvdyBmb3IgdGhlIGdpdmVuIHRva2VuIGFuZCBmcmVlIGl0cyBSQU0uIFRoZSBiYWxhbmNlIG11c3QgYmUgemVybyBiZWZvcmUgY2xvc2luZy4gUmVxdWlyZXMgdGhlIG93bmVyJ3MgYXV0aG9yaXR5LgCAyvq4mydFCmNvbnRyaWJ1dGUAAABIUy912UkJZGJncmVmdW5kAJAdplWl7I5KDGRlYml0ZGVwb3NpdJ0ELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGRlYml0ZGVwb3NpdApzdW1tYXJ5OiAnRGViaXQgYSBkZXBvc2l0IGJhbGFuY2UgZm9yIGEgd3JhcCBvcGVyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gY2FsbGVkIGlubGluZSBieSBhIHJlZ2lzdGVyZWQsIGVuYWJsZWQgZ2FtZSBjb250cmFjdCBvbmx5LiBEZWJpdHMgdGhlIG93bmVyJ3MgZGVwb3NpdCBiYWxhbmNlIGJ5IHRoZSBsb2NrZWQgYW1vdW50IHBsdXMgdGhlIGZlZSwgYW5kIGNyZWRpdHMgdGhlIGZlZSB0byB0aGUgY29uZmlndXJlZCBmZWUgYWNjb3VudC4gVXNlZCBieSBhIGdhbWUncyB3cmFwIGZsb3cgdG8gY29sbGVjdCB0aGUgd3JhcCBjb3N0LiBDYW5ub3QgYmUgY2FsbGVkIGRpcmVjdGx5IGJ5IHBsYXllcnMgb3IgdW5yZWdpc3RlcmVkIGFjY291bnRzLgAAAACoeMxUBmVuYWJsZfMBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGVuYWJsZQpzdW1tYXJ5OiAnRW5hYmxlL2Rpc2FibGUgcGxhdGZvcm0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGUgcGxhdGZvcm0gY29udHJhY3QuAICShql4zFQKZW5hYmxlZ2FtZfwBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGVuYWJsZWdhbWUKc3VtbWFyeTogJ0VuYWJsZS9kaXNiYWJsZSBhIGdhbWUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNTgxMTM3ODIjZDNiZjI5MGZkZGVkZGJiN2QzMmFhODk3ZTlmN2U5ZTEzYTJhZTQ0OTU2MTQyZTIzZWI0N2I3NzA5NmEyZWE4ZAoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGUgc3BlY2lmaWVkIGdhbWUgY29udHJhY3Qu4KepkqI0NV0MZm91bmRjb21wYW55gwItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZm91bmRjb21wYW55CnN1bW1hcnk6ICdGb3VuZCBhIG5ldyBjb21wYW55JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKRm91bmQgYSBuZXcgY29tcGFueSBpbiB0aGUgU2hpcGxvYWQgcGxhdGZvcm0gY29udHJhY3QuAAAAAAAwVaUEb3BlbpsDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IG9wZW4Kc3VtbWFyeTogJ09wZW4gYSBkZXBvc2l0IGJhbGFuY2Ugcm93JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKT3BlbiBhIHplcm8tYmFsYW5jZSBkZXBvc2l0IHJvdyBmb3IgdGhlIGdpdmVuIG93bmVyIGFuZCB0b2tlbiwgd2l0aCBSQU0gcGFpZCBieSB0aGUgb3duZXIuIEhhcyBubyBlZmZlY3QgaWYgdGhlIHJvdyBhbHJlYWR5IGV4aXN0cy4gTXVzdCBiZSBjYWxsZWQgYmVmb3JlIHRoZSBvd25lciBjYW4gcmVjZWl2ZSB0b2tlbiBkZXBvc2l0cyBvciB3cmFwIHJlZnVuZHMukBXGRmXDoroMcmVsZ2F0ZWFzc2V0AHDV5FRlw6K6DHJlbGdhdGVvd25lcgCgpMsN0aqywgxzZXRlcG9jaHRpbWXEAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzZXRlcG9jaHRpbWUKc3VtbWFyeTogJ0RFQlVHOiBvdmVycmlkZSBhIGdhbWUnJ3MgZXBvY2ggdGltZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKT3ZlcnJpZGUgdGhlIGVwb2NoIGR1cmF0aW9uIGluIHRoZSBjb25maWd1cmF0aW9uIG9mIHRoZSBzcGVjaWZpZWQgZ2FtZSBjb250cmFjdC4gUmVxdWlyZXMgcGxhdGZvcm0gY29udHJhY3QgYXV0aG9yaXR5LgAAAFNBmrPCCHNldHRva2VunQMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogc2V0dG9rZW4Kc3VtbWFyeTogJ1NldCB0aGUgYWNjZXB0ZWQgZGVwb3NpdCB0b2tlbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KCkFkbWluIGFjdGlvbiB0aGF0IHNldHMgdGhlIGFjY2VwdGVkIGRlcG9zaXQgdG9rZW4gKGNvbnRyYWN0IGFjY291bnQgYW5kIHN5bWJvbCkgZm9yIHRoZSBwbGF0Zm9ybS4gQWxsIHBsYXllciBkZXBvc2l0cyBhbmQgd3JhcCBjb3N0cyBhcmUgZGVub21pbmF0ZWQgaW4gdGhpcyB0b2tlbi4gUmVxdWlyZXMgcGxhdGZvcm0gY29udHJhY3QgYXV0aG9yaXR5LgAAUNKwfE3GCXN0YXJ0Z2FtZf8BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHN0YXJ0Z2FtZQpzdW1tYXJ5OiAnU3RhcnQgYSBuZXcgZ2FtZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KClN0YXJ0IGEgbmV3IGdhbWUgb2YgU2hpcGxvYWQgZGVwbG95ZWQgdG8gYSBuZXcgY29udHJhY3QuACi7BlVz+dQLdW53cmFwY2FyZ2/PBC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1bndyYXBjYXJnbwpzdW1tYXJ5OiAnRGVwb3NpdCBhbiBORlQgaW50byBhIGhvc3QgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpEZXBvc2l0IGFuIEF0b21pY0Fzc2V0cyBORlQgaW50byBhIGhvc3QgZW50aXR5J3MgY2FyZ28uIFBhaXJzIHdpdGggYW4gYXRvbWljYXNzZXRzOjp0cmFuc2ZlciBjYXJyeWluZyB0aGUgJ3Vud3JhcCcgbWVtbyBpbiB0aGUgc2FtZSB0cmFuc2FjdGlvbi4gVGhlIGNhbGxlciBtdXN0IG93biB0aGUgaG9zdCwgdGhlIGhvc3QgbXVzdCBoYXZlIGxvYWRlcnMsIGFuZCB0aGUgaG9zdCBtdXN0IGhhdmUgY2FwYWNpdHkgaGVhZHJvb20gZm9yIHRoZSB1bndyYXBwZWQgbWFzcy4gU2NoZWR1bGVzIGEgVEFTS19VTldSQVAgb24gdGhlIGhvc3QgdGhhdCwgb24gcmVzb2x1dGlvbiwgcGxhY2VzIHRoZSBkZWNvZGVkIGl0ZW0gaW50byB0aGUgaG9zdCdzIGNhcmdvIGFuZCBidXJucyB0aGUgTkZULuCzy1NVc/nUDHVud3JhcGVudGl0eeIELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHVud3JhcGVudGl0eQpzdW1tYXJ5OiAnRGVwbG95IGFuIGVudGl0eSBORlQgZGlyZWN0bHkgdG8gYSBuZXh1cycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRGVwbG95IGEgcGFja2VkLWVudGl0eSBBdG9taWNBc3NldHMgTkZUIChvcmJpdGFsIHZlc3NlbDogc2hpcCBvciBjb250YWluZXIpIGRpcmVjdGx5IGFzIGEgbGl2ZSBlbnRpdHkuIFBhaXJzIHdpdGggYW4gYXRvbWljYXNzZXRzOjp0cmFuc2ZlciBjYXJyeWluZyB0aGUgJ2RlcGxveScgbWVtbyBpbiB0aGUgc2FtZSB0cmFuc2FjdGlvbi4gVGhlIE5GVCBpcyBidXJuZWQsIGEgbmV3IGVudGl0eSByb3cgaXMgZW1wbGFjZWQgYXQgdGhlIE5GVCdzIHdyYXAgb3JpZ2luIHBhaWQgYnkgdGhlIG93bmVyLCBhbmQgVEFTS19UUkFWRUwgcGx1cyBUQVNLX1JFQ0hBUkdFIGFyZSBxdWV1ZWQgdG8gZGVsaXZlciB0aGUgZW50aXR5IHRvIHRoZSB0YXJnZXQgbmV4dXMgYW5kIGJyaW5nIGl0IHRvIGZ1bGwgZW5lcmd5LgCAkoapbFLVCnVwZGF0ZWdhbWWNAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1cGRhdGVnYW1lCnN1bW1hcnk6ICdVcGRhdGUgZ2FtZSBpbmZvcm1hdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE1ODExMzc4MiNkM2JmMjkwZmRkZWRkYmI3ZDMyYWE4OTdlOWY3ZTllMTNhMmFlNDQ5NTYxNDJlMjNlYjQ3Yjc3MDk2YTJlYThkCgotLS0KClVwZGF0ZSB0aGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNwZWNpZmllZCBnYW1lIGNvbnRyYWN0LgoKLS0tAAAAAACgquMEd2lwZbIBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHdpcGUKc3VtbWFyeTogJ0RFQlVHOiB3aXBlIGFjdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAANzc1LLjCHdpdGhkcmF3lwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd2l0aGRyYXcKc3VtbWFyeTogJ1dpdGhkcmF3IHRva2VucyBmcm9tIGEgZGVwb3NpdCBiYWxhbmNlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTU4MTEzNzgyI2QzYmYyOTBmZGRlZGRiYjdkMzJhYTg5N2U5ZjdlOWUxM2EyYWU0NDk1NjE0MmUyM2ViNDdiNzcwOTZhMmVhOGQKCi0tLQoKV2l0aGRyYXcgdG9rZW5zIGZyb20gdGhlIG93bmVyJ3MgZGVwb3NpdCBiYWxhbmNlLiBEZWJpdHMgdGhlIGxlZGdlciBieSB0aGUgcmVxdWVzdGVkIGFtb3VudCBhbmQgdHJhbnNmZXJzIHRoZSB0b2tlbnMgdG8gdGhlIG93bmVyLiBSZXF1aXJlcyBhIHN1ZmZpY2llbnQgYmFsYW5jZSBhbmQgdGhlIG93bmVyJ3MgYXV0aG9yaXR5LgAAoOwaVM3lCXdyYXBjYXJnbwAAgM8uT1XN5Qp3cmFwZW50aXR5tQQtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd3JhcGVudGl0eQpzdW1tYXJ5OiAnV3JhcCBhIGRlcGxveWVkIGVudGl0eSBpbnRvIGFuIE5GVCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKV3JhcCBhbiBlbnRpdHkgaW50byBhbiBBdG9taWNBc3NldHMgTkZUIG1pbnRlZCB0byBpdHMgb3duZXIuIFRoZSBlbnRpdHkgbXVzdCBiZSBhdCBhIG5leHVzLCBpZGxlIHdpdGggZW1wdHkgY2FyZ28sIGFuZCBoYXZlIGFuIG5mdGNvbmZpZyBtYXBwaW5nIGZvciBpdHMgaXRlbSBpZC4gRXJhc2VzIHRoZSBlbnRpdHkgYW5kIG1pbnRzIHRoZSBORlQgaW5saW5lLCBwcmVzZXJ2aW5nIGl0cyBzdGF0cyBhbmQgaW5zdGFsbGVkIG1vZHVsZXM7IHRoZSBwbGF5ZXIgcGF5cyBSQU0gZm9yIHRoZSBuZXcgYXNzZXQgcm93LiBSZXF1aXJlcyB0aGUgb3duZXIncyBhY3RpdmUgcGVybWlzc2lvbiAobm8gc2Vzc2lvbi1rZXkgY29tcGF0aWJpbGl0eSkuBwAAAEChaaI5A2k2NAAAC2JhbGFuY2Vfcm93AAAAwE9TJUUDaTY0AAALY29tcGFueV9yb3cAAFsoO0yrSgNpNjQAAA5kZXBvc2l0Y2ZnX3JvdwAAAAAArKRhA2k2NAAACGdhbWVfcm93AAAAAACVTcYDaTY0AAAJc3RhdGVfcm93AEDGGlVz+dQDaTY0AAAOdW53cmFwY3VzdF9yb3cAAAAqG1bN5QNpNjQAAAx3cmFwZ2F0ZV9yb3cBE1NoaXBsb2FkIChQbGF0Zm9ybSkTU2hpcGxvYWQgKFBsYXRmb3JtKQAAAAA='
|
|
32
32
|
)
|
|
33
33
|
export const abi = ABI.from(abiBlob)
|
|
34
34
|
export namespace Types {
|
|
@@ -106,6 +106,11 @@ export namespace Types {
|
|
|
106
106
|
@Struct.field(cargo_item, {array: true})
|
|
107
107
|
declare bundle: cargo_item[]
|
|
108
108
|
}
|
|
109
|
+
@Struct.type('dbgrefund')
|
|
110
|
+
export class dbgrefund extends Struct {
|
|
111
|
+
@Struct.field(Name, {array: true})
|
|
112
|
+
declare owners: Name[]
|
|
113
|
+
}
|
|
109
114
|
@Struct.type('debitdeposit')
|
|
110
115
|
export class debitdeposit extends Struct {
|
|
111
116
|
@Struct.field(Name)
|
|
@@ -382,6 +387,9 @@ export namespace ActionParams {
|
|
|
382
387
|
y: Int64Type
|
|
383
388
|
bundle: Type.cargo_item[]
|
|
384
389
|
}
|
|
390
|
+
export interface dbgrefund {
|
|
391
|
+
owners: NameType[]
|
|
392
|
+
}
|
|
385
393
|
export interface debitdeposit {
|
|
386
394
|
owner: NameType
|
|
387
395
|
token: NameType
|
|
@@ -464,6 +472,7 @@ export interface ActionNameParams {
|
|
|
464
472
|
cleartable: ActionParams.cleartable
|
|
465
473
|
close: ActionParams.close
|
|
466
474
|
contribute: ActionParams.contribute
|
|
475
|
+
dbgrefund: ActionParams.dbgrefund
|
|
467
476
|
debitdeposit: ActionParams.debitdeposit
|
|
468
477
|
enable: ActionParams.enable
|
|
469
478
|
enablegame: ActionParams.enablegame
|