@shipload/sdk 1.0.0-next.3 → 1.0.0-next.30
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 +1847 -962
- package/lib/shipload.js +9088 -4854
- package/lib/shipload.js.map +1 -1
- package/lib/shipload.m.js +8957 -4805
- package/lib/shipload.m.js.map +1 -1
- package/lib/testing.d.ts +856 -0
- package/lib/testing.js +3739 -0
- package/lib/testing.js.map +1 -0
- package/lib/testing.m.js +3733 -0
- package/lib/testing.m.js.map +1 -0
- package/package.json +15 -2
- package/src/capabilities/craftable.ts +51 -0
- package/src/capabilities/crafting.test.ts +7 -0
- package/src/capabilities/crafting.ts +3 -3
- package/src/capabilities/gathering.ts +17 -7
- package/src/capabilities/index.ts +0 -1
- package/src/capabilities/modules.ts +6 -0
- package/src/capabilities/storage.ts +16 -1
- package/src/contracts/platform.ts +231 -3
- package/src/contracts/server.ts +816 -471
- package/src/data/capabilities.ts +14 -329
- package/src/data/capability-formulas.ts +76 -0
- package/src/data/catalog.ts +0 -5
- package/src/data/colors.ts +14 -47
- package/src/data/entities.json +46 -10
- package/src/data/item-ids.ts +15 -12
- package/src/data/items.json +302 -38
- package/src/data/kind-registry.json +85 -0
- package/src/data/kind-registry.ts +150 -0
- package/src/data/metadata.ts +100 -31
- package/src/data/recipes-runtime.ts +3 -23
- package/src/data/recipes.json +250 -113
- package/src/derivation/build-methods.ts +45 -0
- package/src/derivation/capabilities.ts +415 -0
- package/src/derivation/capability-mappings.ts +117 -0
- package/src/derivation/crafting.ts +23 -24
- package/src/derivation/index.ts +17 -2
- package/src/derivation/reserve-regen.ts +34 -0
- package/src/derivation/resources.ts +125 -38
- package/src/derivation/stars.test.ts +51 -0
- package/src/derivation/stars.ts +15 -0
- package/src/derivation/stats.ts +6 -6
- package/src/derivation/stratum.ts +15 -19
- package/src/derivation/tiers.ts +28 -7
- package/src/entities/entity.ts +98 -0
- package/src/entities/gamestate.ts +3 -28
- package/src/entities/makers.ts +91 -136
- package/src/entities/slot-multiplier.ts +39 -0
- package/src/errors.ts +10 -15
- package/src/format.ts +26 -4
- package/src/index-module.ts +189 -47
- package/src/managers/actions.ts +252 -83
- package/src/managers/base.ts +6 -2
- package/src/managers/construction-types.ts +79 -0
- package/src/managers/construction.ts +396 -0
- package/src/managers/context.ts +11 -1
- package/src/managers/entities.ts +18 -66
- package/src/managers/epochs.ts +40 -0
- package/src/managers/index.ts +17 -1
- package/src/managers/locations.ts +25 -29
- package/src/managers/nft.ts +28 -0
- package/src/managers/plot.ts +127 -0
- package/src/nft/atomicassets.abi.json +1342 -0
- package/src/nft/atomicassets.ts +237 -0
- package/src/nft/atomicdata.ts +130 -0
- package/src/nft/buildImmutableData.ts +321 -0
- package/src/nft/description.ts +37 -15
- package/src/nft/index.ts +3 -0
- package/src/resolution/describe-module.ts +5 -8
- package/src/resolution/display-name.ts +38 -10
- package/src/resolution/resolve-item.ts +22 -20
- package/src/scheduling/accessor.ts +68 -22
- package/src/scheduling/availability.ts +108 -0
- package/src/scheduling/energy.ts +48 -0
- package/src/scheduling/lane-core.ts +130 -0
- package/src/scheduling/lanes.ts +60 -0
- package/src/scheduling/projection.ts +121 -94
- package/src/scheduling/schedule.ts +237 -103
- package/src/scheduling/task-cargo.ts +46 -0
- package/src/shipload.ts +16 -1
- package/src/subscriptions/manager.ts +40 -6
- package/src/subscriptions/mappers.ts +3 -8
- package/src/subscriptions/types.ts +3 -2
- 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/travel/travel.ts +90 -13
- package/src/types/capabilities.ts +1 -0
- package/src/types/index.ts +0 -1
- package/src/types.ts +19 -12
- package/src/utils/cargo.ts +27 -0
- package/src/utils/display-name.ts +61 -0
- package/src/utils/system.ts +25 -24
- package/src/capabilities/loading.ts +0 -8
- package/src/entities/container.ts +0 -108
- package/src/entities/ship-deploy.ts +0 -258
- package/src/entities/ship.ts +0 -204
- package/src/entities/warehouse.ts +0 -119
- package/src/types/entity-traits.ts +0 -69
package/src/contracts/server.ts
CHANGED
|
@@ -13,9 +13,11 @@ import type {
|
|
|
13
13
|
import {
|
|
14
14
|
ABI,
|
|
15
15
|
Blob,
|
|
16
|
+
BlockTimestamp,
|
|
16
17
|
Bytes,
|
|
17
18
|
Checksum256,
|
|
18
19
|
Checksum512,
|
|
20
|
+
ExtendedAsset,
|
|
19
21
|
Int32,
|
|
20
22
|
Int64,
|
|
21
23
|
Name,
|
|
@@ -29,22 +31,45 @@ import {
|
|
|
29
31
|
import type {ActionOptions, ContractArgs, PartialBy, Table} from '@wharfkit/contract'
|
|
30
32
|
import {Contract as BaseContract} from '@wharfkit/contract'
|
|
31
33
|
export const abiBlob = Blob.from(
|
|
32
|
-
'DmVvc2lvOjphYmkvMS4yAhVCX3ZlY3Rvcl9lbnRpdHlfcmVmX0UMZW50aXR5X3JlZltdDWxvY2F0aW9uX3R5cGUFdWludDiEAQlhZGRtb2R1bGUABQtlbnRpdHlfdHlwZQRuYW1lCWVudGl0eV9pZAZ1aW50NjQMbW9kdWxlX2luZGV4BXVpbnQ4D21vZHVsZV9jYXJnb19pZAZ1aW50NjQPdGFyZ2V0X2NhcmdvX2lkBnVpbnQ2NAhhZGRuZXh1cwADCm5leHVzX25hbWUGc3RyaW5nAXgFaW50NjQBeQVpbnQ2NAdhZHZhbmNlAAIGcmV2ZWFsBnN0cmluZwZjb21taXQLY2hlY2tzdW0yNTYFYmxlbmQAAwtlbnRpdHlfdHlwZQRuYW1lAmlkBnVpbnQ2NAZpbnB1dHMMY2FyZ29faXRlbVtdBmNhbmNlbAADC2VudGl0eV90eXBlBG5hbWUCaWQGdWludDY0BWNvdW50BnVpbnQ2NA5jYW5jZWxfcmVzdWx0cwAGCWVudGl0eV9pZAZ1aW50NjQLZW50aXR5X3R5cGUEbmFtZQ9jYW5jZWxsZWRfY291bnQFdWludDgQc2NoZWR1bGVfc3RhcnRlZAt0aW1lX3BvaW50PwtlbnRpdHlncm91cAd1aW50NjQ/DWdyb3VwX21lbWJlcnMWQl92ZWN0b3JfZW50aXR5X3JlZl9FPwpjYXJnb19pdGVtAAQHaXRlbV9pZAZ1aW50MTYIcXVhbnRpdHkGdWludDMyBXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCWNhcmdvX3JvdwAGAmlkBnVpbnQ2NAllbnRpdHlfaWQGdWludDY0B2l0ZW1faWQGdWludDY0CHF1YW50aXR5BnVpbnQ2NAVzdGF0cwZ1aW50NjQHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQpjYXJnb192aWV3AAUHaXRlbV9pZAZ1aW50MTYIcXVhbnRpdHkGdWludDMyBXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdAmlkBnVpbnQ2NAxjbGFpbXN0YXJ0ZXIAAwdhY2NvdW50BG5hbWUBeAVpbnQ2NAF5BWludDY0CWNsZWFucnN2cAACBWVwb2NoBnVpbnQ2NAhtYXhfcm93cwZ1aW50NjQKY2xlYXJ0YWJsZQADCnRhYmxlX25hbWUEbmFtZQVzY29wZQVuYW1lPwhtYXhfcm93cwd1aW50NjQ/BmNvbW1pdAABBmNvbW1pdAtjaGVja3N1bTI1Ngljb25maWdsb2cAAQZjb25maWcLZ2FtZV9jb25maWcNY29udGFpbmVyX3JvdwAIAmlkBnVpbnQ2NAVvd25lcgRuYW1lBG5hbWUGc3RyaW5nC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzCGh1bGxtYXNzBnVpbnQzMghjYXBhY2l0eQZ1aW50MzIJY2FyZ29tYXNzBnVpbnQzMghzY2hlZHVsZQlzY2hlZHVsZT8LY29vcmRpbmF0ZXMAAwF4BWludDY0AXkFaW50NjQBegd1aW50MTY/BWNyYWZ0AAULZW50aXR5X3R5cGUEbmFtZQJpZAZ1aW50NjQJcmVjaXBlX2lkBnVpbnQxNghxdWFudGl0eQZ1aW50MzIGaW5wdXRzDGNhcmdvX2l0ZW1bXQ1jcmFmdGVyX3N0YXRzAAIFc3BlZWQGdWludDE2BWRyYWluBnVpbnQxNgxjcmVhdGVlbnRpdHkABQVvd25lcgRuYW1lC2VudGl0eV90eXBlBG5hbWULZW50aXR5X25hbWUGc3RyaW5nAXgFaW50NjQBeQVpbnQ2NAZkZXBsb3kABAtlbnRpdHlfdHlwZQRuYW1lAmlkBnVpbnQ2NA5wYWNrZWRfaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0CmRlc2NlbnRpdHkABAdpdGVtX2lkBnVpbnQxNgpodWxsX3N0YXRzBnVpbnQ2NAxtb2R1bGVfaXRlbXMIdWludDE2W10MbW9kdWxlX3N0YXRzCHVpbnQ2NFtdBmVuYWJsZQABB2VuYWJsZWQEYm9vbAxlbmVyZ3lfc3RhdHMAAghjYXBhY2l0eQZ1aW50MTYIcmVjaGFyZ2UGdWludDE2FGVudGl0eV9jdXJyZW50X3N0YXRlAAILY29vcmRpbmF0ZXMLY29vcmRpbmF0ZXMGZW5lcmd5BnVpbnQxNg9lbnRpdHlfZGVmYXVsdHMAAgt3YXJlaG91c2VfegZ1aW50MTYLY29udGFpbmVyX3oGdWludDE2C2VudGl0eV9pbmZvABkEdHlwZQRuYW1lAmlkBnVpbnQ2NAVvd25lcgRuYW1lC2VudGl0eV9uYW1lBnN0cmluZwtjb29yZGluYXRlcwtjb29yZGluYXRlcwljYXJnb21hc3MGdWludDMyBWNhcmdvDGNhcmdvX3ZpZXdbXQdsb2FkZXJzDWxvYWRlcl9zdGF0cz8HbW9kdWxlcw5tb2R1bGVfZW50cnlbXQZlbmVyZ3kHdWludDE2PwhodWxsbWFzcwd1aW50MzI/B2VuZ2luZXMPbW92ZW1lbnRfc3RhdHM/CWdlbmVyYXRvcg1lbmVyZ3lfc3RhdHM/CGNhcGFjaXR5B3VpbnQzMj8IZ2F0aGVyZXIPZ2F0aGVyZXJfc3RhdHM/BmhhdWxlcg1oYXVsZXJfc3RhdHM/BHdhcnALd2FycF9zdGF0cz8HY3JhZnRlcg5jcmFmdGVyX3N0YXRzPwdpc19pZGxlBGJvb2wMY3VycmVudF90YXNrBXRhc2s/FGN1cnJlbnRfdGFza19lbGFwc2VkBnVpbnQzMhZjdXJyZW50X3Rhc2tfcmVtYWluaW5nBnVpbnQzMg1wZW5kaW5nX3Rhc2tzBnRhc2tbXQdpZGxlX2F0C3RpbWVfcG9pbnQ/CHNjaGVkdWxlCXNjaGVkdWxlPw1lbnRpdHlfbGF5b3V0AAIOZW50aXR5X2l0ZW1faWQGdWludDE2BXNsb3RzCnNsb3RfZGVmW10VZW50aXR5X2xheW91dHNfcmVzdWx0AAEIZW50aXRpZXMPZW50aXR5X2xheW91dFtdCmVudGl0eV9yZWYAAgtlbnRpdHlfdHlwZQRuYW1lCWVudGl0eV9pZAZ1aW50NjQOZW50aXR5X3N1bW1hcnkACAR0eXBlBG5hbWUCaWQGdWludDY0BW93bmVyBG5hbWULZW50aXR5X25hbWUGc3RyaW5nC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzB2lzX2lkbGUEYm9vbA5yZXNvbHZlZF9jb3VudAZ1aW50MzINcGVuZGluZ19jb3VudAZ1aW50MzIQZW50aXR5X3Rhc2tfaW5mbwAECWVudGl0eV9pZAZ1aW50NjQLZW50aXR5X3R5cGUEbmFtZQp0YXNrX2NvdW50BXVpbnQ4EHNjaGVkdWxlX3N0YXJ0ZWQKdGltZV9wb2ludA9lbnRpdHlncm91cF9yb3cAAgJpZAZ1aW50NjQMcGFydGljaXBhbnRzDGVudGl0eV9yZWZbXQtlbnVtX21lbWJlcgACBXZhbHVlBXVpbnQ4BG5hbWUGc3RyaW5nC2VudW1fcmVzdWx0AAEHbWVtYmVycw1lbnVtX21lbWJlcltdC2dhbWVfY29uZmlnAAMHdmVyc2lvbgZ1aW50MzIIZGVmYXVsdHMPZW50aXR5X2RlZmF1bHRzBWl0ZW1zCml0ZW1fZGVmW10GZ2F0aGVyAAQGc291cmNlCmVudGl0eV9yZWYLZGVzdGluYXRpb24KZW50aXR5X3JlZgdzdHJhdHVtBnVpbnQxNghxdWFudGl0eQZ1aW50MzIOZ2F0aGVyZXJfc3RhdHMABAV5aWVsZAZ1aW50MTYFZHJhaW4GdWludDE2BWRlcHRoBnVpbnQxNgVzcGVlZAZ1aW50MTYJZ2V0Y29uZmlnAAALZ2V0ZW50aXRpZXMAAgVvd25lcgRuYW1lC2VudGl0eV90eXBlBW5hbWU/CWdldGVudGl0eQACC2VudGl0eV90eXBlBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAtnZXRpdGVtZGF0YQAACmdldGl0ZW1pZHMAAAhnZXRpdGVtcwAADGdldGl0ZW10eXBlcwAAC2dldGxvY2F0aW9uAAIBeAVpbnQ2NAF5BWludDY0CmdldGxvY2RhdGEAAgF4BWludDY0AXkFaW50NjQLZ2V0bW9kdHlwZXMAAApnZXRtb2R1bGVzAAAJZ2V0bmVhcmJ5AAMLZW50aXR5X3R5cGUEbmFtZQllbnRpdHlfaWQGdWludDY0CHJlY2hhcmdlBGJvb2wKZ2V0bmZ0aW5mbwAACWdldHBsYXllcgABB2FjY291bnQEbmFtZQlnZXRyZWNpcGUAAQ5vdXRwdXRfaXRlbV9pZAZ1aW50MTYKZ2V0cmVjaXBlcwACC2xvd2VyX2JvdW5kBnVpbnQxNgVsaW1pdAV1aW50OApnZXRyZXNjYXRzAAALZ2V0cmVzZXJ2ZXMAAgF4BWludDY0AXkFaW50NjQMZ2V0cmVzb3VyY2VzAAAIZ2V0c2xvdHMAAApnZXRzdHJhdHVtAAMBeAVpbnQ2NAF5BWludDY0B3N0cmF0dW0GdWludDE2DGdldHN1bW1hcmllcwACBW93bmVyBG5hbWULZW50aXR5X3R5cGUFbmFtZT8LZ3JvdXB0cmF2ZWwABAhlbnRpdGllcwxlbnRpdHlfcmVmW10BeAVpbnQ2NAF5BWludDY0CHJlY2hhcmdlBGJvb2wEaGFzaAABBXZhbHVlBnN0cmluZwdoYXNoNTEyAAEFdmFsdWUGc3RyaW5nDGhhdWxlcl9zdGF0cwADCGNhcGFjaXR5BXVpbnQ4CmVmZmljaWVuY3kGdWludDE2BWRyYWluBnVpbnQxNgRpbml0AAEEc2VlZAtjaGVja3N1bTI1NghpdGVtX2RlZgAFAmlkBnVpbnQxNgRtYXNzBnVpbnQzMgR0eXBlBXVpbnQ4B3N1YnR5cGUFdWludDgEdGllcgV1aW50OAxpdGVtX2lkX3BhaXIAAgJpZAZ1aW50MTYEbmFtZQZzdHJpbmcPaXRlbV9pZHNfcmVzdWx0AAEFaXRlbXMOaXRlbV9pZF9wYWlyW10PaXRlbWRhdGFfcmVzdWx0AAIFaXRlbXMKaXRlbV9kZWZbXQdyZWNpcGVzDnJlY2lwZXNfcmVzdWx0Cml0ZW1zX2luZm8AAQVpdGVtcwppdGVtX2RlZltdBGpvaW4AAQdhY2NvdW50BG5hbWUMbG9hZGVyX3N0YXRzAAMEbWFzcwZ1aW50MzIGdGhydXN0BnVpbnQxNghxdWFudGl0eQV1aW50OBBsb2NhdGlvbl9kZXJpdmVkAAMMc3RhdGljX3Byb3BzD2xvY2F0aW9uX3N0YXRpYwtlcG9jaF9wcm9wcw5sb2NhdGlvbl9lcG9jaARzaXplBnVpbnQxNg5sb2NhdGlvbl9lcG9jaAADBmFjdGl2ZQRib29sBXNlZWQwBXVpbnQ4BXNlZWQxBXVpbnQ4DWxvY2F0aW9uX2luZm8AAgZjb29yZHMLY29vcmRpbmF0ZXMJaXNfc3lzdGVtBGJvb2wMbG9jYXRpb25fcm93AAYCaWQGdWludDY0BW93bmVyBG5hbWULY29vcmRpbmF0ZXMLY29vcmRpbmF0ZXMJY2FyZ29tYXNzBnVpbnQzMgVjYXJnbwxjYXJnb19pdGVtW10Ic2NoZWR1bGUJc2NoZWR1bGU/D2xvY2F0aW9uX3N0YXRpYwAFBmNvb3Jkcwtjb29yZGluYXRlcwR0eXBlDWxvY2F0aW9uX3R5cGUHc3VidHlwZQV1aW50OAVzZWVkMAV1aW50OAVzZWVkMQV1aW50OAxtb2R1bGVfZW50cnkAAgR0eXBlBXVpbnQ4CWluc3RhbGxlZA5wYWNrZWRfbW9kdWxlPwttb2R1bGVfaW5mbwAEAmlkBnVpbnQxNgRtYXNzBnVpbnQzMgttb2R1bGVfdHlwZQV1aW50OAR0aWVyBXVpbnQ4Dm1vZHVsZXNfcmVzdWx0AAEHbW9kdWxlcw1tb2R1bGVfaW5mb1tdDm1vdmVtZW50X3N0YXRzAAIGdGhydXN0BnVpbnQzMgVkcmFpbgZ1aW50MTYLbmVhcmJ5X2luZm8ABQpjYW5fdHJhdmVsBGJvb2wHY3VycmVudBRlbnRpdHlfY3VycmVudF9zdGF0ZQlwcm9qZWN0ZWQUZW50aXR5X2N1cnJlbnRfc3RhdGUKbWF4X2VuZXJneQZ1aW50MTYHc3lzdGVtcw9uZWFyYnlfc3lzdGVtW10NbmVhcmJ5X3N5c3RlbQAECGRpc3RhbmNlBnVpbnQ2NAtlbmVyZ3lfY29zdAZ1aW50NjQLZmxpZ2h0X3RpbWUGdWludDMyCGxvY2F0aW9uDWxvY2F0aW9uX2luZm8JbmV4dXNfcm93AAQCaWQGdWludDY0BW93bmVyBG5hbWUEbmFtZQZzdHJpbmcLY29vcmRpbmF0ZXMLY29vcmRpbmF0ZXMObmZ0X3NjaGVtYV9kZWYAAgtzY2hlbWFfbmFtZQRuYW1lBmZpZWxkcw5zY2hlbWFfZmllbGRbXRBuZnRfdGVtcGxhdGVfZGVmAAIHaXRlbV9pZAZ1aW50MTYLc2NoZW1hX25hbWUEbmFtZQ1uZnRjb25maWdfcm93AAMHaXRlbV9pZAZ1aW50MTYLdGVtcGxhdGVfaWQFaW50MzILc2NoZW1hX25hbWUEbmFtZQ5uZnRpbmZvX3Jlc3VsdAACB3NjaGVtYXMQbmZ0X3NjaGVtYV9kZWZbXQl0ZW1wbGF0ZXMSbmZ0X3RlbXBsYXRlX2RlZltdBm5vdGlmeQABBWV2ZW50CnRhc2tfZXZlbnQNcGFja2VkX21vZHVsZQACB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAtwbGF5ZXJfaW5mbwAGBW93bmVyBG5hbWUJaXNfcGxheWVyBGJvb2wMY29tcGFueV9uYW1lBnN0cmluZwpzaGlwX2NvdW50BnVpbnQ2NA93YXJlaG91c2VfY291bnQGdWludDY0D2NvbnRhaW5lcl9jb3VudAZ1aW50NjQKcGxheWVyX3JvdwABBW93bmVyBG5hbWUIcmVjaGFyZ2UAAgtlbnRpdHlfdHlwZQRuYW1lAmlkBnVpbnQ2NAxyZWNpcGVfaW5wdXQABAdpdGVtX2lkBnVpbnQxNghjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4CHF1YW50aXR5BnVpbnQzMhByZWNpcGVfaXRlbV9pbmZvAAICaWQGdWludDE2BG1hc3MGdWludDMyD3JlY2lwZV9yZXNwb25zZQAHDm91dHB1dF9pdGVtX2lkBnVpbnQxNgtvdXRwdXRfbWFzcwZ1aW50MzIGaW5wdXRzDnJlY2lwZV9pbnB1dFtdCnN0YXRfc2xvdHMUc3RhdF9zbG90X3Jlc3BvbnNlW10NYmxlbmRfd2VpZ2h0cwVieXRlcwtvdXRwdXRfaXRlbRByZWNpcGVfaXRlbV9pbmZvC2lucHV0X2l0ZW1zEnJlY2lwZV9pdGVtX2luZm9bXQ5yZWNpcGVzX3Jlc3VsdAABB3JlY2lwZXMRcmVjaXBlX3Jlc3BvbnNlW10LcmVzZXJ2ZV9yb3cABAJpZAZ1aW50NjQIY29vcmRfaWQGdWludDY0B3N0cmF0dW0GdWludDE2CXJlbWFpbmluZwZ1aW50MzIHcmVzb2x2ZQADC2VudGl0eV90eXBlBG5hbWUCaWQGdWludDY0BWNvdW50B3VpbnQ2ND8PcmVzb2x2ZV9yZXN1bHRzAAYJZW50aXR5X2lkBnVpbnQ2NAtlbnRpdHlfdHlwZQRuYW1lDnJlc29sdmVkX2NvdW50BXVpbnQ4FG5ld19zY2hlZHVsZV9zdGFydGVkC3RpbWVfcG9pbnQ/C2VudGl0eWdyb3VwB3VpbnQ2ND8NZ3JvdXBfbWVtYmVycxZCX3ZlY3Rvcl9lbnRpdHlfcmVmX0U/DXJlc291cmNlX2luZm8ABAJpZAZ1aW50MTYEbWFzcwZ1aW50MzIIY2F0ZWdvcnkFdWludDgEdGllcgV1aW50OA5yZXNvdXJjZV9zdGF0cwADBXN0YXQxBnVpbnQxNgVzdGF0MgZ1aW50MTYFc3RhdDMGdWludDE2EHJlc291cmNlc19yZXN1bHQAAQlyZXNvdXJjZXMPcmVzb3VyY2VfaW5mb1tdCHJtbW9kdWxlAAQLZW50aXR5X3R5cGUEbmFtZQllbnRpdHlfaWQGdWludDY0DG1vZHVsZV9pbmRleAV1aW50OA90YXJnZXRfY2FyZ29faWQGdWludDY0CHJtbmZ0Y2ZnAAEHaXRlbV9pZAZ1aW50MTYEc2FsdAABBHNhbHQGdWludDY0CHNjaGVkdWxlAAIHc3RhcnRlZAp0aW1lX3BvaW50BXRhc2tzBnRhc2tbXQxzY2hlbWFfZmllbGQAAgRuYW1lBnN0cmluZwpmaWVsZF90eXBlBnN0cmluZwxzZXF1ZW5jZV9yb3cAAgNrZXkEbmFtZQV2YWx1ZQZ1aW50NjQJc2V0bmZ0Y2ZnAAMHaXRlbV9pZAZ1aW50MTYLdGVtcGxhdGVfaWQFaW50MzILc2NoZW1hX25hbWUEbmFtZQhzaGlwX3JvdwASAmlkBnVpbnQ2NAVvd25lcgRuYW1lBG5hbWUGc3RyaW5nBXN0YXRzBnVpbnQ2NAtjb29yZGluYXRlcwtjb29yZGluYXRlcwhodWxsbWFzcwd1aW50MzI/CGNhcGFjaXR5B3VpbnQzMj8GZW5lcmd5B3VpbnQxNj8JY2FyZ29tYXNzBnVpbnQzMgdlbmdpbmVzD21vdmVtZW50X3N0YXRzPwlnZW5lcmF0b3INZW5lcmd5X3N0YXRzPwdsb2FkZXJzDWxvYWRlcl9zdGF0cz8IZ2F0aGVyZXIPZ2F0aGVyZXJfc3RhdHM/BHdhcnALd2FycF9zdGF0cz8HY3JhZnRlcg5jcmFmdGVyX3N0YXRzPwZoYXVsZXINaGF1bGVyX3N0YXRzPwdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCHNjaGVkdWxlCXNjaGVkdWxlPwhzbG90X2RlZgABBHR5cGUFdWludDgKc3Bhd25jYXJnbwADCWVudGl0eV9pZAZ1aW50NjQHaXRlbV9pZAZ1aW50NjQIcXVhbnRpdHkGdWludDY0C3NwYXducGFja2VkAAQJZW50aXR5X2lkBnVpbnQ2NAdpdGVtX2lkBnVpbnQxNgpodWxsX3N0YXRzBnVpbnQ2NAlpbnN0YWxsZWQPcGFja2VkX21vZHVsZVtdC3NwYXduc2VlZGVkAAQJZW50aXR5X2lkBnVpbnQ2NAdpdGVtX2lkBnVpbnQ2NAhxdWFudGl0eQZ1aW50NjQFc3RhdHMGdWludDY0EnN0YXRfc2xvdF9yZXNwb25zZQABB3NvdXJjZXMNc3RhdF9zb3VyY2VbXQtzdGF0X3NvdXJjZQACC2lucHV0X2luZGV4BXVpbnQ4EGlucHV0X3N0YXRfaW5kZXgFdWludDgJc3RhdGVfcm93AAYHZW5hYmxlZARib29sBWVwb2NoBnVpbnQzMgRzYWx0BnVpbnQ2NAVzaGlwcwZ1aW50MzIEc2VlZAtjaGVja3N1bTI1NgZjb21taXQLY2hlY2tzdW0yNTYMc3RyYXR1bV9kYXRhAAIHc3RyYXR1bQxzdHJhdHVtX2luZm8Fc3RhdHMOcmVzb3VyY2Vfc3RhdHMMc3RyYXR1bV9pbmZvAAUHaXRlbV9pZAZ1aW50MTYEc2VlZAZ1aW50NjQIcmljaG5lc3MGdWludDE2B3Jlc2VydmUGdWludDMyC3Jlc2VydmVfbWF4BnVpbnQzMhFzdHJhdHVtX3JlbWFpbmluZwACB3N0cmF0dW0GdWludDE2CXJlbWFpbmluZwZ1aW50MzIEdGFzawAIBHR5cGUFdWludDgIZHVyYXRpb24GdWludDMyCmNhbmNlbGFibGUFdWludDgLY29vcmRpbmF0ZXMMY29vcmRpbmF0ZXM/BWNhcmdvDGNhcmdvX2l0ZW1bXQxlbnRpdHl0YXJnZXQLZW50aXR5X3JlZj8LZW50aXR5Z3JvdXAHdWludDY0PwtlbmVyZ3lfY29zdAd1aW50MTY/CnRhc2tfZXZlbnQACQpldmVudF90eXBlBXVpbnQ4BW93bmVyBG5hbWULZW50aXR5X3R5cGUEbmFtZQllbnRpdHlfaWQGdWludDY0CnRhc2tfaW5kZXgFdWludDgEdGFzawR0YXNrCXN0YXJ0c19hdAp0aW1lX3BvaW50DGNvbXBsZXRlc19hdAp0aW1lX3BvaW50Cm5ld19lbmVyZ3kHdWludDE2Pwx0YXNrX3Jlc3VsdHMAAQhlbnRpdGllcxJlbnRpdHlfdGFza19pbmZvW10IdHJhbnNmZXIABwtzb3VyY2VfdHlwZQRuYW1lCXNvdXJjZV9pZAZ1aW50NjQJZGVzdF90eXBlBG5hbWUHZGVzdF9pZAZ1aW50NjQHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0CHF1YW50aXR5BnVpbnQzMgZ0cmF2ZWwABQtlbnRpdHlfdHlwZQRuYW1lAmlkBnVpbnQ2NAF4BWludDY0AXkFaW50NjQIcmVjaGFyZ2UEYm9vbAl0eXBlc19yb3cABAJpZAZ1aW50NjQTZW50aXR5X3N1bW1hcnlfdHlwZQ5lbnRpdHlfc3VtbWFyeRBnYW1lX2NvbmZpZ190eXBlC2dhbWVfY29uZmlnFnN0cmF0dW1fcmVtYWluaW5nX3R5cGURc3RyYXR1bV9yZW1haW5pbmcNd2FyZWhvdXNlX3JvdwALAmlkBnVpbnQ2NAVvd25lcgRuYW1lBG5hbWUGc3RyaW5nBXN0YXRzBnVpbnQ2NAtjb29yZGluYXRlcwtjb29yZGluYXRlcwhodWxsbWFzcwd1aW50MzI/CGNhcGFjaXR5B3VpbnQzMj8JY2FyZ29tYXNzBnVpbnQzMgdsb2FkZXJzDWxvYWRlcl9zdGF0cz8HbW9kdWxlcw5tb2R1bGVfZW50cnlbXQhzY2hlZHVsZQlzY2hlZHVsZT8Ed2FycAAEC2VudGl0eV90eXBlBG5hbWUCaWQGdWludDY0AXgFaW50NjQBeQVpbnQ2NAp3YXJwX3N0YXRzAAEFcmFuZ2UGdWludDMyBHdpcGUAAAx3aXBlc2VxdWVuY2UAAAR3cmFwAAUFb3duZXIEbmFtZQtlbnRpdHlfdHlwZQRuYW1lCWVudGl0eV9pZAZ1aW50NjQIY2FyZ29faWQGdWludDY0CHF1YW50aXR5BnVpbnQ2NDsAAFBRJypTMglhZGRtb2R1bGXHAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBhZGRtb2R1bGUKc3VtbWFyeTogJ0luc3RhbGwgYSBtb2R1bGUgaW50byBhIHNsb3QnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkluc3RhbGwgYSBtb2R1bGUgZnJvbSBjYXJnbyBpbnRvIGEgbW9kdWxlIHNsb3Qgb24gYSBsaXZlIGVudGl0eSBvciBhIHBhY2tlZCBlbnRpdHkgaW4gY2FyZ28uIFRoZSBlbnRpdHkgbXVzdCBiZSBpZGxlIHdpdGggbm8gc2NoZWR1bGVkIHRhc2tzLiBUaGUgbW9kdWxlIHR5cGUgbXVzdCBiZSBjb21wYXRpYmxlIHdpdGggdGhlIHRhcmdldCBzbG90IHR5cGUuIFRoZSBtb2R1bGUgaXRlbSBpcyByZW1vdmVkIGZyb20gY2FyZ28gdXBvbiBpbnN0YWxsYXRpb24uAAAAWHc1UzIIYWRkbmV4dXOnAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBhZGRuZXh1cwpzdW1tYXJ5OiAnQWRkIGEgbmV4dXMgbG9jYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkNyZWF0ZSBhIG5ldyBuZXh1cyBlbnRpdHkgYXQgdGhlIGdpdmVuIGNvb3JkaW5hdGVzLiBOZXh1c2VzIGFyZSBvd25lZCBieSB0aGUgY29udHJhY3QgYW5kIHNlcnZlIGFzIGZpeGVkIGdhdGhlcmluZyBwb2ludHMgd2hlcmUgcGxheWVycyBjYW4gd3JhcCwgdW53cmFwLCBkZXBsb3ksIGFuZCBvdGhlcndpc2UgaW50ZXJhY3Qgd2l0aCBORlQtYmFja2VkIGFzc2V0cy4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LgAAAEChaXYyB2FkdmFuY2XTAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBhZHZhbmNlCnN1bW1hcnk6ICdBZHZhbmNlIHR1cm4nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkFkdmFuY2UgdGhlIGdhbWUgdG8gdGhlIG5leHQgdHVybi4AAAAAgDRVPAVibGVuZPwCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGJsZW5kCnN1bW1hcnk6ICdCbGVuZCBjYXJnbyBzdGFja3MnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkNvbWJpbmUgbXVsdGlwbGUgY2FyZ28gc3RhY2tzIG9mIHRoZSBzYW1lIGl0ZW0gdHlwZSBpbnRvIGEgc2luZ2xlIHN0YWNrIHdpdGggbmV3IGJsZW5kZWQgc3RhdHMuIEFsbCBpbnB1dCBzdGFja3MgbXVzdCBzaGFyZSB0aGUgc2FtZSBpdGVtIGlkLiBUaGUgb3V0cHV0IHN0YWNrIGhhcyB0aGUgY29tYmluZWQgcXVhbnRpdHkgb2YgYWxsIGlucHV0cy4AAAAARIWmQQZjYW5jZWzCAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjYW5jZWwKc3VtbWFyeTogJ0NhbmNlbCBzY2hlZHVsZWQgdGFza3MnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkNhbmNlbCB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiB0YXNrcyBmcm9tIHRoZSBlbmQgb2YgYW4gZW50aXR5J3Mgc2NoZWR1bGUuIFRhc2tzIHRoYXQgYXJlIGltbXV0YWJsZSBhbmQgaW4gcHJvZ3Jlc3MgY2Fubm90IGJlIGNhbmNlbGxlZC5wVb4mY+lMRAxjbGFpbXN0YXJ0ZXKFBC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjbGFpbXN0YXJ0ZXIKc3VtbWFyeTogJ0RFQlVHOiBjbGFpbSBhIHN0YXJ0ZXIgc2hpcCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKU3Bhd24gYSBwcmUta2l0dGVkIFQxIHN0YXJ0ZXIgc2hpcCBhdCB0aGUgZ2l2ZW4gY29vcmRpbmF0ZXMgZm9yIGEgcmVnaXN0ZXJlZCBwbGF5ZXIuIEF2YWlsYWJsZSBvbmx5IG9uIHRlc3QgZGVwbG95bWVudHMgd2hlcmUgbm8gaW4tZ2FtZSBzaGlwIGVjb25vbXkgeWV0IGV4aXN0cy4gUmVxdWlyZXMgdGhlIGNhbGxlciB0byBiZSBhIGpvaW5lZCBwbGF5ZXIgd2l0aCBubyBleGlzdGluZyBzaGlwczsgdGhlIHJlc3VsdGluZyBzaGlwIGlzIGZpdHRlZCB3aXRoIGEgZ2VuZXJhdG9yLCBlbmdpbmUsIGdhdGhlcmVyLCBjcmFmdGVyLCBhbmQgaGF1bGVyIG1vZHVsZS4AAKgb32lURAljbGVhbnJzdnDsAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjbGVhbnJzdnAKc3VtbWFyeTogJ0NsZWFuIHVwIHBhc3QgZXBvY2ggcmVzZXJ2ZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkVyYXNlIHJlc2VydmUgdGFibGUgcm93cyBmcm9tIGEgcGFzdCBlcG9jaC4gQ2Fubm90IGNsZWFuIHRoZSBjdXJyZW50IG9yIGZ1dHVyZSBlcG9jaHMuIFRoZSBtYXhfcm93cyBwYXJhbWV0ZXIgY2FwcyB0aGUgbnVtYmVyIG9mIHJvd3MgZXJhc2VkIHBlciBjYWxsIHRvIGxpbWl0IENQVSB1c2FnZS4AgIrH5GtURApjbGVhcnRhYmxlvgEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY2xlYXJ0YWJsZQpzdW1tYXJ5OiAnREVCVUc6IGNsZWFydGFibGUgYWN0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAAGQnJUUGY29tbWl07AEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY29tbWl0CnN1bW1hcnk6ICdTZXQgY29tbWl0IHZhbHVlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpTZXQgdGhlIGluaXRpYWwgY29tbWl0IHZhbHVlIGR1cmluZyBnYW1lIGluaXRpYWxpemF0aW9uLgAAYDQytyZFCWNvbmZpZ2xvZ90CLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNvbmZpZ2xvZwpzdW1tYXJ5OiAnTG9nIGdhbWUgY29uZmlndXJhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW50ZXJuYWwgYWN0aW9uIHRoYXQgbG9ncyB0aGUgY3VycmVudCBnYW1lIGNvbmZpZ3VyYXRpb24uIENhbGxlZCBpbmxpbmUgYWZ0ZXIgaW5pdGlhbGl6YXRpb24gdG8gYnJvYWRjYXN0IGNvbmZpZyB2aWEgYWN0aW9uIHRyYWNlcy4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LgAAAACAvMxFBWNyYWZ0yAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY3JhZnQKc3VtbWFyeTogJ0NyYWZ0IGl0ZW1zIGZyb20gYSByZWNpcGUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRyYW5zZm9ybSBjYXJnbyBpdGVtcyBpbnRvIGEgbmV3IGl0ZW0gdXNpbmcgYSByZWNpcGUuIFRoZSBlbnRpdHkgbXVzdCBoYXZlIGEgY3JhZnRlciBtb2R1bGUgaW5zdGFsbGVkLiBDb25zdW1lcyBlbmVyZ3kgYW5kIHNjaGVkdWxlcyBhIGNyYWZ0aW5nIHRhc2sgd2l0aCBkdXJhdGlvbiBiYXNlZCBvbiB0b3RhbCBpbnB1dCBtYXNzIGFuZCBjcmFmdGVyIHNwZWVkLiBJbnB1dCBxdWFudGl0aWVzIG11c3QgZXhhY3RseSBtYXRjaCB0aGUgcmVjaXBlIHJlcXVpcmVtZW50cy7gs8tTqWzURQxjcmVhdGVlbnRpdHm/AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjcmVhdGVlbnRpdHkKc3VtbWFyeTogJ0RFQlVHOiBjcmVhdGUgYW4gZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAAHgaq0oGZGVwbG957AItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZGVwbG95CnN1bW1hcnk6ICdEZXBsb3kgYSBwYWNrZWQgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpVbnBhY2sgYSBwYWNrZWQgZW50aXR5IGl0ZW0gKHBhY2tlZCBzaGlwIG9yIHBhY2tlZCBjb250YWluZXIpIGZyb20gY2FyZ28sIHNjaGVkdWxpbmcgYSBkZXBsb3kgdGFzayB0aGF0IGNyZWF0ZXMgdGhlIG5ldyBlbnRpdHkgYXQgdGhlIGRlcGxveWluZyBlbnRpdHkncyBsb2NhdGlvbiB1cG9uIHJlc29sdXRpb24uAIDPLk+FsEoKZGVzY2VudGl0eckDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGRlc2NlbnRpdHkKc3VtbWFyeTogJ0Rlc2NyaWJlIGEgcGFja2VkIGVudGl0eScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgYSBodW1hbi1yZWFkYWJsZSBkZXNjcmlwdGlvbiBzdHJpbmcgZm9yIGEgcGFja2VkIGVudGl0eSwgZGVyaXZlZCBmcm9tIHRoZSBlbnRpdHkgaXRlbSBpZCwgaHVsbCBzdGF0cywgYW5kIHRoZSBsaXN0IG9mIGluc3RhbGxlZCBtb2R1bGUgaXRlbSBpZHMgYW5kIHN0YXRzLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIGFuZCBORlQgcmVuZGVyZXJzIHRvIGRpc3BsYXkgcGFja2VkIGVudGl0aWVzLgAAAACoeMxUBmVuYWJsZd0BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGVuYWJsZQpzdW1tYXJ5OiAnU2V0IGVuYWJsZWQgc3RhdGUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkVuYWJsZSBvciBkaXNhYmxlIHRoaXMgZ2FtZSBvZiBTaGlwbG9hZC4AAAAAXNWyYQZnYXRoZXKXAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnYXRoZXIKc3VtbWFyeTogJ0dhdGhlciByZXNvdXJjZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkdhdGhlciByZXNvdXJjZXMgYXQgdGhlIHNoaXAncyBjdXJyZW50IGxvY2F0aW9uLiBPbmx5IHdvcmtzIGF0IGdhdGhlcmFibGUgbG9jYXRpb24gdHlwZXMuIFNjaGVkdWxlcyBhIGdhdGhlciB0YXNrIHRoYXQgY29uc3VtZXMgZW5lcmd5IGFuZCB5aWVsZHMgY2FyZ28gYmFzZWQgb24gdGhlIHNoaXAncyBnYXRoZXJlciBzdGF0cyBhbmQgdGhlIGxvY2F0aW9uJ3MgcmVzb3VyY2UgY29tcG9zaXRpb24uAABgbk2KsmIJZ2V0Y29uZmlnygItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0Y29uZmlnCnN1bW1hcnk6ICdHZXQgZ2FtZSBjb25maWd1cmF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIHRoZSBnYW1lIGNvbmZpZ3VyYXRpb24gaW5jbHVkaW5nIGRlZmF1bHQgZW50aXR5IHN0YXRzIGZvciB3YXJlaG91c2VzIGFuZCBjb250YWluZXJzLCBhbmQgdGhlIGZ1bGwgaXRlbSBkZWZpbml0aW9ucyB0YWJsZS4AsHLZ5amyYgtnZXRlbnRpdGllc6QCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVudGl0aWVzCnN1bW1hcnk6ICdHZXQgYWxsIGVudGl0aWVzIGZvciBhIHBsYXllcicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmV0dXJucyBmdWxsIGVudGl0eSBpbmZvIGZvciBhbGwgZW50aXRpZXMgb3duZWQgYnkgYSBwbGF5ZXIuIE9wdGlvbmFsbHkgZmlsdGVyIGJ5IGVudGl0eSB0eXBlLgAA8NnlqbJiCWdldGVudGl0eaICLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVudGl0eQpzdW1tYXJ5OiAnR2V0IGVudGl0eSBzdGF0ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmV0dXJucyB0aGUgY3VycmVudCBzdGF0ZSBvZiBhbiBlbnRpdHkgaW5jbHVkaW5nIGlkZW50aXR5LCBjYXJnbywgc2NoZWR1bGUgc3RhdGUsIGFuZCB0eXBlLXNwZWNpZmljIGZpZWxkcy4ATDZJquyyYgtnZXRpdGVtZGF0YagDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGl0ZW1kYXRhCnN1bW1hcnk6ICdHZXQgZnVsbCBpdGVtIGNhdGFsb2cnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBjb21wbGV0ZSBpdGVtIGNhdGFsb2cgYXMgdGhlIGNvbnRyYWN0IHNlZXMgaXQsIGluY2x1ZGluZyB0eXBlLCBzdWJ0eXBlLCB0aWVyLCBtYXNzLCBhbmQgb3RoZXIgc3RhdGljIG1ldGFkYXRhLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIGFuZCBjbGllbnRzIHRvIG1pcnJvciB0aGUgY29udHJhY3QncyBpdGVtIGRlZmluaXRpb25zLgAATk6q7LJiCmdldGl0ZW1pZHOGAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRpdGVtaWRzCnN1bW1hcnk6ICdHZXQgaXRlbSBpZCB0byBuYW1lIG1hcHBpbmdzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgZnVsbCBtYXBwaW5nIG9mIGl0ZW0gaWQgY29uc3RhbnRzIHRvIHRoZWlyIGNhbm9uaWNhbCBzdHJpbmcgbmFtZXMuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gcmVzb2x2ZSBudW1lcmljIGl0ZW0gaWRzIHRvIGh1bWFuLXJlYWRhYmxlIGlkZW50aWZpZXJzLgAAAFiq7LJiCGdldGl0ZW1zmgItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0aXRlbXMKc3VtbWFyeTogJ0dldCBhbGwgYXZhaWxhYmxlIGl0ZW1zJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGEgbGlzdCBvZiBhbGwgaXRlbXMgaW4gdGhlIGdhbWUgaW5jbHVkaW5nIHRoZWlyIGlkLCBiYXNlIHByaWNlLCBhbmQgbWFzcy6AVfVZquyyYgxnZXRpdGVtdHlwZXOIAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRpdGVtdHlwZXMKc3VtbWFyeTogJ0dldCBpdGVtIHR5cGUgZW51bSB2YWx1ZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBpdGVtIHR5cGUgZW51bSB2YWx1ZXMgYW5kIHRoZWlyIHN0cmluZyBuYW1lcyAocmVzb3VyY2UsIGNvbXBvbmVudCwgbW9kdWxlLCBlbnRpdHkpLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGRlY29kZSBpdGVtIHR5cGUgaWRlbnRpZmllcnMuACZ12SAas2ILZ2V0bG9jYXRpb27iAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRsb2NhdGlvbgpzdW1tYXJ5OiAnR2V0IGxvY2F0aW9uIGluZm9ybWF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGluZm9ybWF0aW9uIGFib3V0IGEgbG9jYXRpb24gaW5jbHVkaW5nIHdoZXRoZXIgYSBzeXN0ZW0gZXhpc3RzLCBhbmQgZm9yIGVhY2ggaXRlbTogcHJpY2UsIHN1cHBseSwgcmFyaXR5IG11bHRpcGxpZXIsIGFuZCBsb2NhdGlvbiBtdWx0aXBsaWVyLgCAySYhGrNiCmdldGxvY2RhdGH+Ai0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRsb2NkYXRhCnN1bW1hcnk6ICdHZXQgZGVyaXZlZCBsb2NhdGlvbiBkYXRhJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGRlcml2ZWQgbG9jYXRpb24gZGF0YSBpbmNsdWRpbmcgc3RhdGljIHByb3BlcnRpZXMgKHR5cGUsIGRpZmZpY3VsdHksIHNlZWRzKSBmcm9tIHRoZSBnYW1lIHNlZWQgYW5kIGVwb2NoLXNwZWNpZmljIHByb3BlcnRpZXMgKGFjdGl2ZSwgc2VlZHMpIGZyb20gdGhlIGN1cnJlbnQgZXBvY2ggc2VlZC4AsKo+JyqzYgtnZXRtb2R0eXBlc9YDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldG1vZHR5cGVzCnN1bW1hcnk6ICdHZXQgbW9kdWxlIHR5cGUgZW51bSB2YWx1ZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBtb2R1bGUgdHlwZSBlbnVtIHZhbHVlcyBhbmQgdGhlaXIgc3RyaW5nIG5hbWVzIChhbnksIGVuZ2luZSwgZ2VuZXJhdG9yLCBnYXRoZXJlciwgbG9hZGVyLCB3YXJwLCBjcmFmdGVyLCBsYXVuY2hlciwgc3RvcmFnZSwgaGF1bGVyKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZWNvZGUgbW9kdWxlIHN1YnR5cGUgaWRlbnRpZmllcnMgYW5kIHNsb3QgY29tcGF0aWJpbGl0eS4AAFZRJyqzYgpnZXRtb2R1bGVzgAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0bW9kdWxlcwpzdW1tYXJ5OiAnR2V0IGFsbCBtb2R1bGUgaXRlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBzdWJzZXQgb2YgaXRlbXMgY2xhc3NpZmllZCBhcyBtb2R1bGVzLCBpbmNsdWRpbmcgZWFjaCBtb2R1bGUncyBpZCwgbWFzcywgc3VidHlwZSwgYW5kIHRpZXIuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZW51bWVyYXRlIGluc3RhbGxhYmxlIGVxdWlwbWVudC4AAPDnGjWzYglnZXRuZWFyYnneAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRuZWFyYnkKc3VtbWFyeTogJ0dldCBuZWFyYnkgcmVhY2hhYmxlIHN5c3RlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgbmVhcmJ5IHN5c3RlbXMgcmVhY2hhYmxlIGJ5IGFuIGVudGl0eSBmcm9tIGl0cyBwcm9qZWN0ZWQgbG9jYXRpb24uIFJldHVybnMgY3VycmVudCBzdGF0ZSAod2l0aCBjb21wbGV0ZWQgdGFza3MgcmVzb2x2ZWQpLCBwcm9qZWN0ZWQgc3RhdGUgKGFmdGVyIGFsbCBzY2hlZHVsZWQgdGFza3MpLCBhbmQgYSBsaXN0IG9mIHJlYWNoYWJsZSBzeXN0ZW1zIHdpdGggZGlzdGFuY2UsIGVuZXJneSBjb3N0LCBmbGlnaHQgdGltZSwgYW5kIG1hcmtldCBpbmZvcm1hdGlvbi4AAF3T5TWzYgpnZXRuZnRpbmZv8AMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0bmZ0aW5mbwpzdW1tYXJ5OiAnR2V0IE5GVCBzY2hlbWEgYW5kIHRlbXBsYXRlIGNvbmZpZ3VyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBBdG9taWNBc3NldHMgc2NoZW1hcyBhbmQgdGVtcGxhdGVzIHRoZSBnYW1lIGNvbnRyYWN0IGV4cGVjdHMsIHBsdXMgdGhlIGN1cnJlbnQgYGl0ZW1faWQg4oaSICh0ZW1wbGF0ZV9pZCwgc2NoZW1hX25hbWUpYCBtYXBwaW5nIHN0b3JlZCBpbiB0aGUgYG5mdGNvbmZpZ2AgdGFibGUuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gc3luYyBhdG9taWNhc3NldHMgc3RhdGUgd2l0aCB0aGUgY29udHJhY3QuAAC4yptYs2IJZ2V0cGxheWVy/QItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0cGxheWVyCnN1bW1hcnk6ICdHZXQgcGxheWVyIGluZm9ybWF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGluZm9ybWF0aW9uIGFib3V0IGEgcGxheWVyIGluY2x1ZGluZyBiYWxhbmNlLCBkZWJ0LCBuZXR3b3J0aCwgZW50aXR5IGNvdW50cywgYW5kIHByaWNpbmcgZm9yIG5leHQgcHVyY2hhc2VzLiBSZXR1cm5zIGlzX3BsYXllcj1mYWxzZSBpZiB0aGUgYWNjb3VudCBoYXMgbm90IGpvaW5lZCB0aGUgZ2FtZS4AAFDVIXWzYglnZXRyZWNpcGWmAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZWNpcGUKc3VtbWFyeTogJ0dldCBhIHNpbmdsZSBjcmFmdGluZyByZWNpcGUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSByZWNpcGUgd2hvc2Ugb3V0cHV0IG1hdGNoZXMgdGhlIGdpdmVuIGl0ZW0gaWQsIGluY2x1ZGluZyBpdHMgaW5wdXRzLCBibGVuZCB3ZWlnaHRzLCBzdGF0IHNsb3RzLCBhbmQgcmVzb2x2ZWQgaXRlbSBtYXNzIGluZm8uIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGlzcGxheSBjcmFmdGluZyByZXF1aXJlbWVudHMuAABW1SF1s2IKZ2V0cmVjaXBlc6wDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlY2lwZXMKc3VtbWFyeTogJ0xpc3QgY3JhZnRpbmcgcmVjaXBlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgYSBwYWdpbmF0ZWQgbGlzdCBvZiBjcmFmdGluZyByZWNpcGVzIHN0YXJ0aW5nIGF0IHRoZSBwcm92aWRlZCBsb3dlciBib3VuZCBvdXRwdXQgaXRlbSBpZCwgdXAgdG8gdGhlIHNwZWNpZmllZCBsaW1pdC4gRWFjaCBlbnRyeSBpbmNsdWRlcyBpbnB1dHMsIGJsZW5kIHdlaWdodHMsIHN0YXQgc2xvdHMsIGFuZCByZXNvbHZlZCBpdGVtIG1hc3MgaW5mby4AAM4GYXWzYgpnZXRyZXNjYXRzngMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0cmVzY2F0cwpzdW1tYXJ5OiAnR2V0IHJlc291cmNlIGNhdGVnb3J5IGVudW0gdmFsdWVzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgZnVsbCBzZXQgb2YgcmVzb3VyY2UgY2F0ZWdvcnkgZW51bSB2YWx1ZXMgYW5kIHRoZWlyIHN0cmluZyBuYW1lcyAob3JlLCBnYXMsIHJlZ29saXRoLCBiaW9tYXNzLCBjcnlzdGFsKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZWNvZGUgcmVzb3VyY2Ugc3VidHlwZSBpZGVudGlmaWVycy4AsNpXYXWzYgtnZXRyZXNlcnZlc/wDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlc2VydmVzCnN1bW1hcnk6ICdHZXQgY3VycmVudCByZXNlcnZlIG1vZGlmaWNhdGlvbnMgYXQgYSBsb2NhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyB0aGUgY2hhaW4ncyBtb2RpZmljYXRpb25zIHRvIGRlcml2ZWQgcmVzZXJ2ZXMgYXQgdGhlIGdpdmVuIGNvb3JkaW5hdGUgZm9yIHRoZSBjdXJyZW50IGVwb2NoIGFzIGEgbGlzdCBvZiB7c3RyYXR1bSwgcmVtYWluaW5nfSBwYWlycy4gU3RyYXRhIG5vdCBwcmVzZW50IGluIHRoZSByZXNwb25zZSB1c2UgdGhlaXIgZGVyaXZlZCBpbml0aWFsIHJlc2VydmUuIENvbXBvc2Ugd2l0aCBTREsgZGVyaXZhdGlvbiB0byBnZXQgdGhlIGZ1bGwgcGVyLWxvY2F0aW9uIHN0cmF0YSB2aWV3LoAVuppidbNiDGdldHJlc291cmNlc4cDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlc291cmNlcwpzdW1tYXJ5OiAnR2V0IGFsbCByZXNvdXJjZSBpdGVtcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIHN1YnNldCBvZiBpdGVtcyBjbGFzc2lmaWVkIGFzIHJlc291cmNlcywgaW5jbHVkaW5nIGVhY2ggcmVzb3VyY2UncyBpZCwgbWFzcywgc3VidHlwZSwgYW5kIHRpZXIuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZW51bWVyYXRlIGdhdGhlcmFibGUgbWF0ZXJpYWxzLgAAADjTiLNiCGdldHNsb3RzuwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0c2xvdHMKc3VtbWFyeTogJ0dldCBlbnRpdHkgc2xvdCBsYXlvdXRzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgbW9kdWxlIHNsb3QgbGF5b3V0IGZvciBldmVyeSBlbnRpdHkgaXRlbSB0eXBlLCBsaXN0aW5nIHRoZSBvcmRlcmVkIHNsb3QgdHlwZXMgYXZhaWxhYmxlIGZvciBtb2R1bGUgaW5zdGFsbGF0aW9uLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGRldGVybWluZSB3aGljaCBtb2R1bGUgdHlwZXMgYXJlIGNvbXBhdGlibGUgd2l0aCBhIGdpdmVuIGVudGl0eSBodWxsLgCA1NncjLNiCmdldHN0cmF0dW3SAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRzdHJhdHVtCnN1bW1hcnk6ICdHZXQgcmVzb3VyY2Ugc3RyYXR1bSBkYXRhJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIHJlc291cmNlIHN0cmF0dW0gZGF0YSBmb3IgYSBzcGVjaWZpYyBkZXB0aCBsYXllciBhdCBhIGNvb3JkaW5hdGUsIGluY2x1ZGluZyB0aGUgc3RyYXR1bSBzZWVkIGluZm8gYW5kIGRlcml2ZWQgcmVzb3VyY2Ugc3RhdHMugJW7RkqNs2IMZ2V0c3VtbWFyaWVz6AItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0c3VtbWFyaWVzCnN1bW1hcnk6ICdHZXQgZW50aXR5IHN1bW1hcmllcyBmb3IgYSBwbGF5ZXInCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJldHVybnMgbGlnaHR3ZWlnaHQgc3VtbWFyaWVzIG9mIGFsbCBlbnRpdGllcyBvd25lZCBieSBhIHBsYXllciBpbmNsdWRpbmcgdHlwZSwgaWQsIG93bmVyLCBuYW1lLCBsb2NhdGlvbiwgYW5kIGlkbGUgc3RhdHVzLiBPcHRpb25hbGx5IGZpbHRlciBieSBlbnRpdHkgdHlwZS4Aotrm5qrpZQtncm91cHRyYXZlbJoELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdyb3VwdHJhdmVsCnN1bW1hcnk6ICdNb3ZlIG11bHRpcGxlIGVudGl0aWVzIHRvZ2V0aGVyJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbml0aWF0ZSBncm91cCB0cmF2ZWwgZm9yIG11bHRpcGxlIGVudGl0aWVzIHRvIGEgZGVzdGluYXRpb24uIEFsbCBlbnRpdGllcyBtdXN0IGJlIGF0IHRoZSBzYW1lIGxvY2F0aW9uIGFuZCBvd25lZCBieSB0aGUgY2FsbGVyLiBBdCBsZWFzdCBvbmUgZW50aXR5IHdpdGggZW5naW5lcyBpcyByZXF1aXJlZCB0byBwcm92aWRlIHRocnVzdC4gRmxpZ2h0IGR1cmF0aW9uIGlzIGNhbGN1bGF0ZWQgZnJvbSBjb21iaW5lZCB0aHJ1c3QgYW5kIHRvdGFsIG1hc3Mgb2YgYWxsIGVudGl0aWVzLiBDcmVhdGVzIGFuIGVudGl0eWdyb3VwIGZvciBhdG9taWMgcmVzb2x1dGlvbiBhbmQgY2FuY2VsbGF0aW9uLgAAAAAA0LBpBGhhc2j4AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBoYXNoCnN1bW1hcnk6ICdDYWxjdWxhdGUgc2hhMjU2IGhhc2gnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkNhbGN1bGF0ZXMgdGhlIHNoYTI1NiBoYXNoIG9mIGEgc3RyaW5nIGJhc2VkIHVzaW5nIHRoZSBnYW1lIHNlZWQuAAAAQITSsGkHaGFzaDUxMvsBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGhhc2g1MTIKc3VtbWFyeTogJ0NhbGN1bGF0ZSBzaGE1MTIgaGFzaCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ2FsY3VsYXRlcyB0aGUgc2hhNTEyIGhhc2ggb2YgYSBzdHJpbmcgYmFzZWQgdXNpbmcgdGhlIGdhbWUgc2VlZC4AAAAAAJDddARpbml0+gEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogaW5pdApzdW1tYXJ5OiAnSW5pdGlhbGl6ZSBnYW1lIHNlZWQnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkluaXRpYWxpemUgYSB0aGUgZ2FtZXMgc2VlZCBhbmQgc2VlZCB2YWx1ZXMgdG8gYm9vdHN0cmFwIGdhbWUgc3RhdGUuAAAAAAAwHX0Eam9pbsQBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGpvaW4Kc3VtbWFyeTogJ0pvaW4gYSBnYW1lJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpKb2luIGEgZ2FtZSBvZiBTaGlwbG9hZAAAAAD45TKdBm5vdGlmeYoDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IG5vdGlmeQpzdW1tYXJ5OiAnVGFzayBsaWZlY3ljbGUgbm90aWZpY2F0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gdGhhdCBub3RpZmllcyBlbnRpdHkgb3duZXJzIG9mIHRhc2sgbGlmZWN5Y2xlIGV2ZW50cyAocmVzb2x2ZWQsIGNhbmNlbGxlZCkuIENhbGxlZCBpbmxpbmUgd2hlbiB0YXNrcyBjaGFuZ2Ugc3RhdGUuIFVzZXMgcmVxdWlyZV9yZWNpcGllbnQgdG8gZW5hYmxlIG9mZi1jaGFpbiBtb25pdG9yaW5nIHZpYSBhY3Rpb24gdHJhY2VzLgAAAIpd05C6CHJlY2hhcmdlzQItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcmVjaGFyZ2UKc3VtbWFyeTogJ1JlY2hhcmdlIHNoaXAgZW5lcmd5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpTY2hlZHVsZSBhIHJlY2hhcmdlIHRhc2sgZm9yIGFuIGVudGl0eSB0byByZXN0b3JlIGVuZXJneSB0byBmdWxsIGNhcGFjaXR5LiBUaGUgcmVjaGFyZ2UgZHVyYXRpb24gZGVwZW5kcyBvbiBjdXJyZW50IGVuZXJneSBsZXZlbCBhbmQgcmVjaGFyZ2UgcmF0ZS4AAABA7UixugdyZXNvbHZl0AMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcmVzb2x2ZQpzdW1tYXJ5OiAnQ29tcGxldGUgc2NoZWR1bGVkIHRhc2tzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZXNvbHZlIGNvbXBsZXRlZCB0YXNrcyBpbiBhbiBlbnRpdHkncyBzY2hlZHVsZSwgYXBwbHlpbmcgdGhlaXIgZWZmZWN0cyAocmVjaGFyZ2UgZW5lcmd5LCB1cGRhdGUgbG9jYXRpb24sIGxvYWQvdW5sb2FkIGNhcmdvKS4gSWYgY291bnQgaXMgc3BlY2lmaWVkLCByZXNvbHZlIGV4YWN0bHkgdGhhdCBtYW55IHRhc2tzOyBvdGhlcndpc2UgcmVzb2x2ZSBhbGwgY29tcGxldGVkIHRhc2tzLiBGYWlscyBpZiBjb3VudCBleGNlZWRzIHRoZSBudW1iZXIgb2YgY29tcGxldGVkIHRhc2tzLgAAACrqRKW8CHJtbW9kdWxlvAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcm1tb2R1bGUKc3VtbWFyeTogJ1JlbW92ZSBhIG1vZHVsZSBmcm9tIGEgc2xvdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmVtb3ZlIGFuIGluc3RhbGxlZCBtb2R1bGUgZnJvbSBhIHNsb3Qgb24gYSBsaXZlIGVudGl0eSBvciBhIHBhY2tlZCBlbnRpdHkgaW4gY2FyZ28uIFRoZSBlbnRpdHkgbXVzdCBiZSBpZGxlIHdpdGggbm8gc2NoZWR1bGVkIHRhc2tzLiBUaGUgbW9kdWxlIGlzIHJldHVybmVkIHRvIGNhcmdvLiBGYWlscyBpZiB0aGUgZW50aXR5IGRvZXMgbm90IGhhdmUgZW5vdWdoIGNhcmdvIGNhcGFjaXR5IHRvIGhvbGQgdGhlIHJldHVybmVkIG1vZHVsZS4AAABsobymvAhybW5mdGNmZ6EDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHJtbmZ0Y2ZnCnN1bW1hcnk6ICdSZW1vdmUgTkZUIHRlbXBsYXRlIG1hcHBpbmcgZm9yIGFuIGl0ZW0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlbW92ZSB0aGUgQXRvbWljQXNzZXRzIHRlbXBsYXRlIG1hcHBpbmcgZm9yIHRoZSBzcGVjaWZpZWQgaXRlbSBpZCBmcm9tIHRoZSBgbmZ0Y29uZmlnYCB0YWJsZS4gQWZ0ZXIgcmVtb3ZhbCB0aGUgaXRlbSBjYW4gbm8gbG9uZ2VyIGJlIHdyYXBwZWQgb3IgdW53cmFwcGVkIHVudGlsIGEgbmV3IG1hcHBpbmcgaXMgc2V0LiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAAAAAACQo8EEc2FsdNgBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHNhbHQKc3VtbWFyeTogJ0FwcGVuZCBTYWx0JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpBZGQgYWRkaXRpb25hbCBzYWx0IHRvIHRoZSBuZXh0IGVwb2NoIHNlZWQuAABgC+U1s8IJc2V0bmZ0Y2ZnxAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogc2V0bmZ0Y2ZnCnN1bW1hcnk6ICdTZXQgTkZUIHRlbXBsYXRlIG1hcHBpbmcgZm9yIGFuIGl0ZW0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkJpbmQgYW4gaXRlbSBpZCB0byBhbiBBdG9taWNBc3NldHMgdGVtcGxhdGUgaWQgYW5kIHNjaGVtYSBuYW1lLiBVc2VkIHRvIGNvbmZpZ3VyZSBob3cgdGhlIGNvbnRyYWN0IG1pbnRzIGFuZCByZWNvZ25pemVzIE5GVHMgZm9yIGEgZ2l2ZW4gaXRlbS4gSW5zZXJ0cyBhIG5ldyBtYXBwaW5nIGlmIG9uZSBkb2VzIG5vdCBleGlzdCwgb3IgdXBkYXRlcyB0aGUgZXhpc3RpbmcgbWFwcGluZy4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LgAAZdegyU3FCnNwYXduY2FyZ2/FAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzcGF3bmNhcmdvCnN1bW1hcnk6ICdERUJVRzogc3Bhd24gY2FyZ28gb24gYW4gZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAJKCyNTJTcULc3Bhd25wYWNrZWTnAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzcGF3bnBhY2tlZApzdW1tYXJ5OiAnREVCVUc6IHNwYXduIGEgcGFja2VkIGVudGl0eSB3aXRoIGluc3RhbGxlZCBtb2R1bGVzIG9uIGFuIGVudGl0eScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQCSSkrhyU3FC3NwYXduc2VlZGVkzQEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogc3Bhd25zZWVkZWQKc3VtbWFyeTogJ0RFQlVHOiBzcGF3biBzZWVkZWQgY2FyZ28gb24gYW4gZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAVy08zc0IdHJhbnNmZXLIAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB0cmFuc2ZlcgpzdW1tYXJ5OiAnVHJhbnNmZXIgY2FyZ28gYmV0d2VlbiBlbnRpdGllcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVHJhbnNmZXIgY2FyZ28gYmV0d2VlbiB0d28gZW50aXRpZXMgYXQgdGhlIHNhbWUgbG9jYXRpb24uIEJvdGggZW50aXRpZXMgbXVzdCBiZSBvd25lZCBieSB0aGUgY2FsbGVyIGFuZCBhdCBsZWFzdCBvbmUgbXVzdCBoYXZlIGxvYWRlcnMuIENyZWF0ZXMgbG9hZCBhbmQgdW5sb2FkIHRhc2tzIG9uIGJvdGggZW50aXRpZXMgd2l0aCBkdXJhdGlvbiBiYXNlZCBvbiBjb21iaW5lZCBsb2FkZXIgY2FwYWNpdHkgYW5kIFotZGlzdGFuY2UgYmV0d2VlbiB0aGVtLgAAAABEtc3NBnRyYXZlbPsBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHRyYXZlbApzdW1tYXJ5OiAnTW92ZSBhIHNoaXAnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkluaXRpYXRlIHRyYXZlbCBvZiBhbiBlbnRpdHkgZnJvbSBpdHMgY3VycmVudCBsb2NhdGlvbiB0byBhIG5ldyBkZXN0aW5hdGlvbi4AAAAAAFCv4QR3YXJwnwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd2FycApzdW1tYXJ5OiAnV2FycCB0byBhIGRlc3RpbmF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnN0YW50bHkgdGVsZXBvcnQgYW4gZW50aXR5IHRvIGEgZGVzdGluYXRpb24gc3lzdGVtLiBSZXF1aXJlcyB3YXJwIGNhcGFiaWxpdHksIGZ1bGwgZW5lcmd5LCBlbXB0eSBjYXJnbywgYW5kIGFuIGVtcHR5IHNjaGVkdWxlLiBUaGUgZGVzdGluYXRpb24gbXVzdCBiZSBhIHZhbGlkIHN5c3RlbSB3aXRoaW4gd2FycCByYW5nZS4gUmVzb2x2ZXMgaW1tZWRpYXRlbHkgYXMgYSB6ZXJvLWR1cmF0aW9uIHRhc2suAAAAAACgquMEd2lwZbIBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHdpcGUKc3VtbWFyeTogJ0RFQlVHOiB3aXBlIGFjdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLaDQVNoqrKrjDHdpcGVzZXF1ZW5jZcIBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHdpcGVzZXF1ZW5jZQpzdW1tYXJ5OiAnREVCVUc6IHdpcGVzZXF1ZW5jZSBhY3Rpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0AAAAAAFDN5QR3cmFw/gMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd3JhcApzdW1tYXJ5OiAnV3JhcCBjYXJnbyBpbnRvIGFuIE5GVCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKV3JhcCBhIHF1YW50aXR5IG9mIGNhcmdvIGZyb20gYW4gZW50aXR5IGludG8gYW4gQXRvbWljQXNzZXRzIE5GVCBtaW50ZWQgdG8gdGhlIHNwZWNpZmllZCBvd25lci4gVGhlIGVudGl0eSBtdXN0IGJlIGF0IGEgbmV4dXMsIGhhdmUgbG9hZGVycywgYW5kIGNvbnRhaW4gZW5vdWdoIG9mIHRoZSByZXF1ZXN0ZWQgY2FyZ28uIFNjaGVkdWxlcyBhIHdyYXAgdGFzayB0aGF0LCBvbiByZXNvbHV0aW9uLCByZW1vdmVzIHRoZSBjYXJnbyBmcm9tIHRoZSBlbnRpdHkgYW5kIG1pbnRzIHRoZSBORlQgdXNpbmcgdGhlIHRlbXBsYXRlIGNvbmZpZ3VyZWQgZm9yIHRoYXQgaXRlbSBpZC4NAAAAAADKrkEDaTY0AAAJY2FyZ29fcm93AAC4ajqTJ0UDaTY0AAANY29udGFpbmVyX3JvdwCqppf57PJUA2k2NAAAD2VudGl0eWdyb3VwX3JvdwAAAJO6bBCNA2k2NAAADGxvY2F0aW9uX3JvdwAAAAAArLuaA2k2NAAACW5leHVzX3JvdwAAYG5NivKaA2k2NAAADW5mdGNvbmZpZ19yb3cAAAAAXOVNrANpNjQAAApwbGF5ZXJfcm93AAAAQO2rsLoDaTY0AAALcmVzZXJ2ZV9yb3cAAAAKTaWtwgNpNjQAAAxzZXF1ZW5jZV9yb3cAAAAAAFBdwwNpNjQAAAhzaGlwX3JvdwAAAAAAlU3GA2k2NAAACXN0YXRlX3JvdwAAAAAArKrPA2k2NAAACXR5cGVzX3JvdwAAUFjTpq7hA2k2NAAADXdhcmVob3VzZV9yb3cBEVNoaXBsb2FkIChTZXJ2ZXIpEVNoaXBsb2FkIChTZXJ2ZXIpAAAAJAAAAABEhaZBDmNhbmNlbF9yZXN1bHRzAAAAAIC8zEUMdGFza19yZXN1bHRzAAAAAHgaq0oMdGFza19yZXN1bHRzAIDPLk+FsEoGc3RyaW5nAAAAAFzVsmEMdGFza19yZXN1bHRzAABgbk2KsmILZ2FtZV9jb25maWcAsHLZ5amyYg1lbnRpdHlfaW5mb1tdAADw2eWpsmILZW50aXR5X2luZm8ATDZJquyyYg9pdGVtZGF0YV9yZXN1bHQAAE5OquyyYg9pdGVtX2lkc19yZXN1bHQAAABYquyyYgppdGVtc19pbmZvgFX1WarssmILZW51bV9yZXN1bHQAJnXZIBqzYg1sb2NhdGlvbl9pbmZvAIDJJiEas2IQbG9jYXRpb25fZGVyaXZlZACwqj4nKrNiC2VudW1fcmVzdWx0AABWUScqs2IObW9kdWxlc19yZXN1bHQAAPDnGjWzYgtuZWFyYnlfaW5mbwAAXdPlNbNiDm5mdGluZm9fcmVzdWx0AAC4yptYs2ILcGxheWVyX2luZm8AAFDVIXWzYg5yZWNpcGVzX3Jlc3VsdAAAVtUhdbNiDnJlY2lwZXNfcmVzdWx0AADOBmF1s2ILZW51bV9yZXN1bHQAsNpXYXWzYhNzdHJhdHVtX3JlbWFpbmluZ1tdgBW6mmJ1s2IQcmVzb3VyY2VzX3Jlc3VsdAAAADjTiLNiFWVudGl0eV9sYXlvdXRzX3Jlc3VsdACA1NncjLNiDHN0cmF0dW1fZGF0YYCVu0ZKjbNiEGVudGl0eV9zdW1tYXJ5W10Aotrm5qrpZQx0YXNrX3Jlc3VsdHMAAAAAANCwaQtjaGVja3N1bTI1NgAAAECE0rBpC2NoZWNrc3VtNTEyAAAAil3TkLoMdGFza19yZXN1bHRzAAAAQO1IsboPcmVzb2x2ZV9yZXN1bHRzAAAAVy08zc0MdGFza19yZXN1bHRzAAAAAES1zc0MdGFza19yZXN1bHRzAAAAAABQr+EMdGFza19yZXN1bHRzAAAAAABQzeUMdGFza19yZXN1bHRz'
|
|
34
|
+
'DmVvc2lvOjphYmkvMS4yAhVCX3ZlY3Rvcl9lbnRpdHlfcmVmX0UMZW50aXR5X3JlZltdDWxvY2F0aW9uX3R5cGUFdWludDipAQlhZGRtb2R1bGUABAllbnRpdHlfaWQGdWludDY0DG1vZHVsZV9pbmRleAV1aW50OAptb2R1bGVfcmVmCWNhcmdvX3JlZgp0YXJnZXRfcmVmCmNhcmdvX3JlZj8IYWRkbmV4dXMAAwpuZXh1c19uYW1lBnN0cmluZwF4BWludDY0AXkFaW50NjQJYWRkb3JhY2xlAAEJb3JhY2xlX2lkBG5hbWUFYmxlbmQAAgJpZAZ1aW50NjQGaW5wdXRzDGNhcmdvX2l0ZW1bXQlidWlsZHBsb3QAAgpidWlsZGVyX2lkBnVpbnQ2NAdwbG90X2lkBnVpbnQ2NAZjYW5jZWwAAwJpZAZ1aW50NjQIbGFuZV9rZXkFdWludDgFY291bnQGdWludDY0DmNhbmNlbF9yZXN1bHRzAAYJZW50aXR5X2lkBnVpbnQ2NAtlbnRpdHlfdHlwZQRuYW1lD2NhbmNlbGxlZF9jb3VudAV1aW50OBBzY2hlZHVsZV9zdGFydGVkC3RpbWVfcG9pbnQ/C2VudGl0eWdyb3VwB3VpbnQ2ND8NZ3JvdXBfbWVtYmVycxZCX3ZlY3Rvcl9lbnRpdHlfcmVmX0U/CmNhcmdvX2l0ZW0ABQdpdGVtX2lkBnVpbnQxNgVzdGF0cwZ1aW50NjQHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQhxdWFudGl0eQZ1aW50MzIJZW50aXR5X2lkB3VpbnQ2ND8JY2FyZ29fcmVmAAQHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0B21vZHVsZXMObW9kdWxlX2VudHJ5W10JZW50aXR5X2lkB3VpbnQ2ND8JY2FyZ29fcm93AAcCaWQGdWludDY0CWVudGl0eV9pZAZ1aW50NjQHaXRlbV9pZAZ1aW50NjQIcXVhbnRpdHkGdWludDY0BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdC3NlcXVlbmNlX2lkB3VpbnQ2ND8KY2FyZ29fdmlldwAGB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCHF1YW50aXR5BnVpbnQzMgJpZAZ1aW50NjQJZW50aXR5X2lkB3VpbnQ2ND8JY2xhaW1fcm93AAEFb3duZXIEbmFtZQljbGFpbXBsb3QAAwpidWlsZGVyX2lkBnVpbnQ2NA50YXJnZXRfaXRlbV9pZAZ1aW50MTYGY29vcmRzC2Nvb3JkaW5hdGVzDGNsYWltc3RhcnRlcgABBW93bmVyBG5hbWUJY2xlYW5yc3ZwAAIFZXBvY2gGdWludDY0CG1heF9yb3dzBnVpbnQ2NApjbGVhcnRhYmxlAAMKdGFibGVfbmFtZQRuYW1lBXNjb3BlBW5hbWU/CG1heF9yb3dzB3VpbnQ2ND8GY29tbWl0AAMJb3JhY2xlX2lkBG5hbWUFZXBvY2gGdWludDY0BmNvbW1pdAtjaGVja3N1bTI1Ngpjb21taXRfcm93AAQCaWQGdWludDY0BWVwb2NoBnVpbnQ2NAlvcmFjbGVfaWQEbmFtZQZjb21taXQLY2hlY2tzdW0yNTYJY29uZmlnbG9nAAEGY29uZmlnC2dhbWVfY29uZmlnC2Nvb3JkaW5hdGVzAAMBeAVpbnQ2NAF5BWludDY0AXoHdWludDE2PwVjcmFmdAAEAmlkBnVpbnQ2NAlyZWNpcGVfaWQGdWludDE2CHF1YW50aXR5BnVpbnQzMgZpbnB1dHMMY2FyZ29faXRlbVtdDWNyYWZ0ZXJfc3RhdHMAAgVzcGVlZAZ1aW50MTYFZHJhaW4GdWludDMyCGRlbW9saXNoAAEJZW50aXR5X2lkBnVpbnQ2NAZkZXBsb3kAAgJpZAZ1aW50NjQDcmVmCWNhcmdvX3JlZgpkZXNjZW50aXR5AAQHaXRlbV9pZAZ1aW50MTYKaHVsbF9zdGF0cwZ1aW50NjQMbW9kdWxlX2l0ZW1zCHVpbnQxNltdDG1vZHVsZV9zdGF0cwh1aW50NjRbXQZlbmFibGUAAQdlbmFibGVkBGJvb2wMZW5lcmd5X3N0YXRzAAIIY2FwYWNpdHkGdWludDMyCHJlY2hhcmdlBnVpbnQzMhRlbnRpdHlfY3VycmVudF9zdGF0ZQACC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzBmVuZXJneQZ1aW50MzIPZW50aXR5X2RlZmF1bHRzAAILd2FyZWhvdXNlX3oGdWludDE2C2NvbnRhaW5lcl96BnVpbnQxNgtlbnRpdHlfaW5mbwAUBHR5cGUEbmFtZQJpZAZ1aW50NjQFb3duZXIEbmFtZQtlbnRpdHlfbmFtZQZzdHJpbmcLY29vcmRpbmF0ZXMLY29vcmRpbmF0ZXMHaXRlbV9pZAZ1aW50MTYJY2FyZ29tYXNzBnVpbnQzMgVjYXJnbwxjYXJnb192aWV3W10HbW9kdWxlcw5tb2R1bGVfZW50cnlbXQZlbmVyZ3kHdWludDMyPwhodWxsbWFzcwd1aW50MzI/CGNhcGFjaXR5B3VpbnQzMj8HZW5naW5lcw9tb3ZlbWVudF9zdGF0cz8Ed2FycAt3YXJwX3N0YXRzPwlnZW5lcmF0b3INZW5lcmd5X3N0YXRzPwhnYXRoZXJlcg9nYXRoZXJlcl9zdGF0cz8HbG9hZGVycw1sb2FkZXJfc3RhdHM/BmhhdWxlcg1oYXVsZXJfc3RhdHM/B2NyYWZ0ZXIOY3JhZnRlcl9zdGF0cz8FbGFuZXMGbGFuZVtdDWVudGl0eV9sYXlvdXQAAg5lbnRpdHlfaXRlbV9pZAZ1aW50MTYFc2xvdHMKc2xvdF9kZWZbXRVlbnRpdHlfbGF5b3V0c19yZXN1bHQAAQhlbnRpdGllcw9lbnRpdHlfbGF5b3V0W10KZW50aXR5X3JlZgACC2VudGl0eV90eXBlBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAplbnRpdHlfcm93AAsCaWQGdWludDY0BW93bmVyBG5hbWUEa2luZARuYW1lB2l0ZW1faWQGdWludDE2BG5hbWUGc3RyaW5nBXN0YXRzBnVpbnQ2NAtjb29yZGluYXRlcwtjb29yZGluYXRlcwZlbmVyZ3kHdWludDMyPwljYXJnb21hc3MGdWludDMyB21vZHVsZXMObW9kdWxlX2VudHJ5W10FbGFuZXMGbGFuZVtdDmVudGl0eV9zZXFfcm93AAEHbmV4dF9pZAZ1aW50NjQOZW50aXR5X3N1bW1hcnkACAR0eXBlBG5hbWUCaWQGdWludDY0BW93bmVyBG5hbWULZW50aXR5X25hbWUGc3RyaW5nC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzB2lzX2lkbGUEYm9vbA5yZXNvbHZlZF9jb3VudAZ1aW50MzINcGVuZGluZ19jb3VudAZ1aW50MzIQZW50aXR5X3Rhc2tfaW5mbwAECWVudGl0eV9pZAZ1aW50NjQLZW50aXR5X3R5cGUEbmFtZQp0YXNrX2NvdW50BXVpbnQ4EHNjaGVkdWxlX3N0YXJ0ZWQKdGltZV9wb2ludA9lbnRpdHlncm91cF9yb3cAAgJpZAZ1aW50NjQMcGFydGljaXBhbnRzDGVudGl0eV9yZWZbXQtlbnVtX21lbWJlcgACBXZhbHVlBXVpbnQ4BG5hbWUGc3RyaW5nC2VudW1fcmVzdWx0AAEHbWVtYmVycw1lbnVtX21lbWJlcltdCWVwb2NoX3JvdwAEBWVwb2NoBnVpbnQ2NApvcmFjbGVfaWRzBm5hbWVbXQl0aHJlc2hvbGQFdWludDgEc2VlZAtjaGVja3N1bTI1NgxmaXhjYXJnb21hc3MAAQllbnRpdHlfaWQGdWludDY0C2ZvcmNlcmV2ZWFsAAEFZXBvY2gGdWludDY0C2dhbWVfY29uZmlnAAMHdmVyc2lvbgZ1aW50MzIIZGVmYXVsdHMPZW50aXR5X2RlZmF1bHRzBWl0ZW1zCml0ZW1fZGVmW10GZ2F0aGVyAAQJc291cmNlX2lkBnVpbnQ2NA5kZXN0aW5hdGlvbl9pZAZ1aW50NjQHc3RyYXR1bQZ1aW50MTYIcXVhbnRpdHkGdWludDMyDmdhdGhlcmVyX3N0YXRzAAMFeWllbGQGdWludDE2BWRyYWluBnVpbnQzMgVkZXB0aAZ1aW50MTYMZ2VuZXNpc2ZsZWV0AAEIZW50aXRpZXMMZW50aXR5X3Jvd1tdCWdldGNvbmZpZwAACmdldGRlcG9zaXQAAgVvd25lcgRuYW1lCGFzc2V0X2lkBnVpbnQ2NAtnZXRlbGlnaWJsZQACBmNvb3Jkcwtjb29yZGluYXRlcwdzdHJhdHVtBnVpbnQxNglnZXRlbnRjbHMAAAtnZXRlbnRpdGllcwACBW93bmVyBG5hbWULZW50aXR5X3R5cGUFbmFtZT8JZ2V0ZW50aXR5AAEJZW50aXR5X2lkBnVpbnQ2NAtnZXRpdGVtZGF0YQAACmdldGl0ZW1pZHMAAAhnZXRpdGVtcwAAC2dldGl0ZW10eXBlAAEHaXRlbV9pZAZ1aW50MTYMZ2V0aXRlbXR5cGVzAAALZ2V0a2luZG1ldGEAAAtnZXRsb2NhdGlvbgACAXgFaW50NjQBeQVpbnQ2NApnZXRsb2NkYXRhAAIBeAVpbnQ2NAF5BWludDY0C2dldG1vZHR5cGVzAAAKZ2V0bW9kdWxlcwAACWdldG5lYXJieQACCWVudGl0eV9pZAZ1aW50NjQIcmVjaGFyZ2UEYm9vbApnZXRuZnRiYXNlAAAKZ2V0bmZ0aW5mbwAACWdldHBsYXllcgABB2FjY291bnQEbmFtZQxnZXRwcm9qc3RhdGUAAgllbnRpdHlfaWQGdWludDY0CnRhc2tfY291bnQGdWludDg/CWdldHJlY2lwZQABDm91dHB1dF9pdGVtX2lkBnVpbnQxNgpnZXRyZWNpcGVzAAILbG93ZXJfYm91bmQGdWludDE2BWxpbWl0BXVpbnQ4CmdldHJlc2NhdHMAAAtnZXRyZXNlcnZlcwACAXgFaW50NjQBeQVpbnQ2NAxnZXRyZXNvdXJjZXMAAAhnZXRzbG90cwAACmdldHN0cmF0dW0AAwF4BWludDY0AXkFaW50NjQHc3RyYXR1bQZ1aW50MTYMZ2V0c3VtbWFyaWVzAAIFb3duZXIEbmFtZQtlbnRpdHlfdHlwZQVuYW1lPwtncm91cHRyYXZlbAAECGVudGl0aWVzDGVudGl0eV9yZWZbXQF4BWludDY0AXkFaW50NjQIcmVjaGFyZ2UEYm9vbARoYXNoAAEFdmFsdWUGc3RyaW5nB2hhc2g1MTIAAQV2YWx1ZQZzdHJpbmcMaGF1bGVyX3N0YXRzAAMIY2FwYWNpdHkFdWludDgKZWZmaWNpZW5jeQZ1aW50MTYFZHJhaW4GdWludDMyC2ltcG9ydGNhcmdvAAEDcm93CWNhcmdvX3JvdwxpbXBvcnRlbnRpdHkAAQNyb3cKZW50aXR5X3JvdwtpbXBvcnRncm91cAABA3Jvdw9lbnRpdHlncm91cF9yb3cMaW1wb3J0cGxheWVyAAEFb3duZXIEbmFtZQ1pbXBvcnRyZXNlcnZlAAILZXBvY2hfc2NvcGUGdWludDMyA3JvdwtyZXNlcnZlX3JvdwtpbXBvcnRzdGF0ZQABA3JvdwlzdGF0ZV9yb3cIaXRlbV9kZWYABQJpZAZ1aW50MTYEbWFzcwZ1aW50MzIEdHlwZQV1aW50OAdzdWJ0eXBlBXVpbnQ4BHRpZXIFdWludDgMaXRlbV9pZF9wYWlyAAICaWQGdWludDE2BG5hbWUGc3RyaW5nD2l0ZW1faWRzX3Jlc3VsdAABBWl0ZW1zDml0ZW1faWRfcGFpcltdD2l0ZW1kYXRhX3Jlc3VsdAACBWl0ZW1zCml0ZW1fZGVmW10HcmVjaXBlcw5yZWNpcGVzX3Jlc3VsdAppdGVtc19pbmZvAAEFaXRlbXMKaXRlbV9kZWZbXQRqb2luAAEHYWNjb3VudARuYW1lEGtpbmRfbWV0YV9yZXN1bHQAAgVraW5kcw9raW5kX21ldGFfcm93W10JdGVtcGxhdGVzE3RlbXBsYXRlX21ldGFfcm93W10Na2luZF9tZXRhX3JvdwAFBGtpbmQEbmFtZQ5jbGFzc2lmaWNhdGlvbgV1aW50OBBjYXBhYmlsaXR5X2ZsYWdzBXVpbnQ4B3pfY29vcmQGdWludDMyDWRlZmF1bHRfbGFiZWwGc3RyaW5nBGxhbmUAAghsYW5lX2tleQV1aW50OAhzY2hlZHVsZQhzY2hlZHVsZQxsb2FkZXJfc3RhdHMAAwRtYXNzBnVpbnQzMgZ0aHJ1c3QGdWludDE2CHF1YW50aXR5BXVpbnQ4EGxvY2F0aW9uX2Rlcml2ZWQAAgxzdGF0aWNfcHJvcHMPbG9jYXRpb25fc3RhdGljBHNpemUGdWludDE2DWxvY2F0aW9uX2luZm8AAgZjb29yZHMLY29vcmRpbmF0ZXMJaXNfc3lzdGVtBGJvb2wPbG9jYXRpb25fc3RhdGljAAUGY29vcmRzC2Nvb3JkaW5hdGVzBHR5cGUNbG9jYXRpb25fdHlwZQdzdWJ0eXBlBXVpbnQ4BXNlZWQwBXVpbnQ4BXNlZWQxBXVpbnQ4DG1vZHVsZV9lbnRyeQACBHR5cGUFdWludDgJaW5zdGFsbGVkDnBhY2tlZF9tb2R1bGU/C21vZHVsZV9pbmZvAAQCaWQGdWludDE2BG1hc3MGdWludDMyC21vZHVsZV90eXBlBXVpbnQ4BHRpZXIFdWludDgObW9kdWxlc19yZXN1bHQAAQdtb2R1bGVzDW1vZHVsZV9pbmZvW10ObW92ZW1lbnRfc3RhdHMAAgZ0aHJ1c3QGdWludDMyBWRyYWluBnVpbnQzMgtuZWFyYnlfaW5mbwAFCmNhbl90cmF2ZWwEYm9vbAdjdXJyZW50FGVudGl0eV9jdXJyZW50X3N0YXRlCXByb2plY3RlZBRlbnRpdHlfY3VycmVudF9zdGF0ZQptYXhfZW5lcmd5BnVpbnQzMgdzeXN0ZW1zD25lYXJieV9zeXN0ZW1bXQ1uZWFyYnlfc3lzdGVtAAQIZGlzdGFuY2UGdWludDY0C2VuZXJneV9jb3N0BnVpbnQ2NAtmbGlnaHRfdGltZQZ1aW50MzIIbG9jYXRpb24NbG9jYXRpb25faW5mbw5uZnRfY2FyZ29faXRlbQAEB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCHF1YW50aXR5BnVpbnQzMhBuZnRfaXRlbV9wYXlsb2FkAAIEaXRlbQ5uZnRfY2FyZ29faXRlbQhsb2NhdGlvbgxjb29yZGluYXRlcz8ObmZ0X3NjaGVtYV9kZWYAAgtzY2hlbWFfbmFtZQRuYW1lBmZpZWxkcw5zY2hlbWFfZmllbGRbXRBuZnRfdGVtcGxhdGVfZGVmAAMHaXRlbV9pZAZ1aW50MTYLc2NoZW1hX25hbWUEbmFtZQt0ZW1wbGF0ZV9pZAVpbnQzMg1uZnRjb25maWdfcm93AAMHaXRlbV9pZAZ1aW50MTYLdGVtcGxhdGVfaWQFaW50MzILc2NoZW1hX25hbWUEbmFtZQluZnRpbWd1cmwAAgRpdGVtCmNhcmdvX2l0ZW0IbG9jYXRpb24MY29vcmRpbmF0ZXM/Dm5mdGluZm9fcmVzdWx0AAIHc2NoZW1hcxBuZnRfc2NoZW1hX2RlZltdCXRlbXBsYXRlcxJuZnRfdGVtcGxhdGVfZGVmW10Gbm90aWZ5AAEFZXZlbnQKdGFza19ldmVudBFvcmFjbGVfY29uZmlnX3JvdwABCXRocmVzaG9sZAV1aW50OApvcmFjbGVfcm93AAECaWQEbmFtZQ1wYWNrZWRfbW9kdWxlAAIHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0CnBsYWNlY2FyZ28AAwVvd25lcgRuYW1lB2hvc3RfaWQGdWludDY0CGFzc2V0X2lkBnVpbnQ2NAtwbGFjZWVudGl0eQADBW93bmVyBG5hbWUIYXNzZXRfaWQGdWludDY0D3RhcmdldF9uZXh1c19pZAZ1aW50NjQLcGxheWVyX2luZm8AAwVvd25lcgRuYW1lCWlzX3BsYXllcgRib29sDGNvbXBhbnlfbmFtZQZzdHJpbmcKcGxheWVyX3JvdwABBW93bmVyBG5hbWUPcHJvamVjdGVkX3N0YXRlAA4Fb3duZXIEbmFtZQtjb29yZGluYXRlcwtjb29yZGluYXRlcwZlbmVyZ3kHdWludDMyPwljYXJnb21hc3MGdWludDMyBWNhcmdvDGNhcmdvX3ZpZXdbXQhodWxsbWFzcwd1aW50MzI/CGNhcGFjaXR5B3VpbnQzMj8HZW5naW5lcw9tb3ZlbWVudF9zdGF0cz8Ed2FycAt3YXJwX3N0YXRzPwlnZW5lcmF0b3INZW5lcmd5X3N0YXRzPwhnYXRoZXJlcg9nYXRoZXJlcl9zdGF0cz8HbG9hZGVycw1sb2FkZXJfc3RhdHM/BmhhdWxlcg1oYXVsZXJfc3RhdHM/B2NyYWZ0ZXIOY3JhZnRlcl9zdGF0cz8IcmVjaGFyZ2UAAQJpZAZ1aW50NjQMcmVjaXBlX2lucHV0AAIHaXRlbV9pZAZ1aW50MTYIcXVhbnRpdHkGdWludDMyEHJlY2lwZV9pdGVtX2luZm8AAgJpZAZ1aW50MTYEbWFzcwZ1aW50MzIPcmVjaXBlX3Jlc3BvbnNlAAcOb3V0cHV0X2l0ZW1faWQGdWludDE2C291dHB1dF9tYXNzBnVpbnQzMgZpbnB1dHMOcmVjaXBlX2lucHV0W10Kc3RhdF9zbG90cxRzdGF0X3Nsb3RfcmVzcG9uc2VbXQ1ibGVuZF93ZWlnaHRzBWJ5dGVzC291dHB1dF9pdGVtEHJlY2lwZV9pdGVtX2luZm8LaW5wdXRfaXRlbXMScmVjaXBlX2l0ZW1faW5mb1tdDnJlY2lwZXNfcmVzdWx0AAEHcmVjaXBlcxFyZWNpcGVfcmVzcG9uc2VbXQxyZWZyc2hlbnRpdHkAAQllbnRpdHlfaWQGdWludDY0DHJlbW92ZW9yYWNsZQABCW9yYWNsZV9pZARuYW1lBnJlbmFtZQACAmlkBnVpbnQ2NARuYW1lBnN0cmluZwtyZXNlcnZlX3JvdwAFAmlkBnVpbnQ2NAhjb29yZF9pZAZ1aW50NjQHc3RyYXR1bQZ1aW50MTYJcmVtYWluaW5nBnVpbnQzMgpsYXN0X2Jsb2NrFGJsb2NrX3RpbWVzdGFtcF90eXBlB3Jlc29sdmUAAgJpZAZ1aW50NjQFY291bnQHdWludDY0Pw9yZXNvbHZlX3Jlc3VsdHMABgllbnRpdHlfaWQGdWludDY0C2VudGl0eV90eXBlBG5hbWUOcmVzb2x2ZWRfY291bnQFdWludDgUbmV3X3NjaGVkdWxlX3N0YXJ0ZWQLdGltZV9wb2ludD8LZW50aXR5Z3JvdXAHdWludDY0Pw1ncm91cF9tZW1iZXJzFkJfdmVjdG9yX2VudGl0eV9yZWZfRT8NcmVzb3VyY2VfaW5mbwAEAmlkBnVpbnQxNgRtYXNzBnVpbnQzMghjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4DnJlc291cmNlX3N0YXRzAAMFc3RhdDEGdWludDE2BXN0YXQyBnVpbnQxNgVzdGF0MwZ1aW50MTYQcmVzb3VyY2VzX3Jlc3VsdAABCXJlc291cmNlcw9yZXNvdXJjZV9pbmZvW10IcmV0YXJnZXQAAwlzb3VyY2VfaWQGdWludDY0CnRhc2tfaW5kZXgGdWludDY0C25ld19kZXN0X2lkBnVpbnQ2NAZyZXZlYWwAAwlvcmFjbGVfaWQEbmFtZQVlcG9jaAZ1aW50NjQGcmV2ZWFsC2NoZWNrc3VtMjU2CnJldmVhbF9yb3cABAJpZAZ1aW50NjQFZXBvY2gGdWludDY0CW9yYWNsZV9pZARuYW1lBnJldmVhbAtjaGVja3N1bTI1NghybW1vZHVsZQADCWVudGl0eV9pZAZ1aW50NjQMbW9kdWxlX2luZGV4BXVpbnQ4CnRhcmdldF9yZWYKY2FyZ29fcmVmPwhybW5mdGNmZwABB2l0ZW1faWQGdWludDE2CHNjaGVkdWxlAAIHc3RhcnRlZAp0aW1lX3BvaW50BXRhc2tzBnRhc2tbXQxzY2hlbWFfZmllbGQAAgRuYW1lBnN0cmluZwpmaWVsZF90eXBlBnN0cmluZwlzZXRuZnRjZmcAAwdpdGVtX2lkBnVpbnQxNgt0ZW1wbGF0ZV9pZAVpbnQzMgtzY2hlbWFfbmFtZQRuYW1lDHNldHRocmVzaG9sZAABCXRocmVzaG9sZAV1aW50OAtzZXR3cmFwY29zdAADCWl0ZW1fdHlwZQV1aW50OAR0aWVyBXVpbnQ4BmFtb3VudAZ1aW50NjQKc2V0d3JhcGZlZQACB2ZlZV9wY3QGdWludDE2C2ZlZV9hY2NvdW50BG5hbWUIc2xvdF9kZWYAAgR0eXBlBXVpbnQ4Cm91dHB1dF9wY3QGdWludDE2EnN0YXRfc2xvdF9yZXNwb25zZQABB3NvdXJjZXMNc3RhdF9zb3VyY2VbXQtzdGF0X3NvdXJjZQACC2lucHV0X2luZGV4BXVpbnQ4EGlucHV0X3N0YXRfaW5kZXgFdWludDgJc3RhdGVfcm93AAMHZW5hYmxlZARib29sBWVwb2NoBnVpbnQzMgRzZWVkC2NoZWNrc3VtMjU2CXN0b3djYXJnbwAFBW93bmVyBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAhuZXh1c19pZAZ1aW50NjQIY2FyZ29faWQGdWludDY0CHF1YW50aXR5BnVpbnQ2NApzdG93ZW50aXR5AAMFb3duZXIEbmFtZQllbnRpdHlfaWQGdWludDY0CG5leHVzX2lkBnVpbnQ2NAxzdHJhdHVtX2RhdGEAAgdzdHJhdHVtDHN0cmF0dW1faW5mbwVzdGF0cw5yZXNvdXJjZV9zdGF0cwxzdHJhdHVtX2luZm8ABQdpdGVtX2lkBnVpbnQxNgRzZWVkBnVpbnQ2NAhyaWNobmVzcwZ1aW50MTYHcmVzZXJ2ZQZ1aW50MzILcmVzZXJ2ZV9tYXgGdWludDMyEXN0cmF0dW1fcmVtYWluaW5nAAMHc3RyYXR1bQZ1aW50MTYJcmVtYWluaW5nBnVpbnQzMgpsYXN0X2Jsb2NrFGJsb2NrX3RpbWVzdGFtcF90eXBlCnN3YXBtb2R1bGUAAwllbnRpdHlfaWQGdWludDY0DG1vZHVsZV9pbmRleAV1aW50OAptb2R1bGVfcmVmCWNhcmdvX3JlZgR0YXNrAAgEdHlwZQV1aW50OAhkdXJhdGlvbgZ1aW50MzIKY2FuY2VsYWJsZQV1aW50OAtjb29yZGluYXRlcwxjb29yZGluYXRlcz8FY2FyZ28MY2FyZ29faXRlbVtdDGVudGl0eXRhcmdldAtlbnRpdHlfcmVmPwtlbnRpdHlncm91cAd1aW50NjQ/C2VuZXJneV9jb3N0B3VpbnQzMj8KdGFza19ldmVudAAKCmV2ZW50X3R5cGUFdWludDgFb3duZXIEbmFtZQtlbnRpdHlfdHlwZQRuYW1lCWVudGl0eV9pZAZ1aW50NjQKdGFza19pbmRleAV1aW50OAR0YXNrBHRhc2sJc3RhcnRzX2F0CnRpbWVfcG9pbnQMY29tcGxldGVzX2F0CnRpbWVfcG9pbnQKbmV3X2VuZXJneQd1aW50MzI/CGxhbmVfa2V5BXVpbnQ4DHRhc2tfcmVzdWx0cwABCGVudGl0aWVzEmVudGl0eV90YXNrX2luZm9bXRF0ZW1wbGF0ZV9tZXRhX3JvdwADB2l0ZW1faWQGdWludDE2BGtpbmQEbmFtZQ1kaXNwbGF5X2xhYmVsBnN0cmluZwh0cmFuc2ZlcgADCXNvdXJjZV9pZAZ1aW50NjQHZGVzdF9pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdBnRyYXZlbAAEAmlkBnVpbnQ2NAF4BWludDY0AXkFaW50NjQIcmVjaGFyZ2UEYm9vbAl0eXBlc19yb3cABQJpZAZ1aW50NjQTZW50aXR5X3N1bW1hcnlfdHlwZQ5lbnRpdHlfc3VtbWFyeRBnYW1lX2NvbmZpZ190eXBlC2dhbWVfY29uZmlnFnN0cmF0dW1fcmVtYWluaW5nX3R5cGURc3RyYXR1bV9yZW1haW5pbmcVbmZ0X2l0ZW1fcGF5bG9hZF90eXBlEG5mdF9pdGVtX3BheWxvYWQIdW5kZXBsb3kAAgdob3N0X2lkBnVpbnQ2NAl0YXJnZXRfaWQGdWludDY0BHdhcnAAAwJpZAZ1aW50NjQBeAVpbnQ2NAF5BWludDY0CndhcnBfc3RhdHMAAQVyYW5nZQZ1aW50MzIEd2lwZQAADndyYXBjb25maWdfcm93AAIHZmVlX3BjdAZ1aW50MTYLZmVlX2FjY291bnQEbmFtZQx3cmFwY29zdF9yb3cAAwlpdGVtX3R5cGUFdWludDgEdGllcgV1aW50OAZhbW91bnQGdWludDY0VQAAUFEnKlMyCWFkZG1vZHVsZccDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGFkZG1vZHVsZQpzdW1tYXJ5OiAnSW5zdGFsbCBhIG1vZHVsZSBpbnRvIGEgc2xvdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW5zdGFsbCBhIG1vZHVsZSBmcm9tIGNhcmdvIGludG8gYSBtb2R1bGUgc2xvdCBvbiBhIGxpdmUgZW50aXR5IG9yIGEgcGFja2VkIGVudGl0eSBpbiBjYXJnby4gVGhlIGVudGl0eSBtdXN0IGJlIGlkbGUgd2l0aCBubyBzY2hlZHVsZWQgdGFza3MuIFRoZSBtb2R1bGUgdHlwZSBtdXN0IGJlIGNvbXBhdGlibGUgd2l0aCB0aGUgdGFyZ2V0IHNsb3QgdHlwZS4gVGhlIG1vZHVsZSBpdGVtIGlzIHJlbW92ZWQgZnJvbSBjYXJnbyB1cG9uIGluc3RhbGxhdGlvbi4AAABYdzVTMghhZGRuZXh1c6cDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGFkZG5leHVzCnN1bW1hcnk6ICdBZGQgYSBuZXh1cyBsb2NhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ3JlYXRlIGEgbmV3IG5leHVzIGVudGl0eSBhdCB0aGUgZ2l2ZW4gY29vcmRpbmF0ZXMuIE5leHVzZXMgYXJlIG93bmVkIGJ5IHRoZSBjb250cmFjdCBhbmQgc2VydmUgYXMgZml4ZWQgZ2F0aGVyaW5nIHBvaW50cyB3aGVyZSBwbGF5ZXJzIGNhbiB3cmFwLCB1bndyYXAsIGRlcGxveSwgYW5kIG90aGVyd2lzZSBpbnRlcmFjdCB3aXRoIE5GVC1iYWNrZWQgYXNzZXRzLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAABQEZlLUzIJYWRkb3JhY2xlAAAAAACANFU8BWJsZW5k/AItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogYmxlbmQKc3VtbWFyeTogJ0JsZW5kIGNhcmdvIHN0YWNrcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ29tYmluZSBtdWx0aXBsZSBjYXJnbyBzdGFja3Mgb2YgdGhlIHNhbWUgaXRlbSB0eXBlIGludG8gYSBzaW5nbGUgc3RhY2sgd2l0aCBuZXcgYmxlbmRlZCBzdGF0cy4gQWxsIGlucHV0IHN0YWNrcyBtdXN0IHNoYXJlIHRoZSBzYW1lIGl0ZW0gaWQuIFRoZSBvdXRwdXQgc3RhY2sgaGFzIHRoZSBjb21iaW5lZCBxdWFudGl0eSBvZiBhbGwgaW5wdXRzLgAAyDTWFJ0+CWJ1aWxkcGxvdAAAAAAARIWmQQZjYW5jZWzCAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjYW5jZWwKc3VtbWFyeTogJ0NhbmNlbCBzY2hlZHVsZWQgdGFza3MnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkNhbmNlbCB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiB0YXNrcyBmcm9tIHRoZSBlbmQgb2YgYW4gZW50aXR5J3Mgc2NoZWR1bGUuIFRhc2tzIHRoYXQgYXJlIGltbXV0YWJsZSBhbmQgaW4gcHJvZ3Jlc3MgY2Fubm90IGJlIGNhbmNlbGxlZC4AAMg0VulMRAljbGFpbXBsb3QAcFW+JmPpTEQMY2xhaW1zdGFydGVyAAAAqBvfaVRECWNsZWFucnN2cOwCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNsZWFucnN2cApzdW1tYXJ5OiAnQ2xlYW4gdXAgcGFzdCBlcG9jaCByZXNlcnZlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRXJhc2UgcmVzZXJ2ZSB0YWJsZSByb3dzIGZyb20gYSBwYXN0IGVwb2NoLiBDYW5ub3QgY2xlYW4gdGhlIGN1cnJlbnQgb3IgZnV0dXJlIGVwb2Nocy4gVGhlIG1heF9yb3dzIHBhcmFtZXRlciBjYXBzIHRoZSBudW1iZXIgb2Ygcm93cyBlcmFzZWQgcGVyIGNhbGwgdG8gbGltaXQgQ1BVIHVzYWdlLgCAisfka1RECmNsZWFydGFibGW+AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjbGVhcnRhYmxlCnN1bW1hcnk6ICdERUJVRzogY2xlYXJ0YWJsZSBhY3Rpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0AAAAAZCclRQZjb21taXTsAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjb21taXQKc3VtbWFyeTogJ1NldCBjb21taXQgdmFsdWUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClNldCB0aGUgaW5pdGlhbCBjb21taXQgdmFsdWUgZHVyaW5nIGdhbWUgaW5pdGlhbGl6YXRpb24uAABgNDK3JkUJY29uZmlnbG9n3QItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY29uZmlnbG9nCnN1bW1hcnk6ICdMb2cgZ2FtZSBjb25maWd1cmF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gdGhhdCBsb2dzIHRoZSBjdXJyZW50IGdhbWUgY29uZmlndXJhdGlvbi4gQ2FsbGVkIGlubGluZSBhZnRlciBpbml0aWFsaXphdGlvbiB0byBicm9hZGNhc3QgY29uZmlnIHZpYSBhY3Rpb24gdHJhY2VzLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAAAAAIC8zEUFY3JhZnTIAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjcmFmdApzdW1tYXJ5OiAnQ3JhZnQgaXRlbXMgZnJvbSBhIHJlY2lwZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVHJhbnNmb3JtIGNhcmdvIGl0ZW1zIGludG8gYSBuZXcgaXRlbSB1c2luZyBhIHJlY2lwZS4gVGhlIGVudGl0eSBtdXN0IGhhdmUgYSBjcmFmdGVyIG1vZHVsZSBpbnN0YWxsZWQuIENvbnN1bWVzIGVuZXJneSBhbmQgc2NoZWR1bGVzIGEgY3JhZnRpbmcgdGFzayB3aXRoIGR1cmF0aW9uIGJhc2VkIG9uIHRvdGFsIGlucHV0IG1hc3MgYW5kIGNyYWZ0ZXIgc3BlZWQuIElucHV0IHF1YW50aXRpZXMgbXVzdCBleGFjdGx5IG1hdGNoIHRoZSByZWNpcGUgcmVxdWlyZW1lbnRzLgAAAA27SKVKCGRlbW9saXNo8QMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZGVtb2xpc2gKc3VtbWFyeTogJ0RlbW9saXNoIGEgc3RhdGlvbmFyeSBlbnRpdHknCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkRlY29tbWlzc2lvbiBhbiBlbnRpdHksIGVyYXNpbmcgaXQgZnJvbSB0aGUgZ2FtZS4gVGhlIGVudGl0eSBtdXN0IGJlIGlkbGUsIGhhdmUgZW1wdHkgY2FyZ28sIGFuZCBoYXZlIG5vIGluc3RhbGxlZCBtb2R1bGVzIChyZW1vdmUgZWFjaCB2aWEgcm1tb2R1bGUgZmlyc3QpLiBTY2hlZHVsZXMgYSBkZW1vbGlzaCB0YXNrIHRoYXQgZXJhc2VzIHRoZSBlbnRpdHkgb24gcmVzb2x1dGlvbi4gT25seSB2YWxpZCBmb3IgZW50aXRpZXMgdGhhdCBjYW5ub3QgbW92ZTsgdXNlIHVuZGVwbG95IG9yIHdyYXBlbnRpdHkgZm9yIHRoZSByZXN0LgAAAAB4GqtKBmRlcGxveewCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGRlcGxveQpzdW1tYXJ5OiAnRGVwbG95IGEgcGFja2VkIGVudGl0eScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVW5wYWNrIGEgcGFja2VkIGVudGl0eSBpdGVtIChwYWNrZWQgc2hpcCBvciBwYWNrZWQgY29udGFpbmVyKSBmcm9tIGNhcmdvLCBzY2hlZHVsaW5nIGEgZGVwbG95IHRhc2sgdGhhdCBjcmVhdGVzIHRoZSBuZXcgZW50aXR5IGF0IHRoZSBkZXBsb3lpbmcgZW50aXR5J3MgbG9jYXRpb24gdXBvbiByZXNvbHV0aW9uLgCAzy5PhbBKCmRlc2NlbnRpdHnJAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBkZXNjZW50aXR5CnN1bW1hcnk6ICdEZXNjcmliZSBhIHBhY2tlZCBlbnRpdHknCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIGEgaHVtYW4tcmVhZGFibGUgZGVzY3JpcHRpb24gc3RyaW5nIGZvciBhIHBhY2tlZCBlbnRpdHksIGRlcml2ZWQgZnJvbSB0aGUgZW50aXR5IGl0ZW0gaWQsIGh1bGwgc3RhdHMsIGFuZCB0aGUgbGlzdCBvZiBpbnN0YWxsZWQgbW9kdWxlIGl0ZW0gaWRzIGFuZCBzdGF0cy4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyBhbmQgTkZUIHJlbmRlcmVycyB0byBkaXNwbGF5IHBhY2tlZCBlbnRpdGllcy4AAAAAqHjMVAZlbmFibGXdAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBlbmFibGUKc3VtbWFyeTogJ1NldCBlbmFibGVkIHN0YXRlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGlzIGdhbWUgb2YgU2hpcGxvYWQugLGRlF2DulsMZml4Y2FyZ29tYXNzkAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZml4Y2FyZ29tYXNzCnN1bW1hcnk6ICdERUJVRzogcmVjb21wdXRlIGVudGl0eSBjYXJnbyBtYXNzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZWNvbXB1dGUgYW5kIHJld3JpdGUgYW4gZW50aXR5J3MgY2FyZ28gbWFzcyBmcm9tIGl0cyBjdXJyZW50IGNhcmdvLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuIEF2YWlsYWJsZSBmb3IgcmVwYWlyaW5nIGRyaWZ0IGJldHdlZW4gY2FjaGVkIGNhcmdvIG1hc3MgYW5kIHRoZSB0cnVlIG1hc3MgZGVyaXZlZCBmcm9tIGNhcmdvIHJvd3MuAKJRW12FLl0LZm9yY2VyZXZlYWy+BC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBmb3JjZXJldmVhbApzdW1tYXJ5OiAnREVCVUc6IGZvcmNlLWZpbmFsaXplIGFuIGVwb2NoIGZyb20gZXhpc3RpbmcgcmV2ZWFscycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRmluYWxpemUgYSBzdHVjayBlcG9jaCBieSBjb21wdXRpbmcgaXRzIHNlZWQgZnJvbSB0aGUgcmV2ZWFscyBhbHJlYWR5IHN1Ym1pdHRlZCwgd2l0aG91dCB3YWl0aW5nIGZvciB0aGUgY29uZmlndXJlZCB0aHJlc2hvbGQuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4gVGhlIHNlZWQgaXMgZGVyaXZlZCBzb2xlbHkgZnJvbSB0aGUgcHJlLWltYWdlLWxvY2tlZCByZXZlYWxzIGFscmVhZHkgb24gY2hhaW47IG5vIGFkbWluLXN1cHBsaWVkIGVudHJvcHkgaXMgaW50cm9kdWNlZC4gVXNlZCB0byB1bmJsb2NrIGVwb2NoIHByb2dyZXNzaW9uIHdoZW4gdGhlIHRocmVzaG9sZCBjYW5ub3Qgb3RoZXJ3aXNlIGJlIG1ldC4AAAAAXNWyYQZnYXRoZXKXAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnYXRoZXIKc3VtbWFyeTogJ0dhdGhlciByZXNvdXJjZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkdhdGhlciByZXNvdXJjZXMgYXQgdGhlIHNoaXAncyBjdXJyZW50IGxvY2F0aW9uLiBPbmx5IHdvcmtzIGF0IGdhdGhlcmFibGUgbG9jYXRpb24gdHlwZXMuIFNjaGVkdWxlcyBhIGdhdGhlciB0YXNrIHRoYXQgY29uc3VtZXMgZW5lcmd5IGFuZCB5aWVsZHMgY2FyZ28gYmFzZWQgb24gdGhlIHNoaXAncyBnYXRoZXJlciBzdGF0cyBhbmQgdGhlIGxvY2F0aW9uJ3MgcmVzb3VyY2UgY29tcG9zaXRpb24ukJWKCzuspmIMZ2VuZXNpc2ZsZWV0qQQtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2VuZXNpc2ZsZWV0CnN1bW1hcnk6ICdNaW50IHRoZSBvbmUtdGltZSBnZW5lc2lzIGZsZWV0JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpFbXBsYWNlIHRoZSBvbmUtdGltZSBnZW5lc2lzIGZsZWV0OiBhIGNhbGxlci1zdXBwbGllZCBzZXQgb2YgZW50aXRpZXMgKHNoaXBzLCBzdHJ1Y3R1cmVzLCBhbmQgY29udGFpbmVycykgd3JpdHRlbiB0byB0aGUgd29ybGQgYXMtaXMuIFZhbGlkIG9ubHkgZHVyaW5nIHRoZSBwcmUtZ2VuZXNpcyB3aW5kb3csIGJlZm9yZSBlcG9jaCAxIGlzIGZpbmFsaXplZC4gVGhlIHN1cHBsaWVkIGVudGl0eSBpZHMgYXJlIGhvbm9yZWQgYW5kIHRoZSBpZCBzZXF1ZW5jZSBpcyBhZHZhbmNlZCBwYXN0IHRoZW07IGlkIDAgaXMgcmVzZXJ2ZWQgZm9yIHRoZSBHZW5lc2lzIE5leHVzLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAABgbk2KsmIJZ2V0Y29uZmlnygItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0Y29uZmlnCnN1bW1hcnk6ICdHZXQgZ2FtZSBjb25maWd1cmF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIHRoZSBnYW1lIGNvbmZpZ3VyYXRpb24gaW5jbHVkaW5nIGRlZmF1bHQgZW50aXR5IHN0YXRzIGZvciB3YXJlaG91c2VzIGFuZCBjb250YWluZXJzLCBhbmQgdGhlIGZ1bGwgaXRlbSBkZWZpbml0aW9ucyB0YWJsZS4AQHaYVpWyYgpnZXRkZXBvc2l0AABUPI65qLJiC2dldGVsaWdpYmxlyAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0ZWxpZ2libGUKc3VtbWFyeTogJ0dldCBlbGlnaWJsZSByZXNvdXJjZSBpdGVtIElEcyBhdCBhIGxvY2F0aW9uIGFuZCBzdHJhdHVtJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgbGlzdCBvZiByZXNvdXJjZSBpdGVtIElEcyBlbGlnaWJsZSB0byBiZSBnYXRoZXJlZCBhdCB0aGUgZ2l2ZW4gY29vcmRpbmF0ZXMgYW5kIHN0cmF0dW0gZGVwdGguIEl0ZW1zIGFyZSBnYXRlZCBieSBib3RoIHRoZSBsb2NhdGlvbidzIHJlc291cmNlIHByb2ZpbGUgYW5kIHRoZSBkZXB0aCB0aHJlc2hvbGQgZm9yIGVhY2ggdGllci4AAMAR5amyYglnZXRlbnRjbHOMAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRlbnRjbHMKc3VtbWFyeTogJ0dldCBlbnRpdHkgY2xhc3MgZW51bSB2YWx1ZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBlbnRpdHkgY2xhc3MgZW51bSB2YWx1ZXMgYW5kIHRoZWlyIHN0cmluZyBuYW1lcyAoT3JiaXRhbFZlc3NlbCwgUGxhbmV0YXJ5U3RydWN0dXJlKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZWNvZGUgZW50aXR5IGNsYXNzIGlkZW50aWZpZXJzLgCwctnlqbJiC2dldGVudGl0aWVzpAItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0ZW50aXRpZXMKc3VtbWFyeTogJ0dldCBhbGwgZW50aXRpZXMgZm9yIGEgcGxheWVyJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZXR1cm5zIGZ1bGwgZW50aXR5IGluZm8gZm9yIGFsbCBlbnRpdGllcyBvd25lZCBieSBhIHBsYXllci4gT3B0aW9uYWxseSBmaWx0ZXIgYnkgZW50aXR5IHR5cGUuAADw2eWpsmIJZ2V0ZW50aXR5ogItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0ZW50aXR5CnN1bW1hcnk6ICdHZXQgZW50aXR5IHN0YXRlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZXR1cm5zIHRoZSBjdXJyZW50IHN0YXRlIG9mIGFuIGVudGl0eSBpbmNsdWRpbmcgaWRlbnRpdHksIGNhcmdvLCBzY2hlZHVsZSBzdGF0ZSwgYW5kIHR5cGUtc3BlY2lmaWMgZmllbGRzLgBMNkmq7LJiC2dldGl0ZW1kYXRhqAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0aXRlbWRhdGEKc3VtbWFyeTogJ0dldCBmdWxsIGl0ZW0gY2F0YWxvZycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGNvbXBsZXRlIGl0ZW0gY2F0YWxvZyBhcyB0aGUgY29udHJhY3Qgc2VlcyBpdCwgaW5jbHVkaW5nIHR5cGUsIHN1YnR5cGUsIHRpZXIsIG1hc3MsIGFuZCBvdGhlciBzdGF0aWMgbWV0YWRhdGEuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgYW5kIGNsaWVudHMgdG8gbWlycm9yIHRoZSBjb250cmFjdCdzIGl0ZW0gZGVmaW5pdGlvbnMuAABOTqrssmIKZ2V0aXRlbWlkc4YDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGl0ZW1pZHMKc3VtbWFyeTogJ0dldCBpdGVtIGlkIHRvIG5hbWUgbWFwcGluZ3MnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIG1hcHBpbmcgb2YgaXRlbSBpZCBjb25zdGFudHMgdG8gdGhlaXIgY2Fub25pY2FsIHN0cmluZyBuYW1lcy4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byByZXNvbHZlIG51bWVyaWMgaXRlbSBpZHMgdG8gaHVtYW4tcmVhZGFibGUgaWRlbnRpZmllcnMuAAAAWKrssmIIZ2V0aXRlbXOaAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRpdGVtcwpzdW1tYXJ5OiAnR2V0IGFsbCBhdmFpbGFibGUgaXRlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgYSBsaXN0IG9mIGFsbCBpdGVtcyBpbiB0aGUgZ2FtZSBpbmNsdWRpbmcgdGhlaXIgaWQsIGJhc2UgcHJpY2UsIGFuZCBtYXNzLgBU9Vmq7LJiC2dldGl0ZW10eXBlAIBV9Vmq7LJiDGdldGl0ZW10eXBlc4gDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGl0ZW10eXBlcwpzdW1tYXJ5OiAnR2V0IGl0ZW0gdHlwZSBlbnVtIHZhbHVlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgc2V0IG9mIGl0ZW0gdHlwZSBlbnVtIHZhbHVlcyBhbmQgdGhlaXIgc3RyaW5nIG5hbWVzIChyZXNvdXJjZSwgY29tcG9uZW50LCBtb2R1bGUsIGVudGl0eSkuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGVjb2RlIGl0ZW0gdHlwZSBpZGVudGlmaWVycy4ATFYyTQezYgtnZXRraW5kbWV0YfgDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGtpbmRtZXRhCnN1bW1hcnk6ICdHZXQgZW50aXR5IGtpbmQgbWV0YWRhdGEnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBlbnRpdHkga2luZCByZWdpc3RyeSBhbmQgdGVtcGxhdGUgcmVnaXN0cnksIGluY2x1ZGluZyBlYWNoIGtpbmQncyBjbGFzc2lmaWNhdGlvbiwgY2FwYWJpbGl0eSBmbGFncywgWi1jb29yZGluYXRlLCBhbmQgZGVmYXVsdCBsYWJlbCwgcGx1cyB0aGUgbWFwcGluZyBvZiBlbnRpdHkgaXRlbSBpZHMgdG8ga2luZHMgd2l0aCBkaXNwbGF5IGxhYmVscy4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBpbnRlcnByZXQgZW50aXR5IGtpbmRzIGFuZCBjYXBhYmlsaXRpZXMuACZ12SAas2ILZ2V0bG9jYXRpb27iAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRsb2NhdGlvbgpzdW1tYXJ5OiAnR2V0IGxvY2F0aW9uIGluZm9ybWF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGluZm9ybWF0aW9uIGFib3V0IGEgbG9jYXRpb24gaW5jbHVkaW5nIHdoZXRoZXIgYSBzeXN0ZW0gZXhpc3RzLCBhbmQgZm9yIGVhY2ggaXRlbTogcHJpY2UsIHN1cHBseSwgcmFyaXR5IG11bHRpcGxpZXIsIGFuZCBsb2NhdGlvbiBtdWx0aXBsaWVyLgCAySYhGrNiCmdldGxvY2RhdGH+Ai0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRsb2NkYXRhCnN1bW1hcnk6ICdHZXQgZGVyaXZlZCBsb2NhdGlvbiBkYXRhJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIGRlcml2ZWQgbG9jYXRpb24gZGF0YSBpbmNsdWRpbmcgc3RhdGljIHByb3BlcnRpZXMgKHR5cGUsIGRpZmZpY3VsdHksIHNlZWRzKSBmcm9tIHRoZSBnYW1lIHNlZWQgYW5kIGVwb2NoLXNwZWNpZmljIHByb3BlcnRpZXMgKGFjdGl2ZSwgc2VlZHMpIGZyb20gdGhlIGN1cnJlbnQgZXBvY2ggc2VlZC4AsKo+JyqzYgtnZXRtb2R0eXBlc9YDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldG1vZHR5cGVzCnN1bW1hcnk6ICdHZXQgbW9kdWxlIHR5cGUgZW51bSB2YWx1ZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBmdWxsIHNldCBvZiBtb2R1bGUgdHlwZSBlbnVtIHZhbHVlcyBhbmQgdGhlaXIgc3RyaW5nIG5hbWVzIChhbnksIGVuZ2luZSwgZ2VuZXJhdG9yLCBnYXRoZXJlciwgbG9hZGVyLCB3YXJwLCBjcmFmdGVyLCBsYXVuY2hlciwgc3RvcmFnZSwgaGF1bGVyKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZWNvZGUgbW9kdWxlIHN1YnR5cGUgaWRlbnRpZmllcnMgYW5kIHNsb3QgY29tcGF0aWJpbGl0eS4AAFZRJyqzYgpnZXRtb2R1bGVzgAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0bW9kdWxlcwpzdW1tYXJ5OiAnR2V0IGFsbCBtb2R1bGUgaXRlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBzdWJzZXQgb2YgaXRlbXMgY2xhc3NpZmllZCBhcyBtb2R1bGVzLCBpbmNsdWRpbmcgZWFjaCBtb2R1bGUncyBpZCwgbWFzcywgc3VidHlwZSwgYW5kIHRpZXIuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZW51bWVyYXRlIGluc3RhbGxhYmxlIGVxdWlwbWVudC4AAPDnGjWzYglnZXRuZWFyYnneAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRuZWFyYnkKc3VtbWFyeTogJ0dldCBuZWFyYnkgcmVhY2hhYmxlIHN5c3RlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgbmVhcmJ5IHN5c3RlbXMgcmVhY2hhYmxlIGJ5IGFuIGVudGl0eSBmcm9tIGl0cyBwcm9qZWN0ZWQgbG9jYXRpb24uIFJldHVybnMgY3VycmVudCBzdGF0ZSAod2l0aCBjb21wbGV0ZWQgdGFza3MgcmVzb2x2ZWQpLCBwcm9qZWN0ZWQgc3RhdGUgKGFmdGVyIGFsbCBzY2hlZHVsZWQgdGFza3MpLCBhbmQgYSBsaXN0IG9mIHJlYWNoYWJsZSBzeXN0ZW1zIHdpdGggZGlzdGFuY2UsIGVuZXJneSBjb3N0LCBmbGlnaHQgdGltZSwgYW5kIG1hcmtldCBpbmZvcm1hdGlvbi4AgMLm5DWzYgpnZXRuZnRiYXNlAAAAXdPlNbNiCmdldG5mdGluZm/wAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRuZnRpbmZvCnN1bW1hcnk6ICdHZXQgTkZUIHNjaGVtYSBhbmQgdGVtcGxhdGUgY29uZmlndXJhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgc2V0IG9mIEF0b21pY0Fzc2V0cyBzY2hlbWFzIGFuZCB0ZW1wbGF0ZXMgdGhlIGdhbWUgY29udHJhY3QgZXhwZWN0cywgcGx1cyB0aGUgY3VycmVudCBgaXRlbV9pZCDihpIgKHRlbXBsYXRlX2lkLCBzY2hlbWFfbmFtZSlgIG1hcHBpbmcgc3RvcmVkIGluIHRoZSBgbmZ0Y29uZmlnYCB0YWJsZS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBzeW5jIGF0b21pY2Fzc2V0cyBzdGF0ZSB3aXRoIHRoZSBjb250cmFjdC4AALjKm1izYglnZXRwbGF5ZXL9Ai0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRwbGF5ZXIKc3VtbWFyeTogJ0dldCBwbGF5ZXIgaW5mb3JtYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgaW5mb3JtYXRpb24gYWJvdXQgYSBwbGF5ZXIgaW5jbHVkaW5nIGJhbGFuY2UsIGRlYnQsIG5ldHdvcnRoLCBlbnRpdHkgY291bnRzLCBhbmQgcHJpY2luZyBmb3IgbmV4dCBwdXJjaGFzZXMuIFJldHVybnMgaXNfcGxheWVyPWZhbHNlIGlmIHRoZSBhY2NvdW50IGhhcyBub3Qgam9pbmVkIHRoZSBnYW1lLqCyyfjRW7NiDGdldHByb2pzdGF0ZcsDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHByb2pzdGF0ZQpzdW1tYXJ5OiAnR2V0IHByb2plY3RlZCBlbnRpdHkgc3RhdGUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBwcm9qZWN0ZWQgc3RhdGUgb2YgYW4gZW50aXR5IGFmdGVyIGFwcGx5aW5nIHRoZSBuZXh0IHRhc2tfY291bnQgc2NoZWR1bGVkIHRhc2tzIChvciBhbGwgdGFza3MgaWYgdGFza19jb3VudCBpcyBvbWl0dGVkKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBwcmV2aWV3IHRoZSByZXN1bHQgb2YgYW4gZW50aXR5J3Mgc2NoZWR1bGUgd2l0aG91dCByZXNvbHZpbmcgb24tY2hhaW4uAABQ1SF1s2IJZ2V0cmVjaXBlpgMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0cmVjaXBlCnN1bW1hcnk6ICdHZXQgYSBzaW5nbGUgY3JhZnRpbmcgcmVjaXBlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgcmVjaXBlIHdob3NlIG91dHB1dCBtYXRjaGVzIHRoZSBnaXZlbiBpdGVtIGlkLCBpbmNsdWRpbmcgaXRzIGlucHV0cywgYmxlbmQgd2VpZ2h0cywgc3RhdCBzbG90cywgYW5kIHJlc29sdmVkIGl0ZW0gbWFzcyBpbmZvLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGRpc3BsYXkgY3JhZnRpbmcgcmVxdWlyZW1lbnRzLgAAVtUhdbNiCmdldHJlY2lwZXOsAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZWNpcGVzCnN1bW1hcnk6ICdMaXN0IGNyYWZ0aW5nIHJlY2lwZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIGEgcGFnaW5hdGVkIGxpc3Qgb2YgY3JhZnRpbmcgcmVjaXBlcyBzdGFydGluZyBhdCB0aGUgcHJvdmlkZWQgbG93ZXIgYm91bmQgb3V0cHV0IGl0ZW0gaWQsIHVwIHRvIHRoZSBzcGVjaWZpZWQgbGltaXQuIEVhY2ggZW50cnkgaW5jbHVkZXMgaW5wdXRzLCBibGVuZCB3ZWlnaHRzLCBzdGF0IHNsb3RzLCBhbmQgcmVzb2x2ZWQgaXRlbSBtYXNzIGluZm8uAADOBmF1s2IKZ2V0cmVzY2F0c54DLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlc2NhdHMKc3VtbWFyeTogJ0dldCByZXNvdXJjZSBjYXRlZ29yeSBlbnVtIHZhbHVlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgc2V0IG9mIHJlc291cmNlIGNhdGVnb3J5IGVudW0gdmFsdWVzIGFuZCB0aGVpciBzdHJpbmcgbmFtZXMgKG9yZSwgZ2FzLCByZWdvbGl0aCwgYmlvbWFzcywgY3J5c3RhbCkuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGVjb2RlIHJlc291cmNlIHN1YnR5cGUgaWRlbnRpZmllcnMuALDaV2F1s2ILZ2V0cmVzZXJ2ZXP8Ay0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZXNlcnZlcwpzdW1tYXJ5OiAnR2V0IGN1cnJlbnQgcmVzZXJ2ZSBtb2RpZmljYXRpb25zIGF0IGEgbG9jYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgdGhlIGNoYWluJ3MgbW9kaWZpY2F0aW9ucyB0byBkZXJpdmVkIHJlc2VydmVzIGF0IHRoZSBnaXZlbiBjb29yZGluYXRlIGZvciB0aGUgY3VycmVudCBlcG9jaCBhcyBhIGxpc3Qgb2Yge3N0cmF0dW0sIHJlbWFpbmluZ30gcGFpcnMuIFN0cmF0YSBub3QgcHJlc2VudCBpbiB0aGUgcmVzcG9uc2UgdXNlIHRoZWlyIGRlcml2ZWQgaW5pdGlhbCByZXNlcnZlLiBDb21wb3NlIHdpdGggU0RLIGRlcml2YXRpb24gdG8gZ2V0IHRoZSBmdWxsIHBlci1sb2NhdGlvbiBzdHJhdGEgdmlldy6AFbqaYnWzYgxnZXRyZXNvdXJjZXOHAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZXNvdXJjZXMKc3VtbWFyeTogJ0dldCBhbGwgcmVzb3VyY2UgaXRlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBzdWJzZXQgb2YgaXRlbXMgY2xhc3NpZmllZCBhcyByZXNvdXJjZXMsIGluY2x1ZGluZyBlYWNoIHJlc291cmNlJ3MgaWQsIG1hc3MsIHN1YnR5cGUsIGFuZCB0aWVyLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGVudW1lcmF0ZSBnYXRoZXJhYmxlIG1hdGVyaWFscy4AAAA404izYghnZXRzbG90c7sDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHNsb3RzCnN1bW1hcnk6ICdHZXQgZW50aXR5IHNsb3QgbGF5b3V0cycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIG1vZHVsZSBzbG90IGxheW91dCBmb3IgZXZlcnkgZW50aXR5IGl0ZW0gdHlwZSwgbGlzdGluZyB0aGUgb3JkZXJlZCBzbG90IHR5cGVzIGF2YWlsYWJsZSBmb3IgbW9kdWxlIGluc3RhbGxhdGlvbi4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZXRlcm1pbmUgd2hpY2ggbW9kdWxlIHR5cGVzIGFyZSBjb21wYXRpYmxlIHdpdGggYSBnaXZlbiBlbnRpdHkgaHVsbC4AgNTZ3IyzYgpnZXRzdHJhdHVt0gItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0c3RyYXR1bQpzdW1tYXJ5OiAnR2V0IHJlc291cmNlIHN0cmF0dW0gZGF0YScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyByZXNvdXJjZSBzdHJhdHVtIGRhdGEgZm9yIGEgc3BlY2lmaWMgZGVwdGggbGF5ZXIgYXQgYSBjb29yZGluYXRlLCBpbmNsdWRpbmcgdGhlIHN0cmF0dW0gc2VlZCBpbmZvIGFuZCBkZXJpdmVkIHJlc291cmNlIHN0YXRzLoCVu0ZKjbNiDGdldHN1bW1hcmllc+gCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHN1bW1hcmllcwpzdW1tYXJ5OiAnR2V0IGVudGl0eSBzdW1tYXJpZXMgZm9yIGEgcGxheWVyJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZXR1cm5zIGxpZ2h0d2VpZ2h0IHN1bW1hcmllcyBvZiBhbGwgZW50aXRpZXMgb3duZWQgYnkgYSBwbGF5ZXIgaW5jbHVkaW5nIHR5cGUsIGlkLCBvd25lciwgbmFtZSwgbG9jYXRpb24sIGFuZCBpZGxlIHN0YXR1cy4gT3B0aW9uYWxseSBmaWx0ZXIgYnkgZW50aXR5IHR5cGUuAKLa5uaq6WULZ3JvdXB0cmF2ZWyaBC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBncm91cHRyYXZlbApzdW1tYXJ5OiAnTW92ZSBtdWx0aXBsZSBlbnRpdGllcyB0b2dldGhlcicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW5pdGlhdGUgZ3JvdXAgdHJhdmVsIGZvciBtdWx0aXBsZSBlbnRpdGllcyB0byBhIGRlc3RpbmF0aW9uLiBBbGwgZW50aXRpZXMgbXVzdCBiZSBhdCB0aGUgc2FtZSBsb2NhdGlvbiBhbmQgb3duZWQgYnkgdGhlIGNhbGxlci4gQXQgbGVhc3Qgb25lIGVudGl0eSB3aXRoIGVuZ2luZXMgaXMgcmVxdWlyZWQgdG8gcHJvdmlkZSB0aHJ1c3QuIEZsaWdodCBkdXJhdGlvbiBpcyBjYWxjdWxhdGVkIGZyb20gY29tYmluZWQgdGhydXN0IGFuZCB0b3RhbCBtYXNzIG9mIGFsbCBlbnRpdGllcy4gQ3JlYXRlcyBhbiBlbnRpdHlncm91cCBmb3IgYXRvbWljIHJlc29sdXRpb24gYW5kIGNhbmNlbGxhdGlvbi4AAAAAANCwaQRoYXNo+AEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogaGFzaApzdW1tYXJ5OiAnQ2FsY3VsYXRlIHNoYTI1NiBoYXNoJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpDYWxjdWxhdGVzIHRoZSBzaGEyNTYgaGFzaCBvZiBhIHN0cmluZyBiYXNlZCB1c2luZyB0aGUgZ2FtZSBzZWVkLgAAAECE0rBpB2hhc2g1MTL7AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBoYXNoNTEyCnN1bW1hcnk6ICdDYWxjdWxhdGUgc2hhNTEyIGhhc2gnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkNhbGN1bGF0ZXMgdGhlIHNoYTUxMiBoYXNoIG9mIGEgc3RyaW5nIGJhc2VkIHVzaW5nIHRoZSBnYW1lIHNlZWQuACi7BuVLq3QLaW1wb3J0Y2FyZ28A4LPLU+VLq3QMaW1wb3J0ZW50aXR5AACqppflS6t0C2ltcG9ydGdyb3VwAHCVN7HmS6t0DGltcG9ydHBsYXllcgC6r8Lq5kurdA1pbXBvcnRyZXNlcnZlAABUNhnnS6t0C2ltcG9ydHN0YXRlAAAAAAAAMB19BGpvaW7EAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBqb2luCnN1bW1hcnk6ICdKb2luIGEgZ2FtZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSm9pbiBhIGdhbWUgb2YgU2hpcGxvYWQAAIhXM+nymgluZnRpbWd1cmyyAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBuZnRpbWd1cmwKc3VtbWFyeTogJ0dldCBORlQgaW1hZ2UgVVJMIGZvciBhIGNhcmdvIGl0ZW0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBpbWFnZSBVUkwgdGhlIGNvbnRyYWN0IGVtaXRzIGZvciBhIGdpdmVuIGNhcmdvIGl0ZW0sIG9wdGlvbmFsbHkgc2NvcGVkIHRvIGEgbG9jYXRpb24uIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgYW5kIE5GVCByZW5kZXJlcnMgdG8gZmV0Y2ggdGhlIGNhbm9uaWNhbCBhcnR3b3JrIGZvciBhbiBpdGVtIG9yIHBhY2tlZCBlbnRpdHkuAAAAAPjlMp0Gbm90aWZ5igMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogbm90aWZ5CnN1bW1hcnk6ICdUYXNrIGxpZmVjeWNsZSBub3RpZmljYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiB0aGF0IG5vdGlmaWVzIGVudGl0eSBvd25lcnMgb2YgdGFzayBsaWZlY3ljbGUgZXZlbnRzIChyZXNvbHZlZCwgY2FuY2VsbGVkKS4gQ2FsbGVkIGlubGluZSB3aGVuIHRhc2tzIGNoYW5nZSBzdGF0ZS4gVXNlcyByZXF1aXJlX3JlY2lwaWVudCB0byBlbmFibGUgb2ZmLWNoYWluIG1vbml0b3JpbmcgdmlhIGFjdGlvbiB0cmFjZXMuAABl1yCFTKwKcGxhY2VjYXJnb8kELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHBsYWNlY2FyZ28Kc3VtbWFyeTogJ1Jlc3RvcmUgTkZUIGNhcmdvIG9udG8gYSBob3N0IGVudGl0eScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW50ZXJuYWwgYWN0aW9uIGNhbGxlZCBpbmxpbmUgYnkgdGhlIHBsYXRmb3JtIGNvbnRyYWN0IG9ubHkuIFJlc3RvcmVzIHRoZSBjYXJnbyByZWNvcmRlZCBpbiBhbiB1bndyYXBwZWQgTkZUIG9udG8gYSBob3N0IGVudGl0eS4gVmFsaWRhdGVzIGhvc3Qgb3duZXJzaGlwLCBsb2FkZXJzLCBhbmQgcmVtYWluaW5nIGNhcGFjaXR5LCBkZXNlcmlhbGl6ZXMgdGhlIE5GVCdzIGl0ZW0gZGF0YSwgYW5kIGFwcGVuZHMgYW4gdW53cmFwIHRhc2sgdG8gZGVsaXZlciB0aGUgY2FyZ28gdG8gdGhlIGhvc3QuIFRoZSBwbGF0Zm9ybSBjb250cmFjdCBjcmVkaXRzIHRoZSBkZXBvc2l0IHJlZnVuZCBhbmQgYnVybnMgdGhlIGFzc2V0LiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAHx2eSqFTKwLcGxhY2VlbnRpdHnABC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBwbGFjZWVudGl0eQpzdW1tYXJ5OiAnTWF0ZXJpYWxpemUgYSBwYWNrZWQtZW50aXR5IE5GVCBhcyBhIGxpdmUgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gY2FsbGVkIGlubGluZSBieSB0aGUgcGxhdGZvcm0gY29udHJhY3Qgb25seS4gRW1wbGFjZXMgYSBsaXZlIG9yYml0YWwgdmVzc2VsIChzaGlwIG9yIGNvbnRhaW5lcikgZnJvbSBpdHMgcGFja2VkLWVudGl0eSBORlQgZGF0YSBhdCB0aGUgcmVjb3JkZWQgd3JhcCBvcmlnaW4sIHRoZW4gcXVldWVzIHRyYXZlbCBhbmQgcmVjaGFyZ2UgdGFza3MgdG8gZGVsaXZlciBpdCB0byB0aGUgdGFyZ2V0IG5leHVzIGF0IGZ1bGwgZW5lcmd5LiBUaGUgcGxhdGZvcm0gY29udHJhY3QgY3JlZGl0cyB0aGUgZGVwb3NpdCByZWZ1bmQgYW5kIGJ1cm5zIHRoZSBhc3NldC4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LgAAAIpd05C6CHJlY2hhcmdlzQItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcmVjaGFyZ2UKc3VtbWFyeTogJ1JlY2hhcmdlIHNoaXAgZW5lcmd5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpTY2hlZHVsZSBhIHJlY2hhcmdlIHRhc2sgZm9yIGFuIGVudGl0eSB0byByZXN0b3JlIGVuZXJneSB0byBmdWxsIGNhcGFjaXR5LiBUaGUgcmVjaGFyZ2UgZHVyYXRpb24gZGVwZW5kcyBvbiBjdXJyZW50IGVuZXJneSBsZXZlbCBhbmQgcmVjaGFyZ2UgcmF0ZS7gs8tTNXyXugxyZWZyc2hlbnRpdHm4Ay0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiByZWZyc2hlbnRpdHkKc3VtbWFyeTogJ1JlZnJlc2ggZGVyaXZlZCBlbnRpdHkgc3RhdGUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlY29tcHV0ZSBkZXJpdmVkIGZpZWxkcyBvbiBhbiBlbnRpdHkgZnJvbSBpdHMgY3VycmVudCBjYXJnbyBhbmQgbW9kdWxlcywgcmVmcmVzaGluZyBjYXBhYmlsaXR5IHN0YXRzIGFuZCBjYXJnbyBtYXNzLiBUaGUgZW50aXR5IG11c3QgYmUgaWRsZSB3aXRoIG5vIHNjaGVkdWxlZCB0YXNrcy4gVXNlZCB0byByZWNvbmNpbGUgZGVyaXZlZCBzdGF0ZSBhZnRlciBkYXRhIG1pZ3JhdGlvbnMgb3IgY29udHJhY3QgdXBncmFkZXMuoCIyl6pNpboMcmVtb3Zlb3JhY2xlAAAAAAAoaaa6BnJlbmFtZQAAAABA7UixugdyZXNvbHZl0AMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcmVzb2x2ZQpzdW1tYXJ5OiAnQ29tcGxldGUgc2NoZWR1bGVkIHRhc2tzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZXNvbHZlIGNvbXBsZXRlZCB0YXNrcyBpbiBhbiBlbnRpdHkncyBzY2hlZHVsZSwgYXBwbHlpbmcgdGhlaXIgZWZmZWN0cyAocmVjaGFyZ2UgZW5lcmd5LCB1cGRhdGUgbG9jYXRpb24sIGxvYWQvdW5sb2FkIGNhcmdvKS4gSWYgY291bnQgaXMgc3BlY2lmaWVkLCByZXNvbHZlIGV4YWN0bHkgdGhhdCBtYW55IHRhc2tzOyBvdGhlcndpc2UgcmVzb2x2ZSBhbGwgY29tcGxldGVkIHRhc2tzLiBGYWlscyBpZiBjb3VudCBleGNlZWRzIHRoZSBudW1iZXIgb2YgY29tcGxldGVkIHRhc2tzLgAAAFmxa7K6CHJldGFyZ2V0AAAAAABEo7a6BnJldmVhbAAAAAAq6kSlvAhybW1vZHVsZbwDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHJtbW9kdWxlCnN1bW1hcnk6ICdSZW1vdmUgYSBtb2R1bGUgZnJvbSBhIHNsb3QnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlbW92ZSBhbiBpbnN0YWxsZWQgbW9kdWxlIGZyb20gYSBzbG90IG9uIGEgbGl2ZSBlbnRpdHkgb3IgYSBwYWNrZWQgZW50aXR5IGluIGNhcmdvLiBUaGUgZW50aXR5IG11c3QgYmUgaWRsZSB3aXRoIG5vIHNjaGVkdWxlZCB0YXNrcy4gVGhlIG1vZHVsZSBpcyByZXR1cm5lZCB0byBjYXJnby4gRmFpbHMgaWYgdGhlIGVudGl0eSBkb2VzIG5vdCBoYXZlIGVub3VnaCBjYXJnbyBjYXBhY2l0eSB0byBob2xkIHRoZSByZXR1cm5lZCBtb2R1bGUuAAAAbKG8prwIcm1uZnRjZmehAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBybW5mdGNmZwpzdW1tYXJ5OiAnUmVtb3ZlIE5GVCB0ZW1wbGF0ZSBtYXBwaW5nIGZvciBhbiBpdGVtJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZW1vdmUgdGhlIEF0b21pY0Fzc2V0cyB0ZW1wbGF0ZSBtYXBwaW5nIGZvciB0aGUgc3BlY2lmaWVkIGl0ZW0gaWQgZnJvbSB0aGUgYG5mdGNvbmZpZ2AgdGFibGUuIEFmdGVyIHJlbW92YWwgdGhlIGl0ZW0gY2FuIG5vIGxvbmdlciBiZSB3cmFwcGVkIG9yIHVud3JhcHBlZCB1bnRpbCBhIG5ldyBtYXBwaW5nIGlzIHNldC4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LgAAYAvlNbPCCXNldG5mdGNmZ8QDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHNldG5mdGNmZwpzdW1tYXJ5OiAnU2V0IE5GVCB0ZW1wbGF0ZSBtYXBwaW5nIGZvciBhbiBpdGVtJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpCaW5kIGFuIGl0ZW0gaWQgdG8gYW4gQXRvbWljQXNzZXRzIHRlbXBsYXRlIGlkIGFuZCBzY2hlbWEgbmFtZS4gVXNlZCB0byBjb25maWd1cmUgaG93IHRoZSBjb250cmFjdCBtaW50cyBhbmQgcmVjb2duaXplcyBORlRzIGZvciBhIGdpdmVuIGl0ZW0uIEluc2VydHMgYSBuZXcgbWFwcGluZyBpZiBvbmUgZG9lcyBub3QgZXhpc3QsIG9yIHVwZGF0ZXMgdGhlIGV4aXN0aW5nIG1hcHBpbmcuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS6QIm1Y3ZazwgxzZXR0aHJlc2hvbGQAADKmqJrLs8ILc2V0d3JhcGNvc3QAAIBSq5rLs8IKc2V0d3JhcGZlZQAAAKDsGsRpxglzdG93Y2FyZ2/VBS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzdG93Y2FyZ28Kc3VtbWFyeTogJ1Jlc2VydmUgYSBjYXJnbyBzdGFjayBmb3Igd3JhcHBpbmcgaW50byBhbiBORlQnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiBjYWxsZWQgaW5saW5lIGJ5IHRoZSBwbGF0Zm9ybSBjb250cmFjdCBvbmx5LiBSZXNlcnZlcyBhbmQgY29uc3VtZXMgYSBjYXJnbyBzdGFjayBvbiBhIGxpdmUgZW50aXR5IGZvciB3cmFwcGluZyBpbnRvIGFuIE5GVC4gVmFsaWRhdGVzIGVudGl0eSBvd25lcnNoaXAsIGxvYWRlcnMsIGFuZCBwcmVzZW5jZSBhdCB0aGUgbmV4dXMsIGFuZCBjb25maXJtcyB0aGUgdGFyZ2V0IGNhcmdvIHN0YWNrIGlzIGF2YWlsYWJsZSBhbmQgbm90IHJlc2VydmVkIGJ5IGEgcGVuZGluZyB0YXNrLiBDb21wdXRlcyB0aGUgd3JhcCBjb3N0IGFuZCBmZWUsIGRlYml0cyB0aGVtIGZyb20gdGhlIG93bmVyJ3MgcGxhdGZvcm0gZGVwb3NpdCBiYWxhbmNlLCBkZXJpdmVzIHRoZSBORlQncyBpbW11dGFibGUgZGF0YSwgYW5kIG1pbnRzIHRoZSBORlQgaW5saW5lIGFzIHRoZSBnYW1lIGNvbnRyYWN0IGJlZm9yZSBjb25zdW1pbmcgdGhlIGNhcmdvLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAIDPLk/FacYKc3Rvd2VudGl0eZkFLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHN0b3dlbnRpdHkKc3VtbWFyeTogJ1Jlc2VydmUgYW4gZW50aXR5IGZvciB3cmFwcGluZyBpbnRvIGFuIE5GVCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW50ZXJuYWwgYWN0aW9uIGNhbGxlZCBpbmxpbmUgYnkgdGhlIHBsYXRmb3JtIGNvbnRyYWN0IG9ubHkuIFJlc2VydmVzIGEgd2hvbGUgZW50aXR5IChzaGlwLCBjb250YWluZXIsIG9yIHBsYW5ldGFyeSBzdHJ1Y3R1cmUpIGZvciB3cmFwcGluZyBpbnRvIGFuIE5GVC4gVGhlIGVudGl0eSBtdXN0IGJlIGlkbGUgd2l0aCBlbXB0eSBjYXJnbyBhbmQgbm8gc2NoZWR1bGVkIHRhc2tzLiBDb21wdXRlcyB0aGUgd3JhcCBjb3N0IGFuZCBmZWUsIGRlYml0cyB0aGVtIGZyb20gdGhlIG93bmVyJ3MgcGxhdGZvcm0gZGVwb3NpdCBiYWxhbmNlLCBkZXJpdmVzIHRoZSBlbnRpdHkgTkZUJ3MgaW1tdXRhYmxlIGRhdGEsIG1pbnRzIHRoZSBORlQgaW5saW5lIGFzIHRoZSBnYW1lIGNvbnRyYWN0LCBhbmQgZXJhc2VzIHRoZSBlbnRpdHkgZnJvbSB0aGUgd29ybGQuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AgIo6UVkNxwpzd2FwbW9kdWxlAAAAAFctPM3NCHRyYW5zZmVyyAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogdHJhbnNmZXIKc3VtbWFyeTogJ1RyYW5zZmVyIGNhcmdvIGJldHdlZW4gZW50aXRpZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRyYW5zZmVyIGNhcmdvIGJldHdlZW4gdHdvIGVudGl0aWVzIGF0IHRoZSBzYW1lIGxvY2F0aW9uLiBCb3RoIGVudGl0aWVzIG11c3QgYmUgb3duZWQgYnkgdGhlIGNhbGxlciBhbmQgYXQgbGVhc3Qgb25lIG11c3QgaGF2ZSBsb2FkZXJzLiBDcmVhdGVzIGxvYWQgYW5kIHVubG9hZCB0YXNrcyBvbiBib3RoIGVudGl0aWVzIHdpdGggZHVyYXRpb24gYmFzZWQgb24gY29tYmluZWQgbG9hZGVyIGNhcGFjaXR5IGFuZCBaLWRpc3RhbmNlIGJldHdlZW4gdGhlbS4AAAAARLXNzQZ0cmF2ZWz7AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB0cmF2ZWwKc3VtbWFyeTogJ01vdmUgYSBzaGlwJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbml0aWF0ZSB0cmF2ZWwgb2YgYW4gZW50aXR5IGZyb20gaXRzIGN1cnJlbnQgbG9jYXRpb24gdG8gYSBuZXcgZGVzdGluYXRpb24uAAAAnsaq0tQIdW5kZXBsb3nnBC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1bmRlcGxveQpzdW1tYXJ5OiAnUGFjayBhIGRlcGxveWVkIGVudGl0eSBpbnRvIGEgaG9zdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUGFjayBhbiBlbnRpdHkgaW50byBhIGhvc3QgZW50aXR5J3MgY2FyZ28gYXMgYSBwYWNrZWQtZW50aXR5IGl0ZW0uIEhvc3QgYW5kIHRhcmdldCBtdXN0IHNoYXJlIHRoZSBzYW1lIG93bmVyIGFuZCBjb29yZGluYXRlcywgdGhlIGhvc3QgbXVzdCBoYXZlIGxvYWRlcnMgYW5kIGVub3VnaCBjYXBhY2l0eSBmb3IgdGhlIHBhY2tlZCBtYXNzLCBhbmQgdGhlIHRhcmdldCBtdXN0IGJlIGlkbGUgd2l0aCBlbXB0eSBjYXJnby4gQ3JlYXRlcyBhbiBlbnRpdHlncm91cCBhbmQgc2NoZWR1bGVzIHVuZGVwbG95IHRhc2tzIG9uIGJvdGggZW50aXRpZXM7IG9uIHJlc29sdXRpb24gdGhlIHRhcmdldCBpcyBlcmFzZWQgYW5kIHRoZSBwYWNrZWQgZW50aXR5IGlzIGFkZGVkIHRvIHRoZSBob3N0J3MgY2FyZ28uIEludmVyc2Ugb2YgZGVwbG95LgAAAAAAUK/hBHdhcnCfAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB3YXJwCnN1bW1hcnk6ICdXYXJwIHRvIGEgZGVzdGluYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkluc3RhbnRseSB0ZWxlcG9ydCBhbiBlbnRpdHkgdG8gYSBkZXN0aW5hdGlvbiBzeXN0ZW0uIFJlcXVpcmVzIHdhcnAgY2FwYWJpbGl0eSwgZnVsbCBlbmVyZ3ksIGVtcHR5IGNhcmdvLCBhbmQgYW4gZW1wdHkgc2NoZWR1bGUuIFRoZSBkZXN0aW5hdGlvbiBtdXN0IGJlIGEgdmFsaWQgc3lzdGVtIHdpdGhpbiB3YXJwIHJhbmdlLiBSZXNvbHZlcyBpbW1lZGlhdGVseSBhcyBhIHplcm8tZHVyYXRpb24gdGFzay4AAAAAAKCq4wR3aXBlsgEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd2lwZQpzdW1tYXJ5OiAnREVCVUc6IHdpcGUgYWN0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tEQAAAAAAyq5BA2k2NAAACWNhcmdvX3JvdwAAAABg6UxEA2k2NAAACWNsYWltX3JvdwAAAABkJyVFA2k2NAAACmNvbW1pdF9yb3cAAAAA+OzyVANpNjQAAAplbnRpdHlfcm93AKqml/ns8lQDaTY0AAAPZW50aXR5Z3JvdXBfcm93AACwCvvs8lQDaTY0AAAOZW50aXR5X3NlcV9yb3cAAAAAgIZoVQNpNjQAAAllcG9jaF9yb3cAAGBuTYrymgNpNjQAAA1uZnRjb25maWdfcm93AABgC6mIzKUDaTY0AAARb3JhY2xlX2NvbmZpZ19yb3cAAAAAq4jMpQNpNjQAAApvcmFjbGVfcm93AAAAAFzlTawDaTY0AAAKcGxheWVyX3JvdwAAAEDtq7C6A2k2NAAAC3Jlc2VydmVfcm93AAAAAESjtroDaTY0AAAKcmV2ZWFsX3JvdwAAAAAAlU3GA2k2NAAACXN0YXRlX3JvdwAAAAAArKrPA2k2NAAACXR5cGVzX3JvdwAAc2tSVM3lA2k2NAAADndyYXBjb25maWdfcm93AAAAGVNUzeUDaTY0AAAMd3JhcGNvc3Rfcm93ARFTaGlwbG9hZCAoU2VydmVyKRFTaGlwbG9hZCAoU2VydmVyKQAAADQAAMg01hSdPgx0YXNrX3Jlc3VsdHMAAAAARIWmQQ5jYW5jZWxfcmVzdWx0cwAAyDRW6UxEDHRhc2tfcmVzdWx0cwAAAACAvMxFDHRhc2tfcmVzdWx0cwAAAA27SKVKDHRhc2tfcmVzdWx0cwAAAAB4GqtKDHRhc2tfcmVzdWx0cwCAzy5PhbBKBnN0cmluZwAAAABc1bJhDHRhc2tfcmVzdWx0cwAAYG5NirJiC2dhbWVfY29uZmlnAEB2mFaVsmIOZXh0ZW5kZWRfYXNzZXQAVDyOuaiyYgh1aW50MTZbXQAAwBHlqbJiC2VudW1fcmVzdWx0ALBy2eWpsmINZW50aXR5X2luZm9bXQAA8NnlqbJiC2VudGl0eV9pbmZvAEw2SarssmIPaXRlbWRhdGFfcmVzdWx0AABOTqrssmIPaXRlbV9pZHNfcmVzdWx0AAAAWKrssmIKaXRlbXNfaW5mbwBU9Vmq7LJiBXVpbnQ4gFX1WarssmILZW51bV9yZXN1bHQATFYyTQezYhBraW5kX21ldGFfcmVzdWx0ACZ12SAas2INbG9jYXRpb25faW5mbwCAySYhGrNiEGxvY2F0aW9uX2Rlcml2ZWQAsKo+JyqzYgtlbnVtX3Jlc3VsdAAAVlEnKrNiDm1vZHVsZXNfcmVzdWx0AADw5xo1s2ILbmVhcmJ5X2luZm8AgMLm5DWzYghzdHJpbmdbXQAAXdPlNbNiDm5mdGluZm9fcmVzdWx0AAC4yptYs2ILcGxheWVyX2luZm+gssn40VuzYg9wcm9qZWN0ZWRfc3RhdGUAAFDVIXWzYg5yZWNpcGVzX3Jlc3VsdAAAVtUhdbNiDnJlY2lwZXNfcmVzdWx0AADOBmF1s2ILZW51bV9yZXN1bHQAsNpXYXWzYhNzdHJhdHVtX3JlbWFpbmluZ1tdgBW6mmJ1s2IQcmVzb3VyY2VzX3Jlc3VsdAAAADjTiLNiFWVudGl0eV9sYXlvdXRzX3Jlc3VsdACA1NncjLNiDHN0cmF0dW1fZGF0YYCVu0ZKjbNiEGVudGl0eV9zdW1tYXJ5W10Aotrm5qrpZQx0YXNrX3Jlc3VsdHMAAAAAANCwaQtjaGVja3N1bTI1NgAAAECE0rBpC2NoZWNrc3VtNTEyAACIVzPp8poGc3RyaW5nAABl1yCFTKwMdGFza19yZXN1bHRzAHx2eSqFTKwMdGFza19yZXN1bHRzAAAAil3TkLoMdGFza19yZXN1bHRzAAAAQO1IsboPcmVzb2x2ZV9yZXN1bHRzAAAAWbFrsroMdGFza19yZXN1bHRzAACg7BrEacYMdGFza19yZXN1bHRzAIDPLk/FacYMdGFza19yZXN1bHRzAAAAVy08zc0MdGFza19yZXN1bHRzAAAAAES1zc0MdGFza19yZXN1bHRzAAAAnsaq0tQMdGFza19yZXN1bHRzAAAAAABQr+EMdGFza19yZXN1bHRz'
|
|
33
35
|
)
|
|
34
36
|
export const abi = ABI.from(abiBlob)
|
|
35
37
|
export namespace Types {
|
|
38
|
+
@Struct.type('packed_module')
|
|
39
|
+
export class packed_module extends Struct {
|
|
40
|
+
@Struct.field(UInt16)
|
|
41
|
+
declare item_id: UInt16
|
|
42
|
+
@Struct.field(UInt64)
|
|
43
|
+
declare stats: UInt64
|
|
44
|
+
}
|
|
45
|
+
@Struct.type('module_entry')
|
|
46
|
+
export class module_entry extends Struct {
|
|
47
|
+
@Struct.field(UInt8)
|
|
48
|
+
declare type: UInt8
|
|
49
|
+
@Struct.field(packed_module, {optional: true})
|
|
50
|
+
declare installed?: packed_module
|
|
51
|
+
}
|
|
52
|
+
@Struct.type('cargo_ref')
|
|
53
|
+
export class cargo_ref extends Struct {
|
|
54
|
+
@Struct.field(UInt16)
|
|
55
|
+
declare item_id: UInt16
|
|
56
|
+
@Struct.field(UInt64)
|
|
57
|
+
declare stats: UInt64
|
|
58
|
+
@Struct.field(module_entry, {array: true})
|
|
59
|
+
declare modules: module_entry[]
|
|
60
|
+
@Struct.field(UInt64, {optional: true})
|
|
61
|
+
declare entity_id?: UInt64
|
|
62
|
+
}
|
|
36
63
|
@Struct.type('addmodule')
|
|
37
64
|
export class addmodule extends Struct {
|
|
38
|
-
@Struct.field(Name)
|
|
39
|
-
declare entity_type: Name
|
|
40
65
|
@Struct.field(UInt64)
|
|
41
66
|
declare entity_id: UInt64
|
|
42
67
|
@Struct.field(UInt8)
|
|
43
68
|
declare module_index: UInt8
|
|
44
|
-
@Struct.field(
|
|
45
|
-
declare
|
|
46
|
-
@Struct.field(
|
|
47
|
-
declare
|
|
69
|
+
@Struct.field(cargo_ref)
|
|
70
|
+
declare module_ref: cargo_ref
|
|
71
|
+
@Struct.field(cargo_ref, {optional: true})
|
|
72
|
+
declare target_ref?: cargo_ref
|
|
48
73
|
}
|
|
49
74
|
@Struct.type('addnexus')
|
|
50
75
|
export class addnexus extends Struct {
|
|
@@ -55,53 +80,44 @@ export namespace Types {
|
|
|
55
80
|
@Struct.field(Int64)
|
|
56
81
|
declare y: Int64
|
|
57
82
|
}
|
|
58
|
-
@Struct.type('
|
|
59
|
-
export class
|
|
60
|
-
@Struct.field(
|
|
61
|
-
declare
|
|
62
|
-
@Struct.field(Checksum256)
|
|
63
|
-
declare commit: Checksum256
|
|
64
|
-
}
|
|
65
|
-
@Struct.type('packed_module')
|
|
66
|
-
export class packed_module extends Struct {
|
|
67
|
-
@Struct.field(UInt16)
|
|
68
|
-
declare item_id: UInt16
|
|
69
|
-
@Struct.field(UInt64)
|
|
70
|
-
declare stats: UInt64
|
|
71
|
-
}
|
|
72
|
-
@Struct.type('module_entry')
|
|
73
|
-
export class module_entry extends Struct {
|
|
74
|
-
@Struct.field(UInt8)
|
|
75
|
-
declare type: UInt8
|
|
76
|
-
@Struct.field(packed_module, {optional: true})
|
|
77
|
-
declare installed?: packed_module
|
|
83
|
+
@Struct.type('addoracle')
|
|
84
|
+
export class addoracle extends Struct {
|
|
85
|
+
@Struct.field(Name)
|
|
86
|
+
declare oracle_id: Name
|
|
78
87
|
}
|
|
79
88
|
@Struct.type('cargo_item')
|
|
80
89
|
export class cargo_item extends Struct {
|
|
81
90
|
@Struct.field(UInt16)
|
|
82
91
|
declare item_id: UInt16
|
|
83
|
-
@Struct.field(UInt32)
|
|
84
|
-
declare quantity: UInt32
|
|
85
92
|
@Struct.field(UInt64)
|
|
86
93
|
declare stats: UInt64
|
|
87
94
|
@Struct.field(module_entry, {array: true})
|
|
88
95
|
declare modules: module_entry[]
|
|
96
|
+
@Struct.field(UInt32)
|
|
97
|
+
declare quantity: UInt32
|
|
98
|
+
@Struct.field(UInt64, {optional: true})
|
|
99
|
+
declare entity_id?: UInt64
|
|
89
100
|
}
|
|
90
101
|
@Struct.type('blend')
|
|
91
102
|
export class blend extends Struct {
|
|
92
|
-
@Struct.field(Name)
|
|
93
|
-
declare entity_type: Name
|
|
94
103
|
@Struct.field(UInt64)
|
|
95
104
|
declare id: UInt64
|
|
96
105
|
@Struct.field(cargo_item, {array: true})
|
|
97
106
|
declare inputs: cargo_item[]
|
|
98
107
|
}
|
|
108
|
+
@Struct.type('buildplot')
|
|
109
|
+
export class buildplot extends Struct {
|
|
110
|
+
@Struct.field(UInt64)
|
|
111
|
+
declare builder_id: UInt64
|
|
112
|
+
@Struct.field(UInt64)
|
|
113
|
+
declare plot_id: UInt64
|
|
114
|
+
}
|
|
99
115
|
@Struct.type('cancel')
|
|
100
116
|
export class cancel extends Struct {
|
|
101
|
-
@Struct.field(Name)
|
|
102
|
-
declare entity_type: Name
|
|
103
117
|
@Struct.field(UInt64)
|
|
104
118
|
declare id: UInt64
|
|
119
|
+
@Struct.field(UInt8)
|
|
120
|
+
declare lane_key: UInt8
|
|
105
121
|
@Struct.field(UInt64)
|
|
106
122
|
declare count: UInt64
|
|
107
123
|
}
|
|
@@ -141,28 +157,51 @@ export namespace Types {
|
|
|
141
157
|
declare stats: UInt64
|
|
142
158
|
@Struct.field(module_entry, {array: true})
|
|
143
159
|
declare modules: module_entry[]
|
|
160
|
+
@Struct.field(UInt64, {optional: true})
|
|
161
|
+
declare sequence_id?: UInt64
|
|
144
162
|
}
|
|
145
163
|
@Struct.type('cargo_view')
|
|
146
164
|
export class cargo_view extends Struct {
|
|
147
165
|
@Struct.field(UInt16)
|
|
148
166
|
declare item_id: UInt16
|
|
149
|
-
@Struct.field(UInt32)
|
|
150
|
-
declare quantity: UInt32
|
|
151
167
|
@Struct.field(UInt64)
|
|
152
168
|
declare stats: UInt64
|
|
153
169
|
@Struct.field(module_entry, {array: true})
|
|
154
170
|
declare modules: module_entry[]
|
|
171
|
+
@Struct.field(UInt32)
|
|
172
|
+
declare quantity: UInt32
|
|
155
173
|
@Struct.field(UInt64)
|
|
156
174
|
declare id: UInt64
|
|
175
|
+
@Struct.field(UInt64, {optional: true})
|
|
176
|
+
declare entity_id?: UInt64
|
|
157
177
|
}
|
|
158
|
-
@Struct.type('
|
|
159
|
-
export class
|
|
178
|
+
@Struct.type('claim_row')
|
|
179
|
+
export class claim_row extends Struct {
|
|
160
180
|
@Struct.field(Name)
|
|
161
|
-
declare
|
|
181
|
+
declare owner: Name
|
|
182
|
+
}
|
|
183
|
+
@Struct.type('coordinates')
|
|
184
|
+
export class coordinates extends Struct {
|
|
162
185
|
@Struct.field(Int64)
|
|
163
186
|
declare x: Int64
|
|
164
187
|
@Struct.field(Int64)
|
|
165
188
|
declare y: Int64
|
|
189
|
+
@Struct.field(UInt16, {optional: true})
|
|
190
|
+
declare z?: UInt16
|
|
191
|
+
}
|
|
192
|
+
@Struct.type('claimplot')
|
|
193
|
+
export class claimplot extends Struct {
|
|
194
|
+
@Struct.field(UInt64)
|
|
195
|
+
declare builder_id: UInt64
|
|
196
|
+
@Struct.field(UInt16)
|
|
197
|
+
declare target_item_id: UInt16
|
|
198
|
+
@Struct.field(coordinates)
|
|
199
|
+
declare coords: coordinates
|
|
200
|
+
}
|
|
201
|
+
@Struct.type('claimstarter')
|
|
202
|
+
export class claimstarter extends Struct {
|
|
203
|
+
@Struct.field(Name)
|
|
204
|
+
declare owner: Name
|
|
166
205
|
}
|
|
167
206
|
@Struct.type('cleanrsvp')
|
|
168
207
|
export class cleanrsvp extends Struct {
|
|
@@ -182,6 +221,21 @@ export namespace Types {
|
|
|
182
221
|
}
|
|
183
222
|
@Struct.type('commit')
|
|
184
223
|
export class commit extends Struct {
|
|
224
|
+
@Struct.field(Name)
|
|
225
|
+
declare oracle_id: Name
|
|
226
|
+
@Struct.field(UInt64)
|
|
227
|
+
declare epoch: UInt64
|
|
228
|
+
@Struct.field(Checksum256)
|
|
229
|
+
declare commit: Checksum256
|
|
230
|
+
}
|
|
231
|
+
@Struct.type('commit_row')
|
|
232
|
+
export class commit_row extends Struct {
|
|
233
|
+
@Struct.field(UInt64)
|
|
234
|
+
declare id: UInt64
|
|
235
|
+
@Struct.field(UInt64)
|
|
236
|
+
declare epoch: UInt64
|
|
237
|
+
@Struct.field(Name)
|
|
238
|
+
declare oracle_id: Name
|
|
185
239
|
@Struct.field(Checksum256)
|
|
186
240
|
declare commit: Checksum256
|
|
187
241
|
}
|
|
@@ -219,64 +273,8 @@ export namespace Types {
|
|
|
219
273
|
@Struct.field(game_config)
|
|
220
274
|
declare config: game_config
|
|
221
275
|
}
|
|
222
|
-
@Struct.type('coordinates')
|
|
223
|
-
export class coordinates extends Struct {
|
|
224
|
-
@Struct.field(Int64)
|
|
225
|
-
declare x: Int64
|
|
226
|
-
@Struct.field(Int64)
|
|
227
|
-
declare y: Int64
|
|
228
|
-
@Struct.field(UInt16, {optional: true})
|
|
229
|
-
declare z?: UInt16
|
|
230
|
-
}
|
|
231
|
-
@Struct.type('task')
|
|
232
|
-
export class task extends Struct {
|
|
233
|
-
@Struct.field(UInt8)
|
|
234
|
-
declare type: UInt8
|
|
235
|
-
@Struct.field(UInt32)
|
|
236
|
-
declare duration: UInt32
|
|
237
|
-
@Struct.field(UInt8)
|
|
238
|
-
declare cancelable: UInt8
|
|
239
|
-
@Struct.field(coordinates, {optional: true})
|
|
240
|
-
declare coordinates?: coordinates
|
|
241
|
-
@Struct.field(cargo_item, {array: true})
|
|
242
|
-
declare cargo: cargo_item[]
|
|
243
|
-
@Struct.field(entity_ref, {optional: true})
|
|
244
|
-
declare entitytarget?: entity_ref
|
|
245
|
-
@Struct.field(UInt64, {optional: true})
|
|
246
|
-
declare entitygroup?: UInt64
|
|
247
|
-
@Struct.field(UInt16, {optional: true})
|
|
248
|
-
declare energy_cost?: UInt16
|
|
249
|
-
}
|
|
250
|
-
@Struct.type('schedule')
|
|
251
|
-
export class schedule extends Struct {
|
|
252
|
-
@Struct.field(TimePoint)
|
|
253
|
-
declare started: TimePoint
|
|
254
|
-
@Struct.field(task, {array: true})
|
|
255
|
-
declare tasks: task[]
|
|
256
|
-
}
|
|
257
|
-
@Struct.type('container_row')
|
|
258
|
-
export class container_row extends Struct {
|
|
259
|
-
@Struct.field(UInt64)
|
|
260
|
-
declare id: UInt64
|
|
261
|
-
@Struct.field(Name)
|
|
262
|
-
declare owner: Name
|
|
263
|
-
@Struct.field('string')
|
|
264
|
-
declare name: string
|
|
265
|
-
@Struct.field(coordinates)
|
|
266
|
-
declare coordinates: coordinates
|
|
267
|
-
@Struct.field(UInt32)
|
|
268
|
-
declare hullmass: UInt32
|
|
269
|
-
@Struct.field(UInt32)
|
|
270
|
-
declare capacity: UInt32
|
|
271
|
-
@Struct.field(UInt32)
|
|
272
|
-
declare cargomass: UInt32
|
|
273
|
-
@Struct.field(schedule, {optional: true})
|
|
274
|
-
declare schedule?: schedule
|
|
275
|
-
}
|
|
276
276
|
@Struct.type('craft')
|
|
277
277
|
export class craft extends Struct {
|
|
278
|
-
@Struct.field(Name)
|
|
279
|
-
declare entity_type: Name
|
|
280
278
|
@Struct.field(UInt64)
|
|
281
279
|
declare id: UInt64
|
|
282
280
|
@Struct.field(UInt16)
|
|
@@ -290,32 +288,20 @@ export namespace Types {
|
|
|
290
288
|
export class crafter_stats extends Struct {
|
|
291
289
|
@Struct.field(UInt16)
|
|
292
290
|
declare speed: UInt16
|
|
293
|
-
@Struct.field(
|
|
294
|
-
declare drain:
|
|
291
|
+
@Struct.field(UInt32)
|
|
292
|
+
declare drain: UInt32
|
|
295
293
|
}
|
|
296
|
-
@Struct.type('
|
|
297
|
-
export class
|
|
298
|
-
@Struct.field(
|
|
299
|
-
declare
|
|
300
|
-
@Struct.field(Name)
|
|
301
|
-
declare entity_type: Name
|
|
302
|
-
@Struct.field('string')
|
|
303
|
-
declare entity_name: string
|
|
304
|
-
@Struct.field(Int64)
|
|
305
|
-
declare x: Int64
|
|
306
|
-
@Struct.field(Int64)
|
|
307
|
-
declare y: Int64
|
|
294
|
+
@Struct.type('demolish')
|
|
295
|
+
export class demolish extends Struct {
|
|
296
|
+
@Struct.field(UInt64)
|
|
297
|
+
declare entity_id: UInt64
|
|
308
298
|
}
|
|
309
299
|
@Struct.type('deploy')
|
|
310
300
|
export class deploy extends Struct {
|
|
311
|
-
@Struct.field(Name)
|
|
312
|
-
declare entity_type: Name
|
|
313
301
|
@Struct.field(UInt64)
|
|
314
302
|
declare id: UInt64
|
|
315
|
-
@Struct.field(
|
|
316
|
-
declare
|
|
317
|
-
@Struct.field(UInt64)
|
|
318
|
-
declare stats: UInt64
|
|
303
|
+
@Struct.field(cargo_ref)
|
|
304
|
+
declare ref: cargo_ref
|
|
319
305
|
}
|
|
320
306
|
@Struct.type('descentity')
|
|
321
307
|
export class descentity extends Struct {
|
|
@@ -335,44 +321,47 @@ export namespace Types {
|
|
|
335
321
|
}
|
|
336
322
|
@Struct.type('energy_stats')
|
|
337
323
|
export class energy_stats extends Struct {
|
|
338
|
-
@Struct.field(
|
|
339
|
-
declare capacity:
|
|
340
|
-
@Struct.field(
|
|
341
|
-
declare recharge:
|
|
324
|
+
@Struct.field(UInt32)
|
|
325
|
+
declare capacity: UInt32
|
|
326
|
+
@Struct.field(UInt32)
|
|
327
|
+
declare recharge: UInt32
|
|
342
328
|
}
|
|
343
329
|
@Struct.type('entity_current_state')
|
|
344
330
|
export class entity_current_state extends Struct {
|
|
345
331
|
@Struct.field(coordinates)
|
|
346
332
|
declare coordinates: coordinates
|
|
347
|
-
@Struct.field(UInt16)
|
|
348
|
-
declare energy: UInt16
|
|
349
|
-
}
|
|
350
|
-
@Struct.type('loader_stats')
|
|
351
|
-
export class loader_stats extends Struct {
|
|
352
333
|
@Struct.field(UInt32)
|
|
353
|
-
declare
|
|
354
|
-
@Struct.field(UInt16)
|
|
355
|
-
declare thrust: UInt16
|
|
356
|
-
@Struct.field(UInt8)
|
|
357
|
-
declare quantity: UInt8
|
|
334
|
+
declare energy: UInt32
|
|
358
335
|
}
|
|
359
336
|
@Struct.type('movement_stats')
|
|
360
337
|
export class movement_stats extends Struct {
|
|
361
338
|
@Struct.field(UInt32)
|
|
362
339
|
declare thrust: UInt32
|
|
363
|
-
@Struct.field(
|
|
364
|
-
declare drain:
|
|
340
|
+
@Struct.field(UInt32)
|
|
341
|
+
declare drain: UInt32
|
|
342
|
+
}
|
|
343
|
+
@Struct.type('warp_stats')
|
|
344
|
+
export class warp_stats extends Struct {
|
|
345
|
+
@Struct.field(UInt32)
|
|
346
|
+
declare range: UInt32
|
|
365
347
|
}
|
|
366
348
|
@Struct.type('gatherer_stats')
|
|
367
349
|
export class gatherer_stats extends Struct {
|
|
368
350
|
@Struct.field(UInt16)
|
|
369
351
|
declare yield: UInt16
|
|
370
|
-
@Struct.field(
|
|
371
|
-
declare drain:
|
|
352
|
+
@Struct.field(UInt32)
|
|
353
|
+
declare drain: UInt32
|
|
372
354
|
@Struct.field(UInt16)
|
|
373
355
|
declare depth: UInt16
|
|
356
|
+
}
|
|
357
|
+
@Struct.type('loader_stats')
|
|
358
|
+
export class loader_stats extends Struct {
|
|
359
|
+
@Struct.field(UInt32)
|
|
360
|
+
declare mass: UInt32
|
|
374
361
|
@Struct.field(UInt16)
|
|
375
|
-
declare
|
|
362
|
+
declare thrust: UInt16
|
|
363
|
+
@Struct.field(UInt8)
|
|
364
|
+
declare quantity: UInt8
|
|
376
365
|
}
|
|
377
366
|
@Struct.type('hauler_stats')
|
|
378
367
|
export class hauler_stats extends Struct {
|
|
@@ -380,13 +369,41 @@ export namespace Types {
|
|
|
380
369
|
declare capacity: UInt8
|
|
381
370
|
@Struct.field(UInt16)
|
|
382
371
|
declare efficiency: UInt16
|
|
383
|
-
@Struct.field(
|
|
384
|
-
declare drain:
|
|
372
|
+
@Struct.field(UInt32)
|
|
373
|
+
declare drain: UInt32
|
|
385
374
|
}
|
|
386
|
-
@Struct.type('
|
|
387
|
-
export class
|
|
375
|
+
@Struct.type('task')
|
|
376
|
+
export class task extends Struct {
|
|
377
|
+
@Struct.field(UInt8)
|
|
378
|
+
declare type: UInt8
|
|
388
379
|
@Struct.field(UInt32)
|
|
389
|
-
declare
|
|
380
|
+
declare duration: UInt32
|
|
381
|
+
@Struct.field(UInt8)
|
|
382
|
+
declare cancelable: UInt8
|
|
383
|
+
@Struct.field(coordinates, {optional: true})
|
|
384
|
+
declare coordinates?: coordinates
|
|
385
|
+
@Struct.field(cargo_item, {array: true})
|
|
386
|
+
declare cargo: cargo_item[]
|
|
387
|
+
@Struct.field(entity_ref, {optional: true})
|
|
388
|
+
declare entitytarget?: entity_ref
|
|
389
|
+
@Struct.field(UInt64, {optional: true})
|
|
390
|
+
declare entitygroup?: UInt64
|
|
391
|
+
@Struct.field(UInt32, {optional: true})
|
|
392
|
+
declare energy_cost?: UInt32
|
|
393
|
+
}
|
|
394
|
+
@Struct.type('schedule')
|
|
395
|
+
export class schedule extends Struct {
|
|
396
|
+
@Struct.field(TimePoint)
|
|
397
|
+
declare started: TimePoint
|
|
398
|
+
@Struct.field(task, {array: true})
|
|
399
|
+
declare tasks: task[]
|
|
400
|
+
}
|
|
401
|
+
@Struct.type('lane')
|
|
402
|
+
export class lane extends Struct {
|
|
403
|
+
@Struct.field(UInt8)
|
|
404
|
+
declare lane_key: UInt8
|
|
405
|
+
@Struct.field(schedule)
|
|
406
|
+
declare schedule: schedule
|
|
390
407
|
}
|
|
391
408
|
@Struct.type('entity_info')
|
|
392
409
|
export class entity_info extends Struct {
|
|
@@ -400,51 +417,43 @@ export namespace Types {
|
|
|
400
417
|
declare entity_name: string
|
|
401
418
|
@Struct.field(coordinates)
|
|
402
419
|
declare coordinates: coordinates
|
|
420
|
+
@Struct.field(UInt16)
|
|
421
|
+
declare item_id: UInt16
|
|
403
422
|
@Struct.field(UInt32)
|
|
404
423
|
declare cargomass: UInt32
|
|
405
424
|
@Struct.field(cargo_view, {array: true})
|
|
406
425
|
declare cargo: cargo_view[]
|
|
407
|
-
@Struct.field(loader_stats, {optional: true})
|
|
408
|
-
declare loaders?: loader_stats
|
|
409
426
|
@Struct.field(module_entry, {array: true})
|
|
410
427
|
declare modules: module_entry[]
|
|
411
|
-
@Struct.field(
|
|
412
|
-
declare energy?:
|
|
428
|
+
@Struct.field(UInt32, {optional: true})
|
|
429
|
+
declare energy?: UInt32
|
|
413
430
|
@Struct.field(UInt32, {optional: true})
|
|
414
431
|
declare hullmass?: UInt32
|
|
432
|
+
@Struct.field(UInt32, {optional: true})
|
|
433
|
+
declare capacity?: UInt32
|
|
415
434
|
@Struct.field(movement_stats, {optional: true})
|
|
416
435
|
declare engines?: movement_stats
|
|
436
|
+
@Struct.field(warp_stats, {optional: true})
|
|
437
|
+
declare warp?: warp_stats
|
|
417
438
|
@Struct.field(energy_stats, {optional: true})
|
|
418
439
|
declare generator?: energy_stats
|
|
419
|
-
@Struct.field(UInt32, {optional: true})
|
|
420
|
-
declare capacity?: UInt32
|
|
421
440
|
@Struct.field(gatherer_stats, {optional: true})
|
|
422
441
|
declare gatherer?: gatherer_stats
|
|
442
|
+
@Struct.field(loader_stats, {optional: true})
|
|
443
|
+
declare loaders?: loader_stats
|
|
423
444
|
@Struct.field(hauler_stats, {optional: true})
|
|
424
445
|
declare hauler?: hauler_stats
|
|
425
|
-
@Struct.field(warp_stats, {optional: true})
|
|
426
|
-
declare warp?: warp_stats
|
|
427
446
|
@Struct.field(crafter_stats, {optional: true})
|
|
428
447
|
declare crafter?: crafter_stats
|
|
429
|
-
@Struct.field(
|
|
430
|
-
declare
|
|
431
|
-
@Struct.field(task, {optional: true})
|
|
432
|
-
declare current_task?: task
|
|
433
|
-
@Struct.field(UInt32)
|
|
434
|
-
declare current_task_elapsed: UInt32
|
|
435
|
-
@Struct.field(UInt32)
|
|
436
|
-
declare current_task_remaining: UInt32
|
|
437
|
-
@Struct.field(task, {array: true})
|
|
438
|
-
declare pending_tasks: task[]
|
|
439
|
-
@Struct.field(TimePoint, {optional: true})
|
|
440
|
-
declare idle_at?: TimePoint
|
|
441
|
-
@Struct.field(schedule, {optional: true})
|
|
442
|
-
declare schedule?: schedule
|
|
448
|
+
@Struct.field(lane, {array: true})
|
|
449
|
+
declare lanes: lane[]
|
|
443
450
|
}
|
|
444
451
|
@Struct.type('slot_def')
|
|
445
452
|
export class slot_def extends Struct {
|
|
446
453
|
@Struct.field(UInt8)
|
|
447
454
|
declare type: UInt8
|
|
455
|
+
@Struct.field(UInt16)
|
|
456
|
+
declare output_pct: UInt16
|
|
448
457
|
}
|
|
449
458
|
@Struct.type('entity_layout')
|
|
450
459
|
export class entity_layout extends Struct {
|
|
@@ -458,6 +467,36 @@ export namespace Types {
|
|
|
458
467
|
@Struct.field(entity_layout, {array: true})
|
|
459
468
|
declare entities: entity_layout[]
|
|
460
469
|
}
|
|
470
|
+
@Struct.type('entity_row')
|
|
471
|
+
export class entity_row extends Struct {
|
|
472
|
+
@Struct.field(UInt64)
|
|
473
|
+
declare id: UInt64
|
|
474
|
+
@Struct.field(Name)
|
|
475
|
+
declare owner: Name
|
|
476
|
+
@Struct.field(Name)
|
|
477
|
+
declare kind: Name
|
|
478
|
+
@Struct.field(UInt16)
|
|
479
|
+
declare item_id: UInt16
|
|
480
|
+
@Struct.field('string')
|
|
481
|
+
declare name: string
|
|
482
|
+
@Struct.field(UInt64)
|
|
483
|
+
declare stats: UInt64
|
|
484
|
+
@Struct.field(coordinates)
|
|
485
|
+
declare coordinates: coordinates
|
|
486
|
+
@Struct.field(UInt32, {optional: true})
|
|
487
|
+
declare energy?: UInt32
|
|
488
|
+
@Struct.field(UInt32)
|
|
489
|
+
declare cargomass: UInt32
|
|
490
|
+
@Struct.field(module_entry, {array: true})
|
|
491
|
+
declare modules: module_entry[]
|
|
492
|
+
@Struct.field(lane, {array: true})
|
|
493
|
+
declare lanes: lane[]
|
|
494
|
+
}
|
|
495
|
+
@Struct.type('entity_seq_row')
|
|
496
|
+
export class entity_seq_row extends Struct {
|
|
497
|
+
@Struct.field(UInt64)
|
|
498
|
+
declare next_id: UInt64
|
|
499
|
+
}
|
|
461
500
|
@Struct.type('entity_summary')
|
|
462
501
|
export class entity_summary extends Struct {
|
|
463
502
|
@Struct.field(Name)
|
|
@@ -507,19 +546,61 @@ export namespace Types {
|
|
|
507
546
|
@Struct.field(enum_member, {array: true})
|
|
508
547
|
declare members: enum_member[]
|
|
509
548
|
}
|
|
549
|
+
@Struct.type('epoch_row')
|
|
550
|
+
export class epoch_row extends Struct {
|
|
551
|
+
@Struct.field(UInt64)
|
|
552
|
+
declare epoch: UInt64
|
|
553
|
+
@Struct.field(Name, {array: true})
|
|
554
|
+
declare oracle_ids: Name[]
|
|
555
|
+
@Struct.field(UInt8)
|
|
556
|
+
declare threshold: UInt8
|
|
557
|
+
@Struct.field(Checksum256)
|
|
558
|
+
declare seed: Checksum256
|
|
559
|
+
}
|
|
560
|
+
@Struct.type('fixcargomass')
|
|
561
|
+
export class fixcargomass extends Struct {
|
|
562
|
+
@Struct.field(UInt64)
|
|
563
|
+
declare entity_id: UInt64
|
|
564
|
+
}
|
|
565
|
+
@Struct.type('forcereveal')
|
|
566
|
+
export class forcereveal extends Struct {
|
|
567
|
+
@Struct.field(UInt64)
|
|
568
|
+
declare epoch: UInt64
|
|
569
|
+
}
|
|
510
570
|
@Struct.type('gather')
|
|
511
571
|
export class gather extends Struct {
|
|
512
|
-
@Struct.field(
|
|
513
|
-
declare
|
|
514
|
-
@Struct.field(
|
|
515
|
-
declare
|
|
572
|
+
@Struct.field(UInt64)
|
|
573
|
+
declare source_id: UInt64
|
|
574
|
+
@Struct.field(UInt64)
|
|
575
|
+
declare destination_id: UInt64
|
|
516
576
|
@Struct.field(UInt16)
|
|
517
577
|
declare stratum: UInt16
|
|
518
578
|
@Struct.field(UInt32)
|
|
519
579
|
declare quantity: UInt32
|
|
520
580
|
}
|
|
581
|
+
@Struct.type('genesisfleet')
|
|
582
|
+
export class genesisfleet extends Struct {
|
|
583
|
+
@Struct.field(entity_row, {array: true})
|
|
584
|
+
declare entities: entity_row[]
|
|
585
|
+
}
|
|
521
586
|
@Struct.type('getconfig')
|
|
522
587
|
export class getconfig extends Struct {}
|
|
588
|
+
@Struct.type('getdeposit')
|
|
589
|
+
export class getdeposit extends Struct {
|
|
590
|
+
@Struct.field(Name)
|
|
591
|
+
declare owner: Name
|
|
592
|
+
@Struct.field(UInt64)
|
|
593
|
+
declare asset_id: UInt64
|
|
594
|
+
}
|
|
595
|
+
@Struct.type('geteligible')
|
|
596
|
+
export class geteligible extends Struct {
|
|
597
|
+
@Struct.field(coordinates)
|
|
598
|
+
declare coords: coordinates
|
|
599
|
+
@Struct.field(UInt16)
|
|
600
|
+
declare stratum: UInt16
|
|
601
|
+
}
|
|
602
|
+
@Struct.type('getentcls')
|
|
603
|
+
export class getentcls extends Struct {}
|
|
523
604
|
@Struct.type('getentities')
|
|
524
605
|
export class getentities extends Struct {
|
|
525
606
|
@Struct.field(Name)
|
|
@@ -529,8 +610,6 @@ export namespace Types {
|
|
|
529
610
|
}
|
|
530
611
|
@Struct.type('getentity')
|
|
531
612
|
export class getentity extends Struct {
|
|
532
|
-
@Struct.field(Name)
|
|
533
|
-
declare entity_type: Name
|
|
534
613
|
@Struct.field(UInt64)
|
|
535
614
|
declare entity_id: UInt64
|
|
536
615
|
}
|
|
@@ -540,8 +619,15 @@ export namespace Types {
|
|
|
540
619
|
export class getitemids extends Struct {}
|
|
541
620
|
@Struct.type('getitems')
|
|
542
621
|
export class getitems extends Struct {}
|
|
622
|
+
@Struct.type('getitemtype')
|
|
623
|
+
export class getitemtype extends Struct {
|
|
624
|
+
@Struct.field(UInt16)
|
|
625
|
+
declare item_id: UInt16
|
|
626
|
+
}
|
|
543
627
|
@Struct.type('getitemtypes')
|
|
544
628
|
export class getitemtypes extends Struct {}
|
|
629
|
+
@Struct.type('getkindmeta')
|
|
630
|
+
export class getkindmeta extends Struct {}
|
|
545
631
|
@Struct.type('getlocation')
|
|
546
632
|
export class getlocation extends Struct {
|
|
547
633
|
@Struct.field(Int64)
|
|
@@ -562,13 +648,13 @@ export namespace Types {
|
|
|
562
648
|
export class getmodules extends Struct {}
|
|
563
649
|
@Struct.type('getnearby')
|
|
564
650
|
export class getnearby extends Struct {
|
|
565
|
-
@Struct.field(Name)
|
|
566
|
-
declare entity_type: Name
|
|
567
651
|
@Struct.field(UInt64)
|
|
568
652
|
declare entity_id: UInt64
|
|
569
653
|
@Struct.field('bool')
|
|
570
654
|
declare recharge: boolean
|
|
571
655
|
}
|
|
656
|
+
@Struct.type('getnftbase')
|
|
657
|
+
export class getnftbase extends Struct {}
|
|
572
658
|
@Struct.type('getnftinfo')
|
|
573
659
|
export class getnftinfo extends Struct {}
|
|
574
660
|
@Struct.type('getplayer')
|
|
@@ -576,6 +662,13 @@ export namespace Types {
|
|
|
576
662
|
@Struct.field(Name)
|
|
577
663
|
declare account: Name
|
|
578
664
|
}
|
|
665
|
+
@Struct.type('getprojstate')
|
|
666
|
+
export class getprojstate extends Struct {
|
|
667
|
+
@Struct.field(UInt64)
|
|
668
|
+
declare entity_id: UInt64
|
|
669
|
+
@Struct.field(UInt8, {optional: true})
|
|
670
|
+
declare task_count?: UInt8
|
|
671
|
+
}
|
|
579
672
|
@Struct.type('getrecipe')
|
|
580
673
|
export class getrecipe extends Struct {
|
|
581
674
|
@Struct.field(UInt16)
|
|
@@ -638,11 +731,60 @@ export namespace Types {
|
|
|
638
731
|
@Struct.field('string')
|
|
639
732
|
declare value: string
|
|
640
733
|
}
|
|
641
|
-
@Struct.type('
|
|
642
|
-
export class
|
|
734
|
+
@Struct.type('importcargo')
|
|
735
|
+
export class importcargo extends Struct {
|
|
736
|
+
@Struct.field(cargo_row)
|
|
737
|
+
declare row: cargo_row
|
|
738
|
+
}
|
|
739
|
+
@Struct.type('importentity')
|
|
740
|
+
export class importentity extends Struct {
|
|
741
|
+
@Struct.field(entity_row)
|
|
742
|
+
declare row: entity_row
|
|
743
|
+
}
|
|
744
|
+
@Struct.type('importgroup')
|
|
745
|
+
export class importgroup extends Struct {
|
|
746
|
+
@Struct.field(entitygroup_row)
|
|
747
|
+
declare row: entitygroup_row
|
|
748
|
+
}
|
|
749
|
+
@Struct.type('importplayer')
|
|
750
|
+
export class importplayer extends Struct {
|
|
751
|
+
@Struct.field(Name)
|
|
752
|
+
declare owner: Name
|
|
753
|
+
}
|
|
754
|
+
@Struct.type('reserve_row')
|
|
755
|
+
export class reserve_row extends Struct {
|
|
756
|
+
@Struct.field(UInt64)
|
|
757
|
+
declare id: UInt64
|
|
758
|
+
@Struct.field(UInt64)
|
|
759
|
+
declare coord_id: UInt64
|
|
760
|
+
@Struct.field(UInt16)
|
|
761
|
+
declare stratum: UInt16
|
|
762
|
+
@Struct.field(UInt32)
|
|
763
|
+
declare remaining: UInt32
|
|
764
|
+
@Struct.field(BlockTimestamp)
|
|
765
|
+
declare last_block: BlockTimestamp
|
|
766
|
+
}
|
|
767
|
+
@Struct.type('importreserve')
|
|
768
|
+
export class importreserve extends Struct {
|
|
769
|
+
@Struct.field(UInt32)
|
|
770
|
+
declare epoch_scope: UInt32
|
|
771
|
+
@Struct.field(reserve_row)
|
|
772
|
+
declare row: reserve_row
|
|
773
|
+
}
|
|
774
|
+
@Struct.type('state_row')
|
|
775
|
+
export class state_row extends Struct {
|
|
776
|
+
@Struct.field('bool')
|
|
777
|
+
declare enabled: boolean
|
|
778
|
+
@Struct.field(UInt32)
|
|
779
|
+
declare epoch: UInt32
|
|
643
780
|
@Struct.field(Checksum256)
|
|
644
781
|
declare seed: Checksum256
|
|
645
782
|
}
|
|
783
|
+
@Struct.type('importstate')
|
|
784
|
+
export class importstate extends Struct {
|
|
785
|
+
@Struct.field(state_row)
|
|
786
|
+
declare row: state_row
|
|
787
|
+
}
|
|
646
788
|
@Struct.type('item_id_pair')
|
|
647
789
|
export class item_id_pair extends Struct {
|
|
648
790
|
@Struct.field(UInt16)
|
|
@@ -659,10 +801,6 @@ export namespace Types {
|
|
|
659
801
|
export class recipe_input extends Struct {
|
|
660
802
|
@Struct.field(UInt16)
|
|
661
803
|
declare item_id: UInt16
|
|
662
|
-
@Struct.field(UInt8)
|
|
663
|
-
declare category: UInt8
|
|
664
|
-
@Struct.field(UInt8)
|
|
665
|
-
declare tier: UInt8
|
|
666
804
|
@Struct.field(UInt32)
|
|
667
805
|
declare quantity: UInt32
|
|
668
806
|
}
|
|
@@ -724,6 +862,35 @@ export namespace Types {
|
|
|
724
862
|
@Struct.field(Name)
|
|
725
863
|
declare account: Name
|
|
726
864
|
}
|
|
865
|
+
@Struct.type('kind_meta_row')
|
|
866
|
+
export class kind_meta_row extends Struct {
|
|
867
|
+
@Struct.field(Name)
|
|
868
|
+
declare kind: Name
|
|
869
|
+
@Struct.field(UInt8)
|
|
870
|
+
declare classification: UInt8
|
|
871
|
+
@Struct.field(UInt8)
|
|
872
|
+
declare capability_flags: UInt8
|
|
873
|
+
@Struct.field(UInt32)
|
|
874
|
+
declare z_coord: UInt32
|
|
875
|
+
@Struct.field('string')
|
|
876
|
+
declare default_label: string
|
|
877
|
+
}
|
|
878
|
+
@Struct.type('template_meta_row')
|
|
879
|
+
export class template_meta_row extends Struct {
|
|
880
|
+
@Struct.field(UInt16)
|
|
881
|
+
declare item_id: UInt16
|
|
882
|
+
@Struct.field(Name)
|
|
883
|
+
declare kind: Name
|
|
884
|
+
@Struct.field('string')
|
|
885
|
+
declare display_label: string
|
|
886
|
+
}
|
|
887
|
+
@Struct.type('kind_meta_result')
|
|
888
|
+
export class kind_meta_result extends Struct {
|
|
889
|
+
@Struct.field(kind_meta_row, {array: true})
|
|
890
|
+
declare kinds: kind_meta_row[]
|
|
891
|
+
@Struct.field(template_meta_row, {array: true})
|
|
892
|
+
declare templates: template_meta_row[]
|
|
893
|
+
}
|
|
727
894
|
@Struct.type('location_static')
|
|
728
895
|
export class location_static extends Struct {
|
|
729
896
|
@Struct.field(coordinates)
|
|
@@ -737,21 +904,10 @@ export namespace Types {
|
|
|
737
904
|
@Struct.field(UInt8)
|
|
738
905
|
declare seed1: UInt8
|
|
739
906
|
}
|
|
740
|
-
@Struct.type('location_epoch')
|
|
741
|
-
export class location_epoch extends Struct {
|
|
742
|
-
@Struct.field('bool')
|
|
743
|
-
declare active: boolean
|
|
744
|
-
@Struct.field(UInt8)
|
|
745
|
-
declare seed0: UInt8
|
|
746
|
-
@Struct.field(UInt8)
|
|
747
|
-
declare seed1: UInt8
|
|
748
|
-
}
|
|
749
907
|
@Struct.type('location_derived')
|
|
750
908
|
export class location_derived extends Struct {
|
|
751
909
|
@Struct.field(location_static)
|
|
752
910
|
declare static_props: location_static
|
|
753
|
-
@Struct.field(location_epoch)
|
|
754
|
-
declare epoch_props: location_epoch
|
|
755
911
|
@Struct.field(UInt16)
|
|
756
912
|
declare size: UInt16
|
|
757
913
|
}
|
|
@@ -762,21 +918,6 @@ export namespace Types {
|
|
|
762
918
|
@Struct.field('bool')
|
|
763
919
|
declare is_system: boolean
|
|
764
920
|
}
|
|
765
|
-
@Struct.type('location_row')
|
|
766
|
-
export class location_row extends Struct {
|
|
767
|
-
@Struct.field(UInt64)
|
|
768
|
-
declare id: UInt64
|
|
769
|
-
@Struct.field(Name)
|
|
770
|
-
declare owner: Name
|
|
771
|
-
@Struct.field(coordinates)
|
|
772
|
-
declare coordinates: coordinates
|
|
773
|
-
@Struct.field(UInt32)
|
|
774
|
-
declare cargomass: UInt32
|
|
775
|
-
@Struct.field(cargo_item, {array: true})
|
|
776
|
-
declare cargo: cargo_item[]
|
|
777
|
-
@Struct.field(schedule, {optional: true})
|
|
778
|
-
declare schedule?: schedule
|
|
779
|
-
}
|
|
780
921
|
@Struct.type('module_info')
|
|
781
922
|
export class module_info extends Struct {
|
|
782
923
|
@Struct.field(UInt16)
|
|
@@ -812,21 +953,28 @@ export namespace Types {
|
|
|
812
953
|
declare current: entity_current_state
|
|
813
954
|
@Struct.field(entity_current_state)
|
|
814
955
|
declare projected: entity_current_state
|
|
815
|
-
@Struct.field(
|
|
816
|
-
declare max_energy:
|
|
956
|
+
@Struct.field(UInt32)
|
|
957
|
+
declare max_energy: UInt32
|
|
817
958
|
@Struct.field(nearby_system, {array: true})
|
|
818
959
|
declare systems: nearby_system[]
|
|
819
960
|
}
|
|
820
|
-
@Struct.type('
|
|
821
|
-
export class
|
|
961
|
+
@Struct.type('nft_cargo_item')
|
|
962
|
+
export class nft_cargo_item extends Struct {
|
|
963
|
+
@Struct.field(UInt16)
|
|
964
|
+
declare item_id: UInt16
|
|
822
965
|
@Struct.field(UInt64)
|
|
823
|
-
declare
|
|
824
|
-
@Struct.field(
|
|
825
|
-
declare
|
|
826
|
-
@Struct.field(
|
|
827
|
-
declare
|
|
828
|
-
|
|
829
|
-
|
|
966
|
+
declare stats: UInt64
|
|
967
|
+
@Struct.field(module_entry, {array: true})
|
|
968
|
+
declare modules: module_entry[]
|
|
969
|
+
@Struct.field(UInt32)
|
|
970
|
+
declare quantity: UInt32
|
|
971
|
+
}
|
|
972
|
+
@Struct.type('nft_item_payload')
|
|
973
|
+
export class nft_item_payload extends Struct {
|
|
974
|
+
@Struct.field(nft_cargo_item)
|
|
975
|
+
declare item: nft_cargo_item
|
|
976
|
+
@Struct.field(coordinates, {optional: true})
|
|
977
|
+
declare location?: coordinates
|
|
830
978
|
}
|
|
831
979
|
@Struct.type('schema_field')
|
|
832
980
|
export class schema_field extends Struct {
|
|
@@ -848,6 +996,8 @@ export namespace Types {
|
|
|
848
996
|
declare item_id: UInt16
|
|
849
997
|
@Struct.field(Name)
|
|
850
998
|
declare schema_name: Name
|
|
999
|
+
@Struct.field(Int32)
|
|
1000
|
+
declare template_id: Int32
|
|
851
1001
|
}
|
|
852
1002
|
@Struct.type('nftconfig_row')
|
|
853
1003
|
export class nftconfig_row extends Struct {
|
|
@@ -858,6 +1008,13 @@ export namespace Types {
|
|
|
858
1008
|
@Struct.field(Name)
|
|
859
1009
|
declare schema_name: Name
|
|
860
1010
|
}
|
|
1011
|
+
@Struct.type('nftimgurl')
|
|
1012
|
+
export class nftimgurl extends Struct {
|
|
1013
|
+
@Struct.field(cargo_item)
|
|
1014
|
+
declare item: cargo_item
|
|
1015
|
+
@Struct.field(coordinates, {optional: true})
|
|
1016
|
+
declare location?: coordinates
|
|
1017
|
+
}
|
|
861
1018
|
@Struct.type('nftinfo_result')
|
|
862
1019
|
export class nftinfo_result extends Struct {
|
|
863
1020
|
@Struct.field(nft_schema_def, {array: true})
|
|
@@ -883,14 +1040,44 @@ export namespace Types {
|
|
|
883
1040
|
declare starts_at: TimePoint
|
|
884
1041
|
@Struct.field(TimePoint)
|
|
885
1042
|
declare completes_at: TimePoint
|
|
886
|
-
@Struct.field(
|
|
887
|
-
declare new_energy?:
|
|
1043
|
+
@Struct.field(UInt32, {optional: true})
|
|
1044
|
+
declare new_energy?: UInt32
|
|
1045
|
+
@Struct.field(UInt8)
|
|
1046
|
+
declare lane_key: UInt8
|
|
888
1047
|
}
|
|
889
1048
|
@Struct.type('notify')
|
|
890
1049
|
export class notify extends Struct {
|
|
891
1050
|
@Struct.field(task_event)
|
|
892
1051
|
declare event: task_event
|
|
893
1052
|
}
|
|
1053
|
+
@Struct.type('oracle_config_row')
|
|
1054
|
+
export class oracle_config_row extends Struct {
|
|
1055
|
+
@Struct.field(UInt8)
|
|
1056
|
+
declare threshold: UInt8
|
|
1057
|
+
}
|
|
1058
|
+
@Struct.type('oracle_row')
|
|
1059
|
+
export class oracle_row extends Struct {
|
|
1060
|
+
@Struct.field(Name)
|
|
1061
|
+
declare id: Name
|
|
1062
|
+
}
|
|
1063
|
+
@Struct.type('placecargo')
|
|
1064
|
+
export class placecargo extends Struct {
|
|
1065
|
+
@Struct.field(Name)
|
|
1066
|
+
declare owner: Name
|
|
1067
|
+
@Struct.field(UInt64)
|
|
1068
|
+
declare host_id: UInt64
|
|
1069
|
+
@Struct.field(UInt64)
|
|
1070
|
+
declare asset_id: UInt64
|
|
1071
|
+
}
|
|
1072
|
+
@Struct.type('placeentity')
|
|
1073
|
+
export class placeentity extends Struct {
|
|
1074
|
+
@Struct.field(Name)
|
|
1075
|
+
declare owner: Name
|
|
1076
|
+
@Struct.field(UInt64)
|
|
1077
|
+
declare asset_id: UInt64
|
|
1078
|
+
@Struct.field(UInt64)
|
|
1079
|
+
declare target_nexus_id: UInt64
|
|
1080
|
+
}
|
|
894
1081
|
@Struct.type('player_info')
|
|
895
1082
|
export class player_info extends Struct {
|
|
896
1083
|
@Struct.field(Name)
|
|
@@ -899,40 +1086,67 @@ export namespace Types {
|
|
|
899
1086
|
declare is_player: boolean
|
|
900
1087
|
@Struct.field('string')
|
|
901
1088
|
declare company_name: string
|
|
902
|
-
@Struct.field(UInt64)
|
|
903
|
-
declare ship_count: UInt64
|
|
904
|
-
@Struct.field(UInt64)
|
|
905
|
-
declare warehouse_count: UInt64
|
|
906
|
-
@Struct.field(UInt64)
|
|
907
|
-
declare container_count: UInt64
|
|
908
1089
|
}
|
|
909
1090
|
@Struct.type('player_row')
|
|
910
1091
|
export class player_row extends Struct {
|
|
911
1092
|
@Struct.field(Name)
|
|
912
1093
|
declare owner: Name
|
|
913
1094
|
}
|
|
1095
|
+
@Struct.type('projected_state')
|
|
1096
|
+
export class projected_state extends Struct {
|
|
1097
|
+
@Struct.field(Name)
|
|
1098
|
+
declare owner: Name
|
|
1099
|
+
@Struct.field(coordinates)
|
|
1100
|
+
declare coordinates: coordinates
|
|
1101
|
+
@Struct.field(UInt32, {optional: true})
|
|
1102
|
+
declare energy?: UInt32
|
|
1103
|
+
@Struct.field(UInt32)
|
|
1104
|
+
declare cargomass: UInt32
|
|
1105
|
+
@Struct.field(cargo_view, {array: true})
|
|
1106
|
+
declare cargo: cargo_view[]
|
|
1107
|
+
@Struct.field(UInt32, {optional: true})
|
|
1108
|
+
declare hullmass?: UInt32
|
|
1109
|
+
@Struct.field(UInt32, {optional: true})
|
|
1110
|
+
declare capacity?: UInt32
|
|
1111
|
+
@Struct.field(movement_stats, {optional: true})
|
|
1112
|
+
declare engines?: movement_stats
|
|
1113
|
+
@Struct.field(warp_stats, {optional: true})
|
|
1114
|
+
declare warp?: warp_stats
|
|
1115
|
+
@Struct.field(energy_stats, {optional: true})
|
|
1116
|
+
declare generator?: energy_stats
|
|
1117
|
+
@Struct.field(gatherer_stats, {optional: true})
|
|
1118
|
+
declare gatherer?: gatherer_stats
|
|
1119
|
+
@Struct.field(loader_stats, {optional: true})
|
|
1120
|
+
declare loaders?: loader_stats
|
|
1121
|
+
@Struct.field(hauler_stats, {optional: true})
|
|
1122
|
+
declare hauler?: hauler_stats
|
|
1123
|
+
@Struct.field(crafter_stats, {optional: true})
|
|
1124
|
+
declare crafter?: crafter_stats
|
|
1125
|
+
}
|
|
914
1126
|
@Struct.type('recharge')
|
|
915
1127
|
export class recharge extends Struct {
|
|
916
|
-
@Struct.field(Name)
|
|
917
|
-
declare entity_type: Name
|
|
918
1128
|
@Struct.field(UInt64)
|
|
919
1129
|
declare id: UInt64
|
|
920
1130
|
}
|
|
921
|
-
@Struct.type('
|
|
922
|
-
export class
|
|
1131
|
+
@Struct.type('refrshentity')
|
|
1132
|
+
export class refrshentity extends Struct {
|
|
923
1133
|
@Struct.field(UInt64)
|
|
924
|
-
declare
|
|
1134
|
+
declare entity_id: UInt64
|
|
1135
|
+
}
|
|
1136
|
+
@Struct.type('removeoracle')
|
|
1137
|
+
export class removeoracle extends Struct {
|
|
1138
|
+
@Struct.field(Name)
|
|
1139
|
+
declare oracle_id: Name
|
|
1140
|
+
}
|
|
1141
|
+
@Struct.type('rename')
|
|
1142
|
+
export class rename extends Struct {
|
|
925
1143
|
@Struct.field(UInt64)
|
|
926
|
-
declare
|
|
927
|
-
@Struct.field(
|
|
928
|
-
declare
|
|
929
|
-
@Struct.field(UInt32)
|
|
930
|
-
declare remaining: UInt32
|
|
1144
|
+
declare id: UInt64
|
|
1145
|
+
@Struct.field('string')
|
|
1146
|
+
declare name: string
|
|
931
1147
|
}
|
|
932
1148
|
@Struct.type('resolve')
|
|
933
1149
|
export class resolve extends Struct {
|
|
934
|
-
@Struct.field(Name)
|
|
935
|
-
declare entity_type: Name
|
|
936
1150
|
@Struct.field(UInt64)
|
|
937
1151
|
declare id: UInt64
|
|
938
1152
|
@Struct.field(UInt64, {optional: true})
|
|
@@ -973,39 +1187,54 @@ export namespace Types {
|
|
|
973
1187
|
@Struct.field(UInt16)
|
|
974
1188
|
declare stat3: UInt16
|
|
975
1189
|
}
|
|
976
|
-
@Struct.type('resources_result')
|
|
977
|
-
export class resources_result extends Struct {
|
|
978
|
-
@Struct.field(resource_info, {array: true})
|
|
979
|
-
declare resources: resource_info[]
|
|
1190
|
+
@Struct.type('resources_result')
|
|
1191
|
+
export class resources_result extends Struct {
|
|
1192
|
+
@Struct.field(resource_info, {array: true})
|
|
1193
|
+
declare resources: resource_info[]
|
|
1194
|
+
}
|
|
1195
|
+
@Struct.type('retarget')
|
|
1196
|
+
export class retarget extends Struct {
|
|
1197
|
+
@Struct.field(UInt64)
|
|
1198
|
+
declare source_id: UInt64
|
|
1199
|
+
@Struct.field(UInt64)
|
|
1200
|
+
declare task_index: UInt64
|
|
1201
|
+
@Struct.field(UInt64)
|
|
1202
|
+
declare new_dest_id: UInt64
|
|
1203
|
+
}
|
|
1204
|
+
@Struct.type('reveal')
|
|
1205
|
+
export class reveal extends Struct {
|
|
1206
|
+
@Struct.field(Name)
|
|
1207
|
+
declare oracle_id: Name
|
|
1208
|
+
@Struct.field(UInt64)
|
|
1209
|
+
declare epoch: UInt64
|
|
1210
|
+
@Struct.field(Checksum256)
|
|
1211
|
+
declare reveal: Checksum256
|
|
1212
|
+
}
|
|
1213
|
+
@Struct.type('reveal_row')
|
|
1214
|
+
export class reveal_row extends Struct {
|
|
1215
|
+
@Struct.field(UInt64)
|
|
1216
|
+
declare id: UInt64
|
|
1217
|
+
@Struct.field(UInt64)
|
|
1218
|
+
declare epoch: UInt64
|
|
1219
|
+
@Struct.field(Name)
|
|
1220
|
+
declare oracle_id: Name
|
|
1221
|
+
@Struct.field(Checksum256)
|
|
1222
|
+
declare reveal: Checksum256
|
|
980
1223
|
}
|
|
981
1224
|
@Struct.type('rmmodule')
|
|
982
1225
|
export class rmmodule extends Struct {
|
|
983
|
-
@Struct.field(Name)
|
|
984
|
-
declare entity_type: Name
|
|
985
1226
|
@Struct.field(UInt64)
|
|
986
1227
|
declare entity_id: UInt64
|
|
987
1228
|
@Struct.field(UInt8)
|
|
988
1229
|
declare module_index: UInt8
|
|
989
|
-
@Struct.field(
|
|
990
|
-
declare
|
|
1230
|
+
@Struct.field(cargo_ref, {optional: true})
|
|
1231
|
+
declare target_ref?: cargo_ref
|
|
991
1232
|
}
|
|
992
1233
|
@Struct.type('rmnftcfg')
|
|
993
1234
|
export class rmnftcfg extends Struct {
|
|
994
1235
|
@Struct.field(UInt16)
|
|
995
1236
|
declare item_id: UInt16
|
|
996
1237
|
}
|
|
997
|
-
@Struct.type('salt')
|
|
998
|
-
export class salt extends Struct {
|
|
999
|
-
@Struct.field(UInt64)
|
|
1000
|
-
declare salt: UInt64
|
|
1001
|
-
}
|
|
1002
|
-
@Struct.type('sequence_row')
|
|
1003
|
-
export class sequence_row extends Struct {
|
|
1004
|
-
@Struct.field(Name)
|
|
1005
|
-
declare key: Name
|
|
1006
|
-
@Struct.field(UInt64)
|
|
1007
|
-
declare value: UInt64
|
|
1008
|
-
}
|
|
1009
1238
|
@Struct.type('setnftcfg')
|
|
1010
1239
|
export class setnftcfg extends Struct {
|
|
1011
1240
|
@Struct.field(UInt16)
|
|
@@ -1015,90 +1244,48 @@ export namespace Types {
|
|
|
1015
1244
|
@Struct.field(Name)
|
|
1016
1245
|
declare schema_name: Name
|
|
1017
1246
|
}
|
|
1018
|
-
@Struct.type('
|
|
1019
|
-
export class
|
|
1020
|
-
@Struct.field(
|
|
1021
|
-
declare
|
|
1022
|
-
@Struct.field(Name)
|
|
1023
|
-
declare owner: Name
|
|
1024
|
-
@Struct.field('string')
|
|
1025
|
-
declare name: string
|
|
1026
|
-
@Struct.field(UInt64)
|
|
1027
|
-
declare stats: UInt64
|
|
1028
|
-
@Struct.field(coordinates)
|
|
1029
|
-
declare coordinates: coordinates
|
|
1030
|
-
@Struct.field(UInt32, {optional: true})
|
|
1031
|
-
declare hullmass?: UInt32
|
|
1032
|
-
@Struct.field(UInt32, {optional: true})
|
|
1033
|
-
declare capacity?: UInt32
|
|
1034
|
-
@Struct.field(UInt16, {optional: true})
|
|
1035
|
-
declare energy?: UInt16
|
|
1036
|
-
@Struct.field(UInt32)
|
|
1037
|
-
declare cargomass: UInt32
|
|
1038
|
-
@Struct.field(movement_stats, {optional: true})
|
|
1039
|
-
declare engines?: movement_stats
|
|
1040
|
-
@Struct.field(energy_stats, {optional: true})
|
|
1041
|
-
declare generator?: energy_stats
|
|
1042
|
-
@Struct.field(loader_stats, {optional: true})
|
|
1043
|
-
declare loaders?: loader_stats
|
|
1044
|
-
@Struct.field(gatherer_stats, {optional: true})
|
|
1045
|
-
declare gatherer?: gatherer_stats
|
|
1046
|
-
@Struct.field(warp_stats, {optional: true})
|
|
1047
|
-
declare warp?: warp_stats
|
|
1048
|
-
@Struct.field(crafter_stats, {optional: true})
|
|
1049
|
-
declare crafter?: crafter_stats
|
|
1050
|
-
@Struct.field(hauler_stats, {optional: true})
|
|
1051
|
-
declare hauler?: hauler_stats
|
|
1052
|
-
@Struct.field(module_entry, {array: true})
|
|
1053
|
-
declare modules: module_entry[]
|
|
1054
|
-
@Struct.field(schedule, {optional: true})
|
|
1055
|
-
declare schedule?: schedule
|
|
1247
|
+
@Struct.type('setthreshold')
|
|
1248
|
+
export class setthreshold extends Struct {
|
|
1249
|
+
@Struct.field(UInt8)
|
|
1250
|
+
declare threshold: UInt8
|
|
1056
1251
|
}
|
|
1057
|
-
@Struct.type('
|
|
1058
|
-
export class
|
|
1059
|
-
@Struct.field(
|
|
1060
|
-
declare
|
|
1061
|
-
@Struct.field(
|
|
1062
|
-
declare
|
|
1252
|
+
@Struct.type('setwrapcost')
|
|
1253
|
+
export class setwrapcost extends Struct {
|
|
1254
|
+
@Struct.field(UInt8)
|
|
1255
|
+
declare item_type: UInt8
|
|
1256
|
+
@Struct.field(UInt8)
|
|
1257
|
+
declare tier: UInt8
|
|
1063
1258
|
@Struct.field(UInt64)
|
|
1064
|
-
declare
|
|
1259
|
+
declare amount: UInt64
|
|
1065
1260
|
}
|
|
1066
|
-
@Struct.type('
|
|
1067
|
-
export class
|
|
1068
|
-
@Struct.field(UInt64)
|
|
1069
|
-
declare entity_id: UInt64
|
|
1261
|
+
@Struct.type('setwrapfee')
|
|
1262
|
+
export class setwrapfee extends Struct {
|
|
1070
1263
|
@Struct.field(UInt16)
|
|
1071
|
-
declare
|
|
1072
|
-
@Struct.field(
|
|
1073
|
-
declare
|
|
1074
|
-
@Struct.field(packed_module, {array: true})
|
|
1075
|
-
declare installed: packed_module[]
|
|
1264
|
+
declare fee_pct: UInt16
|
|
1265
|
+
@Struct.field(Name)
|
|
1266
|
+
declare fee_account: Name
|
|
1076
1267
|
}
|
|
1077
|
-
@Struct.type('
|
|
1078
|
-
export class
|
|
1268
|
+
@Struct.type('stowcargo')
|
|
1269
|
+
export class stowcargo extends Struct {
|
|
1270
|
+
@Struct.field(Name)
|
|
1271
|
+
declare owner: Name
|
|
1079
1272
|
@Struct.field(UInt64)
|
|
1080
1273
|
declare entity_id: UInt64
|
|
1081
1274
|
@Struct.field(UInt64)
|
|
1082
|
-
declare
|
|
1275
|
+
declare nexus_id: UInt64
|
|
1083
1276
|
@Struct.field(UInt64)
|
|
1084
|
-
declare
|
|
1277
|
+
declare cargo_id: UInt64
|
|
1085
1278
|
@Struct.field(UInt64)
|
|
1086
|
-
declare
|
|
1279
|
+
declare quantity: UInt64
|
|
1087
1280
|
}
|
|
1088
|
-
@Struct.type('
|
|
1089
|
-
export class
|
|
1090
|
-
@Struct.field(
|
|
1091
|
-
declare
|
|
1092
|
-
@Struct.field(UInt32)
|
|
1093
|
-
declare epoch: UInt32
|
|
1281
|
+
@Struct.type('stowentity')
|
|
1282
|
+
export class stowentity extends Struct {
|
|
1283
|
+
@Struct.field(Name)
|
|
1284
|
+
declare owner: Name
|
|
1094
1285
|
@Struct.field(UInt64)
|
|
1095
|
-
declare
|
|
1096
|
-
@Struct.field(
|
|
1097
|
-
declare
|
|
1098
|
-
@Struct.field(Checksum256)
|
|
1099
|
-
declare seed: Checksum256
|
|
1100
|
-
@Struct.field(Checksum256)
|
|
1101
|
-
declare commit: Checksum256
|
|
1286
|
+
declare entity_id: UInt64
|
|
1287
|
+
@Struct.field(UInt64)
|
|
1288
|
+
declare nexus_id: UInt64
|
|
1102
1289
|
}
|
|
1103
1290
|
@Struct.type('stratum_info')
|
|
1104
1291
|
export class stratum_info extends Struct {
|
|
@@ -1126,6 +1313,17 @@ export namespace Types {
|
|
|
1126
1313
|
declare stratum: UInt16
|
|
1127
1314
|
@Struct.field(UInt32)
|
|
1128
1315
|
declare remaining: UInt32
|
|
1316
|
+
@Struct.field(BlockTimestamp)
|
|
1317
|
+
declare last_block: BlockTimestamp
|
|
1318
|
+
}
|
|
1319
|
+
@Struct.type('swapmodule')
|
|
1320
|
+
export class swapmodule extends Struct {
|
|
1321
|
+
@Struct.field(UInt64)
|
|
1322
|
+
declare entity_id: UInt64
|
|
1323
|
+
@Struct.field(UInt8)
|
|
1324
|
+
declare module_index: UInt8
|
|
1325
|
+
@Struct.field(cargo_ref)
|
|
1326
|
+
declare module_ref: cargo_ref
|
|
1129
1327
|
}
|
|
1130
1328
|
@Struct.type('task_results')
|
|
1131
1329
|
export class task_results extends Struct {
|
|
@@ -1134,25 +1332,15 @@ export namespace Types {
|
|
|
1134
1332
|
}
|
|
1135
1333
|
@Struct.type('transfer')
|
|
1136
1334
|
export class transfer extends Struct {
|
|
1137
|
-
@Struct.field(Name)
|
|
1138
|
-
declare source_type: Name
|
|
1139
1335
|
@Struct.field(UInt64)
|
|
1140
1336
|
declare source_id: UInt64
|
|
1141
|
-
@Struct.field(Name)
|
|
1142
|
-
declare dest_type: Name
|
|
1143
1337
|
@Struct.field(UInt64)
|
|
1144
1338
|
declare dest_id: UInt64
|
|
1145
|
-
@Struct.field(
|
|
1146
|
-
declare
|
|
1147
|
-
@Struct.field(UInt64)
|
|
1148
|
-
declare stats: UInt64
|
|
1149
|
-
@Struct.field(UInt32)
|
|
1150
|
-
declare quantity: UInt32
|
|
1339
|
+
@Struct.field(cargo_item, {array: true})
|
|
1340
|
+
declare items: cargo_item[]
|
|
1151
1341
|
}
|
|
1152
1342
|
@Struct.type('travel')
|
|
1153
1343
|
export class travel extends Struct {
|
|
1154
|
-
@Struct.field(Name)
|
|
1155
|
-
declare entity_type: Name
|
|
1156
1344
|
@Struct.field(UInt64)
|
|
1157
1345
|
declare id: UInt64
|
|
1158
1346
|
@Struct.field(Int64)
|
|
@@ -1172,36 +1360,18 @@ export namespace Types {
|
|
|
1172
1360
|
declare game_config_type: game_config
|
|
1173
1361
|
@Struct.field(stratum_remaining)
|
|
1174
1362
|
declare stratum_remaining_type: stratum_remaining
|
|
1363
|
+
@Struct.field(nft_item_payload)
|
|
1364
|
+
declare nft_item_payload_type: nft_item_payload
|
|
1175
1365
|
}
|
|
1176
|
-
@Struct.type('
|
|
1177
|
-
export class
|
|
1366
|
+
@Struct.type('undeploy')
|
|
1367
|
+
export class undeploy extends Struct {
|
|
1178
1368
|
@Struct.field(UInt64)
|
|
1179
|
-
declare
|
|
1180
|
-
@Struct.field(Name)
|
|
1181
|
-
declare owner: Name
|
|
1182
|
-
@Struct.field('string')
|
|
1183
|
-
declare name: string
|
|
1369
|
+
declare host_id: UInt64
|
|
1184
1370
|
@Struct.field(UInt64)
|
|
1185
|
-
declare
|
|
1186
|
-
@Struct.field(coordinates)
|
|
1187
|
-
declare coordinates: coordinates
|
|
1188
|
-
@Struct.field(UInt32, {optional: true})
|
|
1189
|
-
declare hullmass?: UInt32
|
|
1190
|
-
@Struct.field(UInt32, {optional: true})
|
|
1191
|
-
declare capacity?: UInt32
|
|
1192
|
-
@Struct.field(UInt32)
|
|
1193
|
-
declare cargomass: UInt32
|
|
1194
|
-
@Struct.field(loader_stats, {optional: true})
|
|
1195
|
-
declare loaders?: loader_stats
|
|
1196
|
-
@Struct.field(module_entry, {array: true})
|
|
1197
|
-
declare modules: module_entry[]
|
|
1198
|
-
@Struct.field(schedule, {optional: true})
|
|
1199
|
-
declare schedule?: schedule
|
|
1371
|
+
declare target_id: UInt64
|
|
1200
1372
|
}
|
|
1201
1373
|
@Struct.type('warp')
|
|
1202
1374
|
export class warp extends Struct {
|
|
1203
|
-
@Struct.field(Name)
|
|
1204
|
-
declare entity_type: Name
|
|
1205
1375
|
@Struct.field(UInt64)
|
|
1206
1376
|
declare id: UInt64
|
|
1207
1377
|
@Struct.field(Int64)
|
|
@@ -1211,61 +1381,70 @@ export namespace Types {
|
|
|
1211
1381
|
}
|
|
1212
1382
|
@Struct.type('wipe')
|
|
1213
1383
|
export class wipe extends Struct {}
|
|
1214
|
-
@Struct.type('
|
|
1215
|
-
export class
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
@Struct.field(Name)
|
|
1219
|
-
declare owner: Name
|
|
1384
|
+
@Struct.type('wrapconfig_row')
|
|
1385
|
+
export class wrapconfig_row extends Struct {
|
|
1386
|
+
@Struct.field(UInt16)
|
|
1387
|
+
declare fee_pct: UInt16
|
|
1220
1388
|
@Struct.field(Name)
|
|
1221
|
-
declare
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1389
|
+
declare fee_account: Name
|
|
1390
|
+
}
|
|
1391
|
+
@Struct.type('wrapcost_row')
|
|
1392
|
+
export class wrapcost_row extends Struct {
|
|
1393
|
+
@Struct.field(UInt8)
|
|
1394
|
+
declare item_type: UInt8
|
|
1395
|
+
@Struct.field(UInt8)
|
|
1396
|
+
declare tier: UInt8
|
|
1226
1397
|
@Struct.field(UInt64)
|
|
1227
|
-
declare
|
|
1398
|
+
declare amount: UInt64
|
|
1228
1399
|
}
|
|
1229
1400
|
}
|
|
1230
1401
|
export const TableMap = {
|
|
1231
1402
|
cargo: Types.cargo_row,
|
|
1232
|
-
|
|
1403
|
+
claims: Types.claim_row,
|
|
1404
|
+
commit: Types.commit_row,
|
|
1405
|
+
entity: Types.entity_row,
|
|
1233
1406
|
entitygroup: Types.entitygroup_row,
|
|
1234
|
-
|
|
1235
|
-
|
|
1407
|
+
entityseq: Types.entity_seq_row,
|
|
1408
|
+
epoch: Types.epoch_row,
|
|
1236
1409
|
nftconfig: Types.nftconfig_row,
|
|
1410
|
+
oraclecfg: Types.oracle_config_row,
|
|
1411
|
+
oracles: Types.oracle_row,
|
|
1237
1412
|
player: Types.player_row,
|
|
1238
1413
|
reserve: Types.reserve_row,
|
|
1239
|
-
|
|
1240
|
-
ship: Types.ship_row,
|
|
1414
|
+
reveal: Types.reveal_row,
|
|
1241
1415
|
state: Types.state_row,
|
|
1242
1416
|
types: Types.types_row,
|
|
1243
|
-
|
|
1417
|
+
wrapconfig: Types.wrapconfig_row,
|
|
1418
|
+
wrapcost: Types.wrapcost_row,
|
|
1244
1419
|
}
|
|
1245
1420
|
export interface TableTypes {
|
|
1246
1421
|
cargo: Types.cargo_row
|
|
1247
|
-
|
|
1422
|
+
claims: Types.claim_row
|
|
1423
|
+
commit: Types.commit_row
|
|
1424
|
+
entity: Types.entity_row
|
|
1248
1425
|
entitygroup: Types.entitygroup_row
|
|
1249
|
-
|
|
1250
|
-
|
|
1426
|
+
entityseq: Types.entity_seq_row
|
|
1427
|
+
epoch: Types.epoch_row
|
|
1251
1428
|
nftconfig: Types.nftconfig_row
|
|
1429
|
+
oraclecfg: Types.oracle_config_row
|
|
1430
|
+
oracles: Types.oracle_row
|
|
1252
1431
|
player: Types.player_row
|
|
1253
1432
|
reserve: Types.reserve_row
|
|
1254
|
-
|
|
1255
|
-
ship: Types.ship_row
|
|
1433
|
+
reveal: Types.reveal_row
|
|
1256
1434
|
state: Types.state_row
|
|
1257
1435
|
types: Types.types_row
|
|
1258
|
-
|
|
1436
|
+
wrapconfig: Types.wrapconfig_row
|
|
1437
|
+
wrapcost: Types.wrapcost_row
|
|
1259
1438
|
}
|
|
1260
1439
|
export type RowType<T> = T extends keyof TableTypes ? TableTypes[T] : any
|
|
1261
1440
|
export type TableNames = keyof TableTypes
|
|
1262
1441
|
export namespace ActionParams {
|
|
1263
1442
|
export namespace Type {
|
|
1264
|
-
export interface
|
|
1443
|
+
export interface cargo_ref {
|
|
1265
1444
|
item_id: UInt16Type
|
|
1266
|
-
quantity: UInt32Type
|
|
1267
1445
|
stats: UInt64Type
|
|
1268
1446
|
modules: Type.module_entry[]
|
|
1447
|
+
entity_id?: UInt64Type
|
|
1269
1448
|
}
|
|
1270
1449
|
export interface module_entry {
|
|
1271
1450
|
type: UInt8Type
|
|
@@ -1275,6 +1454,18 @@ export namespace ActionParams {
|
|
|
1275
1454
|
item_id: UInt16Type
|
|
1276
1455
|
stats: UInt64Type
|
|
1277
1456
|
}
|
|
1457
|
+
export interface cargo_item {
|
|
1458
|
+
item_id: UInt16Type
|
|
1459
|
+
stats: UInt64Type
|
|
1460
|
+
modules: Type.module_entry[]
|
|
1461
|
+
quantity: UInt32Type
|
|
1462
|
+
entity_id?: UInt64Type
|
|
1463
|
+
}
|
|
1464
|
+
export interface coordinates {
|
|
1465
|
+
x: Int64Type
|
|
1466
|
+
y: Int64Type
|
|
1467
|
+
z?: UInt16Type
|
|
1468
|
+
}
|
|
1278
1469
|
export interface game_config {
|
|
1279
1470
|
version: UInt32Type
|
|
1280
1471
|
defaults: Type.entity_defaults
|
|
@@ -1291,10 +1482,66 @@ export namespace ActionParams {
|
|
|
1291
1482
|
subtype: UInt8Type
|
|
1292
1483
|
tier: UInt8Type
|
|
1293
1484
|
}
|
|
1485
|
+
export interface entity_row {
|
|
1486
|
+
id: UInt64Type
|
|
1487
|
+
owner: NameType
|
|
1488
|
+
kind: NameType
|
|
1489
|
+
item_id: UInt16Type
|
|
1490
|
+
name: string
|
|
1491
|
+
stats: UInt64Type
|
|
1492
|
+
coordinates: Type.coordinates
|
|
1493
|
+
energy?: UInt32Type
|
|
1494
|
+
cargomass: UInt32Type
|
|
1495
|
+
modules: Type.module_entry[]
|
|
1496
|
+
lanes: Type.lane[]
|
|
1497
|
+
}
|
|
1498
|
+
export interface lane {
|
|
1499
|
+
lane_key: UInt8Type
|
|
1500
|
+
schedule: Type.schedule
|
|
1501
|
+
}
|
|
1502
|
+
export interface schedule {
|
|
1503
|
+
started: TimePointType
|
|
1504
|
+
tasks: Type.task[]
|
|
1505
|
+
}
|
|
1506
|
+
export interface task {
|
|
1507
|
+
type: UInt8Type
|
|
1508
|
+
duration: UInt32Type
|
|
1509
|
+
cancelable: UInt8Type
|
|
1510
|
+
coordinates?: Type.coordinates
|
|
1511
|
+
cargo: Type.cargo_item[]
|
|
1512
|
+
entitytarget?: Type.entity_ref
|
|
1513
|
+
entitygroup?: UInt64Type
|
|
1514
|
+
energy_cost?: UInt32Type
|
|
1515
|
+
}
|
|
1294
1516
|
export interface entity_ref {
|
|
1295
1517
|
entity_type: NameType
|
|
1296
1518
|
entity_id: UInt64Type
|
|
1297
1519
|
}
|
|
1520
|
+
export interface cargo_row {
|
|
1521
|
+
id: UInt64Type
|
|
1522
|
+
entity_id: UInt64Type
|
|
1523
|
+
item_id: UInt64Type
|
|
1524
|
+
quantity: UInt64Type
|
|
1525
|
+
stats: UInt64Type
|
|
1526
|
+
modules: Type.module_entry[]
|
|
1527
|
+
sequence_id?: UInt64Type
|
|
1528
|
+
}
|
|
1529
|
+
export interface entitygroup_row {
|
|
1530
|
+
id: UInt64Type
|
|
1531
|
+
participants: Type.entity_ref[]
|
|
1532
|
+
}
|
|
1533
|
+
export interface reserve_row {
|
|
1534
|
+
id: UInt64Type
|
|
1535
|
+
coord_id: UInt64Type
|
|
1536
|
+
stratum: UInt16Type
|
|
1537
|
+
remaining: UInt32Type
|
|
1538
|
+
last_block: BlockTimestamp
|
|
1539
|
+
}
|
|
1540
|
+
export interface state_row {
|
|
1541
|
+
enabled: boolean
|
|
1542
|
+
epoch: UInt32Type
|
|
1543
|
+
seed: Checksum256Type
|
|
1544
|
+
}
|
|
1298
1545
|
export interface task_event {
|
|
1299
1546
|
event_type: UInt8Type
|
|
1300
1547
|
owner: NameType
|
|
@@ -1304,54 +1551,44 @@ export namespace ActionParams {
|
|
|
1304
1551
|
task: Type.task
|
|
1305
1552
|
starts_at: TimePointType
|
|
1306
1553
|
completes_at: TimePointType
|
|
1307
|
-
new_energy?:
|
|
1308
|
-
|
|
1309
|
-
export interface task {
|
|
1310
|
-
type: UInt8Type
|
|
1311
|
-
duration: UInt32Type
|
|
1312
|
-
cancelable: UInt8Type
|
|
1313
|
-
coordinates?: Type.coordinates
|
|
1314
|
-
cargo: Type.cargo_item[]
|
|
1315
|
-
entitytarget?: Type.entity_ref
|
|
1316
|
-
entitygroup?: UInt64Type
|
|
1317
|
-
energy_cost?: UInt16Type
|
|
1318
|
-
}
|
|
1319
|
-
export interface coordinates {
|
|
1320
|
-
x: Int64Type
|
|
1321
|
-
y: Int64Type
|
|
1322
|
-
z?: UInt16Type
|
|
1554
|
+
new_energy?: UInt32Type
|
|
1555
|
+
lane_key: UInt8Type
|
|
1323
1556
|
}
|
|
1324
1557
|
}
|
|
1325
1558
|
export interface addmodule {
|
|
1326
|
-
entity_type: NameType
|
|
1327
1559
|
entity_id: UInt64Type
|
|
1328
1560
|
module_index: UInt8Type
|
|
1329
|
-
|
|
1330
|
-
|
|
1561
|
+
module_ref: Type.cargo_ref
|
|
1562
|
+
target_ref?: Type.cargo_ref
|
|
1331
1563
|
}
|
|
1332
1564
|
export interface addnexus {
|
|
1333
1565
|
nexus_name: string
|
|
1334
1566
|
x: Int64Type
|
|
1335
1567
|
y: Int64Type
|
|
1336
1568
|
}
|
|
1337
|
-
export interface
|
|
1338
|
-
|
|
1339
|
-
commit: Checksum256Type
|
|
1569
|
+
export interface addoracle {
|
|
1570
|
+
oracle_id: NameType
|
|
1340
1571
|
}
|
|
1341
1572
|
export interface blend {
|
|
1342
|
-
entity_type: NameType
|
|
1343
1573
|
id: UInt64Type
|
|
1344
1574
|
inputs: Type.cargo_item[]
|
|
1345
1575
|
}
|
|
1576
|
+
export interface buildplot {
|
|
1577
|
+
builder_id: UInt64Type
|
|
1578
|
+
plot_id: UInt64Type
|
|
1579
|
+
}
|
|
1346
1580
|
export interface cancel {
|
|
1347
|
-
entity_type: NameType
|
|
1348
1581
|
id: UInt64Type
|
|
1582
|
+
lane_key: UInt8Type
|
|
1349
1583
|
count: UInt64Type
|
|
1350
1584
|
}
|
|
1585
|
+
export interface claimplot {
|
|
1586
|
+
builder_id: UInt64Type
|
|
1587
|
+
target_item_id: UInt16Type
|
|
1588
|
+
coords: Type.coordinates
|
|
1589
|
+
}
|
|
1351
1590
|
export interface claimstarter {
|
|
1352
|
-
|
|
1353
|
-
x: Int64Type
|
|
1354
|
-
y: Int64Type
|
|
1591
|
+
owner: NameType
|
|
1355
1592
|
}
|
|
1356
1593
|
export interface cleanrsvp {
|
|
1357
1594
|
epoch: UInt64Type
|
|
@@ -1363,30 +1600,25 @@ export namespace ActionParams {
|
|
|
1363
1600
|
max_rows?: UInt64Type
|
|
1364
1601
|
}
|
|
1365
1602
|
export interface commit {
|
|
1603
|
+
oracle_id: NameType
|
|
1604
|
+
epoch: UInt64Type
|
|
1366
1605
|
commit: Checksum256Type
|
|
1367
1606
|
}
|
|
1368
1607
|
export interface configlog {
|
|
1369
1608
|
config: Type.game_config
|
|
1370
1609
|
}
|
|
1371
1610
|
export interface craft {
|
|
1372
|
-
entity_type: NameType
|
|
1373
1611
|
id: UInt64Type
|
|
1374
1612
|
recipe_id: UInt16Type
|
|
1375
1613
|
quantity: UInt32Type
|
|
1376
1614
|
inputs: Type.cargo_item[]
|
|
1377
1615
|
}
|
|
1378
|
-
export interface
|
|
1379
|
-
|
|
1380
|
-
entity_type: NameType
|
|
1381
|
-
entity_name: string
|
|
1382
|
-
x: Int64Type
|
|
1383
|
-
y: Int64Type
|
|
1616
|
+
export interface demolish {
|
|
1617
|
+
entity_id: UInt64Type
|
|
1384
1618
|
}
|
|
1385
1619
|
export interface deploy {
|
|
1386
|
-
entity_type: NameType
|
|
1387
1620
|
id: UInt64Type
|
|
1388
|
-
|
|
1389
|
-
stats: UInt64Type
|
|
1621
|
+
ref: Type.cargo_ref
|
|
1390
1622
|
}
|
|
1391
1623
|
export interface descentity {
|
|
1392
1624
|
item_id: UInt16Type
|
|
@@ -1397,25 +1629,46 @@ export namespace ActionParams {
|
|
|
1397
1629
|
export interface enable {
|
|
1398
1630
|
enabled: boolean
|
|
1399
1631
|
}
|
|
1632
|
+
export interface fixcargomass {
|
|
1633
|
+
entity_id: UInt64Type
|
|
1634
|
+
}
|
|
1635
|
+
export interface forcereveal {
|
|
1636
|
+
epoch: UInt64Type
|
|
1637
|
+
}
|
|
1400
1638
|
export interface gather {
|
|
1401
|
-
|
|
1402
|
-
|
|
1639
|
+
source_id: UInt64Type
|
|
1640
|
+
destination_id: UInt64Type
|
|
1403
1641
|
stratum: UInt16Type
|
|
1404
1642
|
quantity: UInt32Type
|
|
1405
1643
|
}
|
|
1644
|
+
export interface genesisfleet {
|
|
1645
|
+
entities: Type.entity_row[]
|
|
1646
|
+
}
|
|
1406
1647
|
export interface getconfig {}
|
|
1648
|
+
export interface getdeposit {
|
|
1649
|
+
owner: NameType
|
|
1650
|
+
asset_id: UInt64Type
|
|
1651
|
+
}
|
|
1652
|
+
export interface geteligible {
|
|
1653
|
+
coords: Type.coordinates
|
|
1654
|
+
stratum: UInt16Type
|
|
1655
|
+
}
|
|
1656
|
+
export interface getentcls {}
|
|
1407
1657
|
export interface getentities {
|
|
1408
1658
|
owner: NameType
|
|
1409
1659
|
entity_type?: NameType
|
|
1410
1660
|
}
|
|
1411
1661
|
export interface getentity {
|
|
1412
|
-
entity_type: NameType
|
|
1413
1662
|
entity_id: UInt64Type
|
|
1414
1663
|
}
|
|
1415
1664
|
export interface getitemdata {}
|
|
1416
1665
|
export interface getitemids {}
|
|
1417
1666
|
export interface getitems {}
|
|
1667
|
+
export interface getitemtype {
|
|
1668
|
+
item_id: UInt16Type
|
|
1669
|
+
}
|
|
1418
1670
|
export interface getitemtypes {}
|
|
1671
|
+
export interface getkindmeta {}
|
|
1419
1672
|
export interface getlocation {
|
|
1420
1673
|
x: Int64Type
|
|
1421
1674
|
y: Int64Type
|
|
@@ -1427,14 +1680,18 @@ export namespace ActionParams {
|
|
|
1427
1680
|
export interface getmodtypes {}
|
|
1428
1681
|
export interface getmodules {}
|
|
1429
1682
|
export interface getnearby {
|
|
1430
|
-
entity_type: NameType
|
|
1431
1683
|
entity_id: UInt64Type
|
|
1432
1684
|
recharge: boolean
|
|
1433
1685
|
}
|
|
1686
|
+
export interface getnftbase {}
|
|
1434
1687
|
export interface getnftinfo {}
|
|
1435
1688
|
export interface getplayer {
|
|
1436
1689
|
account: NameType
|
|
1437
1690
|
}
|
|
1691
|
+
export interface getprojstate {
|
|
1692
|
+
entity_id: UInt64Type
|
|
1693
|
+
task_count?: UInt8Type
|
|
1694
|
+
}
|
|
1438
1695
|
export interface getrecipe {
|
|
1439
1696
|
output_item_id: UInt16Type
|
|
1440
1697
|
}
|
|
@@ -1470,121 +1727,179 @@ export namespace ActionParams {
|
|
|
1470
1727
|
export interface hash512 {
|
|
1471
1728
|
value: string
|
|
1472
1729
|
}
|
|
1473
|
-
export interface
|
|
1474
|
-
|
|
1730
|
+
export interface importcargo {
|
|
1731
|
+
row: Type.cargo_row
|
|
1732
|
+
}
|
|
1733
|
+
export interface importentity {
|
|
1734
|
+
row: Type.entity_row
|
|
1735
|
+
}
|
|
1736
|
+
export interface importgroup {
|
|
1737
|
+
row: Type.entitygroup_row
|
|
1738
|
+
}
|
|
1739
|
+
export interface importplayer {
|
|
1740
|
+
owner: NameType
|
|
1741
|
+
}
|
|
1742
|
+
export interface importreserve {
|
|
1743
|
+
epoch_scope: UInt32Type
|
|
1744
|
+
row: Type.reserve_row
|
|
1745
|
+
}
|
|
1746
|
+
export interface importstate {
|
|
1747
|
+
row: Type.state_row
|
|
1475
1748
|
}
|
|
1476
1749
|
export interface join {
|
|
1477
1750
|
account: NameType
|
|
1478
1751
|
}
|
|
1752
|
+
export interface nftimgurl {
|
|
1753
|
+
item: Type.cargo_item
|
|
1754
|
+
location?: Type.coordinates
|
|
1755
|
+
}
|
|
1479
1756
|
export interface notify {
|
|
1480
1757
|
event: Type.task_event
|
|
1481
1758
|
}
|
|
1759
|
+
export interface placecargo {
|
|
1760
|
+
owner: NameType
|
|
1761
|
+
host_id: UInt64Type
|
|
1762
|
+
asset_id: UInt64Type
|
|
1763
|
+
}
|
|
1764
|
+
export interface placeentity {
|
|
1765
|
+
owner: NameType
|
|
1766
|
+
asset_id: UInt64Type
|
|
1767
|
+
target_nexus_id: UInt64Type
|
|
1768
|
+
}
|
|
1482
1769
|
export interface recharge {
|
|
1483
|
-
entity_type: NameType
|
|
1484
1770
|
id: UInt64Type
|
|
1485
1771
|
}
|
|
1772
|
+
export interface refrshentity {
|
|
1773
|
+
entity_id: UInt64Type
|
|
1774
|
+
}
|
|
1775
|
+
export interface removeoracle {
|
|
1776
|
+
oracle_id: NameType
|
|
1777
|
+
}
|
|
1778
|
+
export interface rename {
|
|
1779
|
+
id: UInt64Type
|
|
1780
|
+
name: string
|
|
1781
|
+
}
|
|
1486
1782
|
export interface resolve {
|
|
1487
|
-
entity_type: NameType
|
|
1488
1783
|
id: UInt64Type
|
|
1489
1784
|
count?: UInt64Type
|
|
1490
1785
|
}
|
|
1786
|
+
export interface retarget {
|
|
1787
|
+
source_id: UInt64Type
|
|
1788
|
+
task_index: UInt64Type
|
|
1789
|
+
new_dest_id: UInt64Type
|
|
1790
|
+
}
|
|
1791
|
+
export interface reveal {
|
|
1792
|
+
oracle_id: NameType
|
|
1793
|
+
epoch: UInt64Type
|
|
1794
|
+
reveal: Checksum256Type
|
|
1795
|
+
}
|
|
1491
1796
|
export interface rmmodule {
|
|
1492
|
-
entity_type: NameType
|
|
1493
1797
|
entity_id: UInt64Type
|
|
1494
1798
|
module_index: UInt8Type
|
|
1495
|
-
|
|
1799
|
+
target_ref?: Type.cargo_ref
|
|
1496
1800
|
}
|
|
1497
1801
|
export interface rmnftcfg {
|
|
1498
1802
|
item_id: UInt16Type
|
|
1499
1803
|
}
|
|
1500
|
-
export interface salt {
|
|
1501
|
-
salt: UInt64Type
|
|
1502
|
-
}
|
|
1503
1804
|
export interface setnftcfg {
|
|
1504
1805
|
item_id: UInt16Type
|
|
1505
1806
|
template_id: Int32Type
|
|
1506
1807
|
schema_name: NameType
|
|
1507
1808
|
}
|
|
1508
|
-
export interface
|
|
1809
|
+
export interface setthreshold {
|
|
1810
|
+
threshold: UInt8Type
|
|
1811
|
+
}
|
|
1812
|
+
export interface setwrapcost {
|
|
1813
|
+
item_type: UInt8Type
|
|
1814
|
+
tier: UInt8Type
|
|
1815
|
+
amount: UInt64Type
|
|
1816
|
+
}
|
|
1817
|
+
export interface setwrapfee {
|
|
1818
|
+
fee_pct: UInt16Type
|
|
1819
|
+
fee_account: NameType
|
|
1820
|
+
}
|
|
1821
|
+
export interface stowcargo {
|
|
1822
|
+
owner: NameType
|
|
1509
1823
|
entity_id: UInt64Type
|
|
1510
|
-
|
|
1824
|
+
nexus_id: UInt64Type
|
|
1825
|
+
cargo_id: UInt64Type
|
|
1511
1826
|
quantity: UInt64Type
|
|
1512
1827
|
}
|
|
1513
|
-
export interface
|
|
1828
|
+
export interface stowentity {
|
|
1829
|
+
owner: NameType
|
|
1514
1830
|
entity_id: UInt64Type
|
|
1515
|
-
|
|
1516
|
-
hull_stats: UInt64Type
|
|
1517
|
-
installed: Type.packed_module[]
|
|
1831
|
+
nexus_id: UInt64Type
|
|
1518
1832
|
}
|
|
1519
|
-
export interface
|
|
1833
|
+
export interface swapmodule {
|
|
1520
1834
|
entity_id: UInt64Type
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
stats: UInt64Type
|
|
1835
|
+
module_index: UInt8Type
|
|
1836
|
+
module_ref: Type.cargo_ref
|
|
1524
1837
|
}
|
|
1525
1838
|
export interface transfer {
|
|
1526
|
-
source_type: NameType
|
|
1527
1839
|
source_id: UInt64Type
|
|
1528
|
-
dest_type: NameType
|
|
1529
1840
|
dest_id: UInt64Type
|
|
1530
|
-
|
|
1531
|
-
stats: UInt64Type
|
|
1532
|
-
quantity: UInt32Type
|
|
1841
|
+
items: Type.cargo_item[]
|
|
1533
1842
|
}
|
|
1534
1843
|
export interface travel {
|
|
1535
|
-
entity_type: NameType
|
|
1536
1844
|
id: UInt64Type
|
|
1537
1845
|
x: Int64Type
|
|
1538
1846
|
y: Int64Type
|
|
1539
1847
|
recharge: boolean
|
|
1540
1848
|
}
|
|
1849
|
+
export interface undeploy {
|
|
1850
|
+
host_id: UInt64Type
|
|
1851
|
+
target_id: UInt64Type
|
|
1852
|
+
}
|
|
1541
1853
|
export interface warp {
|
|
1542
|
-
entity_type: NameType
|
|
1543
1854
|
id: UInt64Type
|
|
1544
1855
|
x: Int64Type
|
|
1545
1856
|
y: Int64Type
|
|
1546
1857
|
}
|
|
1547
1858
|
export interface wipe {}
|
|
1548
|
-
export interface wipesequence {}
|
|
1549
|
-
export interface wrap {
|
|
1550
|
-
owner: NameType
|
|
1551
|
-
entity_type: NameType
|
|
1552
|
-
entity_id: UInt64Type
|
|
1553
|
-
cargo_id: UInt64Type
|
|
1554
|
-
quantity: UInt64Type
|
|
1555
|
-
}
|
|
1556
1859
|
}
|
|
1557
1860
|
export interface ActionNameParams {
|
|
1558
1861
|
addmodule: ActionParams.addmodule
|
|
1559
1862
|
addnexus: ActionParams.addnexus
|
|
1560
|
-
|
|
1863
|
+
addoracle: ActionParams.addoracle
|
|
1561
1864
|
blend: ActionParams.blend
|
|
1865
|
+
buildplot: ActionParams.buildplot
|
|
1562
1866
|
cancel: ActionParams.cancel
|
|
1867
|
+
claimplot: ActionParams.claimplot
|
|
1563
1868
|
claimstarter: ActionParams.claimstarter
|
|
1564
1869
|
cleanrsvp: ActionParams.cleanrsvp
|
|
1565
1870
|
cleartable: ActionParams.cleartable
|
|
1566
1871
|
commit: ActionParams.commit
|
|
1567
1872
|
configlog: ActionParams.configlog
|
|
1568
1873
|
craft: ActionParams.craft
|
|
1569
|
-
|
|
1874
|
+
demolish: ActionParams.demolish
|
|
1570
1875
|
deploy: ActionParams.deploy
|
|
1571
1876
|
descentity: ActionParams.descentity
|
|
1572
1877
|
enable: ActionParams.enable
|
|
1878
|
+
fixcargomass: ActionParams.fixcargomass
|
|
1879
|
+
forcereveal: ActionParams.forcereveal
|
|
1573
1880
|
gather: ActionParams.gather
|
|
1881
|
+
genesisfleet: ActionParams.genesisfleet
|
|
1574
1882
|
getconfig: ActionParams.getconfig
|
|
1883
|
+
getdeposit: ActionParams.getdeposit
|
|
1884
|
+
geteligible: ActionParams.geteligible
|
|
1885
|
+
getentcls: ActionParams.getentcls
|
|
1575
1886
|
getentities: ActionParams.getentities
|
|
1576
1887
|
getentity: ActionParams.getentity
|
|
1577
1888
|
getitemdata: ActionParams.getitemdata
|
|
1578
1889
|
getitemids: ActionParams.getitemids
|
|
1579
1890
|
getitems: ActionParams.getitems
|
|
1891
|
+
getitemtype: ActionParams.getitemtype
|
|
1580
1892
|
getitemtypes: ActionParams.getitemtypes
|
|
1893
|
+
getkindmeta: ActionParams.getkindmeta
|
|
1581
1894
|
getlocation: ActionParams.getlocation
|
|
1582
1895
|
getlocdata: ActionParams.getlocdata
|
|
1583
1896
|
getmodtypes: ActionParams.getmodtypes
|
|
1584
1897
|
getmodules: ActionParams.getmodules
|
|
1585
1898
|
getnearby: ActionParams.getnearby
|
|
1899
|
+
getnftbase: ActionParams.getnftbase
|
|
1586
1900
|
getnftinfo: ActionParams.getnftinfo
|
|
1587
1901
|
getplayer: ActionParams.getplayer
|
|
1902
|
+
getprojstate: ActionParams.getprojstate
|
|
1588
1903
|
getrecipe: ActionParams.getrecipe
|
|
1589
1904
|
getrecipes: ActionParams.getrecipes
|
|
1590
1905
|
getrescats: ActionParams.getrescats
|
|
@@ -1596,46 +1911,70 @@ export interface ActionNameParams {
|
|
|
1596
1911
|
grouptravel: ActionParams.grouptravel
|
|
1597
1912
|
hash: ActionParams.hash
|
|
1598
1913
|
hash512: ActionParams.hash512
|
|
1599
|
-
|
|
1914
|
+
importcargo: ActionParams.importcargo
|
|
1915
|
+
importentity: ActionParams.importentity
|
|
1916
|
+
importgroup: ActionParams.importgroup
|
|
1917
|
+
importplayer: ActionParams.importplayer
|
|
1918
|
+
importreserve: ActionParams.importreserve
|
|
1919
|
+
importstate: ActionParams.importstate
|
|
1600
1920
|
join: ActionParams.join
|
|
1921
|
+
nftimgurl: ActionParams.nftimgurl
|
|
1601
1922
|
notify: ActionParams.notify
|
|
1923
|
+
placecargo: ActionParams.placecargo
|
|
1924
|
+
placeentity: ActionParams.placeentity
|
|
1602
1925
|
recharge: ActionParams.recharge
|
|
1926
|
+
refrshentity: ActionParams.refrshentity
|
|
1927
|
+
removeoracle: ActionParams.removeoracle
|
|
1928
|
+
rename: ActionParams.rename
|
|
1603
1929
|
resolve: ActionParams.resolve
|
|
1930
|
+
retarget: ActionParams.retarget
|
|
1931
|
+
reveal: ActionParams.reveal
|
|
1604
1932
|
rmmodule: ActionParams.rmmodule
|
|
1605
1933
|
rmnftcfg: ActionParams.rmnftcfg
|
|
1606
|
-
salt: ActionParams.salt
|
|
1607
1934
|
setnftcfg: ActionParams.setnftcfg
|
|
1608
|
-
|
|
1609
|
-
|
|
1610
|
-
|
|
1935
|
+
setthreshold: ActionParams.setthreshold
|
|
1936
|
+
setwrapcost: ActionParams.setwrapcost
|
|
1937
|
+
setwrapfee: ActionParams.setwrapfee
|
|
1938
|
+
stowcargo: ActionParams.stowcargo
|
|
1939
|
+
stowentity: ActionParams.stowentity
|
|
1940
|
+
swapmodule: ActionParams.swapmodule
|
|
1611
1941
|
transfer: ActionParams.transfer
|
|
1612
1942
|
travel: ActionParams.travel
|
|
1943
|
+
undeploy: ActionParams.undeploy
|
|
1613
1944
|
warp: ActionParams.warp
|
|
1614
1945
|
wipe: ActionParams.wipe
|
|
1615
|
-
wipesequence: ActionParams.wipesequence
|
|
1616
|
-
wrap: ActionParams.wrap
|
|
1617
1946
|
}
|
|
1618
1947
|
export type ActionNames = keyof ActionNameParams
|
|
1619
1948
|
export interface ActionReturnValues {
|
|
1949
|
+
buildplot: Types.task_results
|
|
1620
1950
|
cancel: Types.cancel_results
|
|
1951
|
+
claimplot: Types.task_results
|
|
1621
1952
|
craft: Types.task_results
|
|
1953
|
+
demolish: Types.task_results
|
|
1622
1954
|
deploy: Types.task_results
|
|
1623
1955
|
descentity: string
|
|
1624
1956
|
gather: Types.task_results
|
|
1625
1957
|
getconfig: Types.game_config
|
|
1958
|
+
getdeposit: ExtendedAsset
|
|
1959
|
+
geteligible: UInt16[]
|
|
1960
|
+
getentcls: Types.enum_result
|
|
1626
1961
|
getentities: Types.entity_info[]
|
|
1627
1962
|
getentity: Types.entity_info
|
|
1628
1963
|
getitemdata: Types.itemdata_result
|
|
1629
1964
|
getitemids: Types.item_ids_result
|
|
1630
1965
|
getitems: Types.items_info
|
|
1966
|
+
getitemtype: UInt8
|
|
1631
1967
|
getitemtypes: Types.enum_result
|
|
1968
|
+
getkindmeta: Types.kind_meta_result
|
|
1632
1969
|
getlocation: Types.location_info
|
|
1633
1970
|
getlocdata: Types.location_derived
|
|
1634
1971
|
getmodtypes: Types.enum_result
|
|
1635
1972
|
getmodules: Types.modules_result
|
|
1636
1973
|
getnearby: Types.nearby_info
|
|
1974
|
+
getnftbase: string[]
|
|
1637
1975
|
getnftinfo: Types.nftinfo_result
|
|
1638
1976
|
getplayer: Types.player_info
|
|
1977
|
+
getprojstate: Types.projected_state
|
|
1639
1978
|
getrecipe: Types.recipes_result
|
|
1640
1979
|
getrecipes: Types.recipes_result
|
|
1641
1980
|
getrescats: Types.enum_result
|
|
@@ -1647,12 +1986,18 @@ export interface ActionReturnValues {
|
|
|
1647
1986
|
grouptravel: Types.task_results
|
|
1648
1987
|
hash: Checksum256
|
|
1649
1988
|
hash512: Checksum512
|
|
1989
|
+
nftimgurl: string
|
|
1990
|
+
placecargo: Types.task_results
|
|
1991
|
+
placeentity: Types.task_results
|
|
1650
1992
|
recharge: Types.task_results
|
|
1651
1993
|
resolve: Types.resolve_results
|
|
1994
|
+
retarget: Types.task_results
|
|
1995
|
+
stowcargo: Types.task_results
|
|
1996
|
+
stowentity: Types.task_results
|
|
1652
1997
|
transfer: Types.task_results
|
|
1653
1998
|
travel: Types.task_results
|
|
1999
|
+
undeploy: Types.task_results
|
|
1654
2000
|
warp: Types.task_results
|
|
1655
|
-
wrap: Types.task_results
|
|
1656
2001
|
}
|
|
1657
2002
|
export type ActionReturnNames = keyof ActionReturnValues
|
|
1658
2003
|
export class Contract extends BaseContract {
|
|
@@ -1660,7 +2005,7 @@ export class Contract extends BaseContract {
|
|
|
1660
2005
|
super({
|
|
1661
2006
|
client: args.client,
|
|
1662
2007
|
abi: abi,
|
|
1663
|
-
account: args.account || Name.from('shipload
|
|
2008
|
+
account: args.account || Name.from('eon.shipload'),
|
|
1664
2009
|
})
|
|
1665
2010
|
}
|
|
1666
2011
|
action<T extends ActionNames>(
|