@shipload/sdk 1.0.0-next.42 → 1.0.0-next.44
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 +222 -172
- package/lib/shipload.js +658 -421
- package/lib/shipload.js.map +1 -1
- package/lib/shipload.m.js +644 -423
- package/lib/shipload.m.js.map +1 -1
- package/lib/testing.d.ts +50 -67
- package/lib/testing.js +168 -208
- package/lib/testing.js.map +1 -1
- package/lib/testing.m.js +169 -209
- package/lib/testing.m.js.map +1 -1
- package/package.json +1 -1
- package/src/contracts/server.ts +126 -214
- package/src/data/capabilities.ts +22 -14
- package/src/data/capability-formulas.ts +7 -7
- package/src/data/entities.json +4 -0
- package/src/data/item-ids.ts +1 -0
- package/src/data/items.json +6 -0
- package/src/data/kind-registry.json +18 -6
- package/src/data/kind-registry.ts +7 -0
- package/src/data/metadata.ts +22 -15
- package/src/data/recipes.json +147 -138
- package/src/derivation/build-methods.test.ts +13 -0
- package/src/derivation/build-methods.ts +5 -2
- package/src/derivation/capabilities.ts +8 -8
- package/src/derivation/capability-mappings.ts +49 -4
- package/src/index-module.ts +21 -1
- package/src/managers/actions.ts +42 -8
- package/src/managers/cluster.test.ts +39 -0
- package/src/managers/cluster.ts +53 -0
- package/src/managers/context.ts +9 -0
- package/src/managers/index.ts +2 -0
- package/src/nft/buildImmutableData.ts +15 -17
- package/src/nft/description.ts +8 -8
- package/src/resolution/describe-module.ts +6 -6
- package/src/resolution/resolve-item.ts +3 -3
- package/src/scheduling/unwrap.test.ts +60 -0
- package/src/scheduling/unwrap.ts +187 -0
- package/src/shipload.ts +5 -0
- package/src/subscriptions/manager.cluster.test.ts +46 -0
- package/src/subscriptions/manager.ts +22 -0
- package/src/subscriptions/types.ts +16 -0
- package/src/types.ts +7 -0
package/lib/shipload.js
CHANGED
|
@@ -448,7 +448,7 @@ var platform = /*#__PURE__*/Object.freeze({
|
|
|
448
448
|
Contract: Contract$1
|
|
449
449
|
});
|
|
450
450
|
|
|
451
|
-
const abiBlob = antelope.Blob.from('DmVvc2lvOjphYmkvMS4yAhVCX3ZlY3Rvcl9lbnRpdHlfcmVmX0UMZW50aXR5X3JlZltdDWxvY2F0aW9uX3R5cGUFdWludDi0AQlhZGRtb2R1bGUABAllbnRpdHlfaWQGdWludDY0DG1vZHVsZV9pbmRleAV1aW50OAptb2R1bGVfcmVmCWNhcmdvX3JlZgp0YXJnZXRfcmVmCmNhcmdvX3JlZj8IYWRkbmV4dXMAAwpuZXh1c19uYW1lBnN0cmluZwF4BWludDY0AXkFaW50NjQJYWRkb3JhY2xlAAEJb3JhY2xlX2lkBG5hbWUFYmxlbmQAAgJpZAZ1aW50NjQGaW5wdXRzDGNhcmdvX2l0ZW1bXQlidWlsZHBsb3QAAgpidWlsZGVyX2lkBnVpbnQ2NAdwbG90X2lkBnVpbnQ2NAZjYW5jZWwAAwJpZAZ1aW50NjQIbGFuZV9rZXkFdWludDgFY291bnQGdWludDY0DmNhbmNlbF9yZXN1bHRzAAYJZW50aXR5X2lkBnVpbnQ2NAtlbnRpdHlfdHlwZQRuYW1lD2NhbmNlbGxlZF9jb3VudAV1aW50OBBzY2hlZHVsZV9zdGFydGVkC3RpbWVfcG9pbnQ/C2VudGl0eWdyb3VwB3VpbnQ2ND8NZ3JvdXBfbWVtYmVycxZCX3ZlY3Rvcl9lbnRpdHlfcmVmX0U/CmNhcmdvX2l0ZW0ABQdpdGVtX2lkBnVpbnQxNgVzdGF0cwZ1aW50NjQHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQhxdWFudGl0eQZ1aW50MzIJZW50aXR5X2lkB3VpbnQ2ND8JY2FyZ29fcmVmAAQHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0B21vZHVsZXMObW9kdWxlX2VudHJ5W10JZW50aXR5X2lkB3VpbnQ2ND8JY2FyZ29fcm93AAcCaWQGdWludDY0CWVudGl0eV9pZAZ1aW50NjQHaXRlbV9pZAZ1aW50NjQIcXVhbnRpdHkGdWludDY0BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdC3NlcXVlbmNlX2lkB3VpbnQ2ND8KY2FyZ29fdmlldwAGB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCHF1YW50aXR5BnVpbnQzMgJpZAZ1aW50NjQJZW50aXR5X2lkB3VpbnQ2ND8JY2xhaW1fcm93AAEFb3duZXIEbmFtZQljbGFpbXBsb3QAAwpidWlsZGVyX2lkBnVpbnQ2NA50YXJnZXRfaXRlbV9pZAZ1aW50MTYGY29vcmRzC2Nvb3JkaW5hdGVzDGNsYWltc3RhcnRlcgABBW93bmVyBG5hbWUJY2xlYW5yc3ZwAAIFZXBvY2gGdWludDY0CG1heF9yb3dzBnVpbnQ2NApjbGVhcnRhYmxlAAMKdGFibGVfbmFtZQRuYW1lBXNjb3BlBW5hbWU/CG1heF9yb3dzB3VpbnQ2ND8GY29tbWl0AAMJb3JhY2xlX2lkBG5hbWUFZXBvY2gGdWludDY0BmNvbW1pdAtjaGVja3N1bTI1Ngpjb21taXRfcm93AAQCaWQGdWludDY0BWVwb2NoBnVpbnQ2NAlvcmFjbGVfaWQEbmFtZQZjb21taXQLY2hlY2tzdW0yNTYJY29uZmlnbG9nAAEGY29uZmlnC2dhbWVfY29uZmlnC2Nvb3JkaW5hdGVzAAMBeAVpbnQ2NAF5BWludDY0AXoHdWludDE2PwVjcmFmdAAGAmlkBnVpbnQ2NAlyZWNpcGVfaWQGdWludDE2CHF1YW50aXR5BnVpbnQzMgZpbnB1dHMMY2FyZ29faXRlbVtdBnRhcmdldAd1aW50NjQ/BHNsb3QGdWludDg/DGNyYWZ0ZXJfbGFuZQAECnNsb3RfaW5kZXgFdWludDgFc3BlZWQGdWludDE2BWRyYWluBnVpbnQzMgpvdXRwdXRfcGN0BnVpbnQxNghkZW1vbGlzaAABCWVudGl0eV9pZAZ1aW50NjQGZGVwbG95AAICaWQGdWludDY0A3JlZgljYXJnb19yZWYKZGVzY2VudGl0eQAEB2l0ZW1faWQGdWludDE2Cmh1bGxfc3RhdHMGdWludDY0DG1vZHVsZV9pdGVtcwh1aW50MTZbXQxtb2R1bGVfc3RhdHMIdWludDY0W10GZW5hYmxlAAEHZW5hYmxlZARib29sDGVuZXJneV9zdGF0cwACCGNhcGFjaXR5BnVpbnQzMghyZWNoYXJnZQZ1aW50MzIUZW50aXR5X2N1cnJlbnRfc3RhdGUAAgtjb29yZGluYXRlcwtjb29yZGluYXRlcwZlbmVyZ3kGdWludDMyD2VudGl0eV9kZWZhdWx0cwACC3dhcmVob3VzZV96BnVpbnQxNgtjb250YWluZXJfegZ1aW50MTYLZW50aXR5X2luZm8AFgR0eXBlBG5hbWUCaWQGdWludDY0BW93bmVyBG5hbWULZW50aXR5X25hbWUGc3RyaW5nC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzB2l0ZW1faWQGdWludDE2CWNhcmdvbWFzcwZ1aW50MzIFY2FyZ28MY2FyZ29fdmlld1tdB21vZHVsZXMObW9kdWxlX2VudHJ5W10GZW5lcmd5B3VpbnQzMj8IaHVsbG1hc3MHdWludDMyPwhjYXBhY2l0eQd1aW50MzI/B2VuZ2luZXMPbW92ZW1lbnRfc3RhdHM/BHdhcnALd2FycF9zdGF0cz8JZ2VuZXJhdG9yDWVuZXJneV9zdGF0cz8GaGF1bGVyDWhhdWxlcl9zdGF0cz8OZ2F0aGVyZXJfbGFuZXMPZ2F0aGVyZXJfbGFuZVtdDWNyYWZ0ZXJfbGFuZXMOY3JhZnRlcl9sYW5lW10MbG9hZGVyX2xhbmVzDWxvYWRlcl9sYW5lW10IbGF1bmNoZXIPbGF1bmNoZXJfc3RhdHM/BWxhbmVzBmxhbmVbXQVob2xkcwZob2xkW10NZW50aXR5X2xheW91dAACDmVudGl0eV9pdGVtX2lkBnVpbnQxNgVzbG90cwpzbG90X2RlZltdFWVudGl0eV9sYXlvdXRzX3Jlc3VsdAABCGVudGl0aWVzD2VudGl0eV9sYXlvdXRbXQplbnRpdHlfcmVmAAILZW50aXR5X3R5cGUEbmFtZQllbnRpdHlfaWQGdWludDY0CmVudGl0eV9yb3cADAJpZAZ1aW50NjQFb3duZXIEbmFtZQRraW5kBG5hbWUHaXRlbV9pZAZ1aW50MTYEbmFtZQZzdHJpbmcFc3RhdHMGdWludDY0C2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzBmVuZXJneQd1aW50MzI/CWNhcmdvbWFzcwZ1aW50MzIHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQVsYW5lcwZsYW5lW10FaG9sZHMGaG9sZFtdDmVudGl0eV9zZXFfcm93AAEHbmV4dF9pZAZ1aW50NjQOZW50aXR5X3N1bW1hcnkACAR0eXBlBG5hbWUCaWQGdWludDY0BW93bmVyBG5hbWULZW50aXR5X25hbWUGc3RyaW5nC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzB2lzX2lkbGUEYm9vbA5yZXNvbHZlZF9jb3VudAZ1aW50MzINcGVuZGluZ19jb3VudAZ1aW50MzIQZW50aXR5X3Rhc2tfaW5mbwAECWVudGl0eV9pZAZ1aW50NjQLZW50aXR5X3R5cGUEbmFtZQp0YXNrX2NvdW50BXVpbnQ4EHNjaGVkdWxlX3N0YXJ0ZWQKdGltZV9wb2ludA9lbnRpdHlncm91cF9yb3cAAgJpZAZ1aW50NjQMcGFydGljaXBhbnRzDGVudGl0eV9yZWZbXQtlbnVtX21lbWJlcgACBXZhbHVlBXVpbnQ4BG5hbWUGc3RyaW5nC2VudW1fcmVzdWx0AAEHbWVtYmVycw1lbnVtX21lbWJlcltdCWVwb2NoX3JvdwAEBWVwb2NoBnVpbnQ2NApvcmFjbGVfaWRzBm5hbWVbXQl0aHJlc2hvbGQFdWludDgEc2VlZAtjaGVja3N1bTI1NgxmaXhjYXJnb21hc3MAAQllbnRpdHlfaWQGdWludDY0C2ZvcmNlcmV2ZWFsAAEFZXBvY2gGdWludDY0C2dhbWVfY29uZmlnAAMHdmVyc2lvbgZ1aW50MzIIZGVmYXVsdHMPZW50aXR5X2RlZmF1bHRzBWl0ZW1zCml0ZW1fZGVmW10GZ2F0aGVyAAUJc291cmNlX2lkBnVpbnQ2NA5kZXN0aW5hdGlvbl9pZAZ1aW50NjQHc3RyYXR1bQZ1aW50MTYIcXVhbnRpdHkGdWludDMyBHNsb3QGdWludDg/DWdhdGhlcmVyX2xhbmUABQpzbG90X2luZGV4BXVpbnQ4BXlpZWxkBnVpbnQxNgVkcmFpbgZ1aW50MzIFZGVwdGgGdWludDE2Cm91dHB1dF9wY3QGdWludDE2DGdlbmVzaXNmbGVldAABCGVudGl0aWVzDGVudGl0eV9yb3dbXQlnZXRjb25maWcAAApnZXRkZXBvc2l0AAIFb3duZXIEbmFtZQhhc3NldF9pZAZ1aW50NjQLZ2V0ZGlzdGFuY2UABAJheAVpbnQ2NAJheQVpbnQ2NAJieAVpbnQ2NAJieQVpbnQ2NAtnZXRlbGlnaWJsZQACBmNvb3Jkcwtjb29yZGluYXRlcwdzdHJhdHVtBnVpbnQxNglnZXRlbnRjbHMAAAtnZXRlbnRpdGllcwACBW93bmVyBG5hbWULZW50aXR5X3R5cGUFbmFtZT8JZ2V0ZW50aXR5AAEJZW50aXR5X2lkBnVpbnQ2NAtnZXRpdGVtZGF0YQAACmdldGl0ZW1pZHMAAAhnZXRpdGVtcwAAC2dldGl0ZW10eXBlAAEHaXRlbV9pZAZ1aW50MTYMZ2V0aXRlbXR5cGVzAAALZ2V0a2luZG1ldGEAAAtnZXRsb2NhdGlvbgACAXgFaW50NjQBeQVpbnQ2NApnZXRsb2NkYXRhAAIBeAVpbnQ2NAF5BWludDY0C2dldG1vZHR5cGVzAAAKZ2V0bW9kdWxlcwAACWdldG5lYXJieQACCWVudGl0eV9pZAZ1aW50NjQIcmVjaGFyZ2UEYm9vbApnZXRuZnRiYXNlAAAKZ2V0bmZ0aW5mbwAACWdldHBsYXllcgABB2FjY291bnQEbmFtZQxnZXRwcm9qc3RhdGUAAgllbnRpdHlfaWQGdWludDY0CnRhc2tfY291bnQGdWludDg/CWdldHJlY2lwZQABDm91dHB1dF9pdGVtX2lkBnVpbnQxNgpnZXRyZWNpcGVzAAILbG93ZXJfYm91bmQGdWludDE2BWxpbWl0BXVpbnQ4CmdldHJlc2NhdHMAAAtnZXRyZXNlcnZlcwACAXgFaW50NjQBeQVpbnQ2NAxnZXRyZXNvdXJjZXMAAAhnZXRzbG90cwAACmdldHN0cmF0dW0AAwF4BWludDY0AXkFaW50NjQHc3RyYXR1bQZ1aW50MTYMZ2V0c3VtbWFyaWVzAAIFb3duZXIEbmFtZQtlbnRpdHlfdHlwZQVuYW1lPwtnZXR3b3JtaG9sZQACAXgFaW50NjQBeQVpbnQ2NAxncm91cHRyYW5zaXQABQhlbnRpdGllcwxlbnRpdHlfcmVmW10CYXgFaW50NjQCYXkFaW50NjQCYngFaW50NjQCYnkFaW50NjQLZ3JvdXB0cmF2ZWwABAhlbnRpdGllcwxlbnRpdHlfcmVmW10BeAVpbnQ2NAF5BWludDY0CHJlY2hhcmdlBGJvb2wEaGFzaAABBXZhbHVlBnN0cmluZwdoYXNoNTEyAAEFdmFsdWUGc3RyaW5nDGhhdWxlcl9zdGF0cwADCGNhcGFjaXR5BXVpbnQ4CmVmZmljaWVuY3kGdWludDE2BWRyYWluBnVpbnQzMgRob2xkAAUCaWQGdWludDY0BGtpbmQFdWludDgLY291bnRlcnBhcnQKZW50aXR5X3JlZgV1bnRpbAp0aW1lX3BvaW50DWluY29taW5nX21hc3MGdWludDMyC2ltcG9ydGNhcmdvAAEDcm93CWNhcmdvX3JvdwxpbXBvcnRlbnRpdHkAAQNyb3cKZW50aXR5X3JvdwtpbXBvcnRncm91cAABA3Jvdw9lbnRpdHlncm91cF9yb3cMaW1wb3J0cGxheWVyAAEFb3duZXIEbmFtZQ1pbXBvcnRyZXNlcnZlAAILZXBvY2hfc2NvcGUGdWludDMyA3JvdwtyZXNlcnZlX3JvdwtpbXBvcnRzdGF0ZQABA3JvdwlzdGF0ZV9yb3cIaXRlbV9kZWYABQJpZAZ1aW50MTYEbWFzcwZ1aW50MzIEdHlwZQV1aW50OAdzdWJ0eXBlBXVpbnQ4BHRpZXIFdWludDgMaXRlbV9pZF9wYWlyAAICaWQGdWludDE2BG5hbWUGc3RyaW5nD2l0ZW1faWRzX3Jlc3VsdAABBWl0ZW1zDml0ZW1faWRfcGFpcltdD2l0ZW1kYXRhX3Jlc3VsdAACBWl0ZW1zCml0ZW1fZGVmW10HcmVjaXBlcw5yZWNpcGVzX3Jlc3VsdAppdGVtc19pbmZvAAEFaXRlbXMKaXRlbV9kZWZbXQRqb2luAAEHYWNjb3VudARuYW1lEGtpbmRfbWV0YV9yZXN1bHQAAgVraW5kcw9raW5kX21ldGFfcm93W10JdGVtcGxhdGVzE3RlbXBsYXRlX21ldGFfcm93W10Na2luZF9tZXRhX3JvdwAFBGtpbmQEbmFtZQ5jbGFzc2lmaWNhdGlvbgV1aW50OBBjYXBhYmlsaXR5X2ZsYWdzBXVpbnQ4B3pfY29vcmQGdWludDMyDWRlZmF1bHRfbGFiZWwGc3RyaW5nBGxhbmUAAghsYW5lX2tleQV1aW50OAhzY2hlZHVsZQhzY2hlZHVsZQZsYXVuY2gAAwtsYXVuY2hlcl9pZAZ1aW50NjQKY2F0Y2hlcl9pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdDmxhdW5jaGVyX3N0YXRzAAMLY2hhcmdlX3JhdGUGdWludDE2CHZlbG9jaXR5BnVpbnQxNgVkcmFpbgZ1aW50MTYEbG9hZAADAmlkBnVpbnQ2NAdmcm9tX2lkBnVpbnQ2NAVpdGVtcwxjYXJnb19pdGVtW10LbG9hZGVyX2xhbmUABApzbG90X2luZGV4BXVpbnQ4BG1hc3MGdWludDMyBnRocnVzdAZ1aW50MTYKb3V0cHV0X3BjdAZ1aW50MTYQbG9jYXRpb25fZGVyaXZlZAACDHN0YXRpY19wcm9wcw9sb2NhdGlvbl9zdGF0aWMEc2l6ZQZ1aW50MTYNbG9jYXRpb25faW5mbwADBmNvb3Jkcwtjb29yZGluYXRlcwlpc19zeXN0ZW0EYm9vbAtpc193b3JtaG9sZQRib29sD2xvY2F0aW9uX3N0YXRpYwAFBmNvb3Jkcwtjb29yZGluYXRlcwR0eXBlDWxvY2F0aW9uX3R5cGUHc3VidHlwZQV1aW50OAVzZWVkMAV1aW50OAVzZWVkMQV1aW50OAxtb2R1bGVfZW50cnkAAgR0eXBlBXVpbnQ4CWluc3RhbGxlZA5wYWNrZWRfbW9kdWxlPwttb2R1bGVfaW5mbwAEAmlkBnVpbnQxNgRtYXNzBnVpbnQzMgttb2R1bGVfdHlwZQV1aW50OAR0aWVyBXVpbnQ4Dm1vZHVsZXNfcmVzdWx0AAEHbW9kdWxlcw1tb2R1bGVfaW5mb1tdDm1vdmVtZW50X3N0YXRzAAIGdGhydXN0BnVpbnQzMgVkcmFpbgZ1aW50MzILbmVhcmJ5X2luZm8ABQpjYW5fdHJhdmVsBGJvb2wHY3VycmVudBRlbnRpdHlfY3VycmVudF9zdGF0ZQlwcm9qZWN0ZWQUZW50aXR5X2N1cnJlbnRfc3RhdGUKbWF4X2VuZXJneQZ1aW50MzIHc3lzdGVtcw9uZWFyYnlfc3lzdGVtW10NbmVhcmJ5X3N5c3RlbQAECGRpc3RhbmNlBnVpbnQ2NAtlbmVyZ3lfY29zdAZ1aW50NjQLZmxpZ2h0X3RpbWUGdWludDMyCGxvY2F0aW9uDWxvY2F0aW9uX2luZm8ObmZ0X2NhcmdvX2l0ZW0ABAdpdGVtX2lkBnVpbnQxNgVzdGF0cwZ1aW50NjQHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQhxdWFudGl0eQZ1aW50MzIQbmZ0X2l0ZW1fcGF5bG9hZAACBGl0ZW0ObmZ0X2NhcmdvX2l0ZW0IbG9jYXRpb24MY29vcmRpbmF0ZXM/Dm5mdF9zY2hlbWFfZGVmAAILc2NoZW1hX25hbWUEbmFtZQZmaWVsZHMOc2NoZW1hX2ZpZWxkW10QbmZ0X3RlbXBsYXRlX2RlZgADB2l0ZW1faWQGdWludDE2C3NjaGVtYV9uYW1lBG5hbWULdGVtcGxhdGVfaWQFaW50MzINbmZ0Y29uZmlnX3JvdwADB2l0ZW1faWQGdWludDE2C3RlbXBsYXRlX2lkBWludDMyC3NjaGVtYV9uYW1lBG5hbWUJbmZ0aW1ndXJsAAIEaXRlbQpjYXJnb19pdGVtCGxvY2F0aW9uDGNvb3JkaW5hdGVzPw5uZnRpbmZvX3Jlc3VsdAACB3NjaGVtYXMQbmZ0X3NjaGVtYV9kZWZbXQl0ZW1wbGF0ZXMSbmZ0X3RlbXBsYXRlX2RlZltdBm5vdGlmeQABBWV2ZW50CnRhc2tfZXZlbnQRb3JhY2xlX2NvbmZpZ19yb3cAAQl0aHJlc2hvbGQFdWludDgKb3JhY2xlX3JvdwABAmlkBG5hbWUNcGFja2VkX21vZHVsZQACB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NApwbGFjZWNhcmdvAAMFb3duZXIEbmFtZQdob3N0X2lkBnVpbnQ2NAhhc3NldF9pZAZ1aW50NjQLcGxhY2VlbnRpdHkAAwVvd25lcgRuYW1lCGFzc2V0X2lkBnVpbnQ2NA90YXJnZXRfbmV4dXNfaWQGdWludDY0C3BsYXllcl9pbmZvAAMFb3duZXIEbmFtZQlpc19wbGF5ZXIEYm9vbAxjb21wYW55X25hbWUGc3RyaW5nCnBsYXllcl9yb3cAAQVvd25lcgRuYW1lD3Byb2plY3RlZF9zdGF0ZQAPBW93bmVyBG5hbWULY29vcmRpbmF0ZXMLY29vcmRpbmF0ZXMGZW5lcmd5B3VpbnQzMj8JY2FyZ29tYXNzBnVpbnQzMgVjYXJnbwxjYXJnb192aWV3W10IaHVsbG1hc3MHdWludDMyPwhjYXBhY2l0eQd1aW50MzI/B2VuZ2luZXMPbW92ZW1lbnRfc3RhdHM/BHdhcnALd2FycF9zdGF0cz8JZ2VuZXJhdG9yDWVuZXJneV9zdGF0cz8GaGF1bGVyDWhhdWxlcl9zdGF0cz8OZ2F0aGVyZXJfbGFuZXMPZ2F0aGVyZXJfbGFuZVtdDWNyYWZ0ZXJfbGFuZXMOY3JhZnRlcl9sYW5lW10MbG9hZGVyX2xhbmVzDWxvYWRlcl9sYW5lW10IbGF1bmNoZXIPbGF1bmNoZXJfc3RhdHM/CHJlY2hhcmdlAAECaWQGdWludDY0DHJlY2lwZV9pbnB1dAACB2l0ZW1faWQGdWludDE2CHF1YW50aXR5BnVpbnQzMhByZWNpcGVfaXRlbV9pbmZvAAICaWQGdWludDE2BG1hc3MGdWludDMyD3JlY2lwZV9yZXNwb25zZQAHDm91dHB1dF9pdGVtX2lkBnVpbnQxNgtvdXRwdXRfbWFzcwZ1aW50MzIGaW5wdXRzDnJlY2lwZV9pbnB1dFtdCnN0YXRfc2xvdHMUc3RhdF9zbG90X3Jlc3BvbnNlW10NYmxlbmRfd2VpZ2h0cwVieXRlcwtvdXRwdXRfaXRlbRByZWNpcGVfaXRlbV9pbmZvC2lucHV0X2l0ZW1zEnJlY2lwZV9pdGVtX2luZm9bXQ5yZWNpcGVzX3Jlc3VsdAABB3JlY2lwZXMRcmVjaXBlX3Jlc3BvbnNlW10McmVmcnNoZW50aXR5AAEJZW50aXR5X2lkBnVpbnQ2NAxyZW1vdmVvcmFjbGUAAQlvcmFjbGVfaWQEbmFtZQZyZW5hbWUAAgJpZAZ1aW50NjQEbmFtZQZzdHJpbmcLcmVzZXJ2ZV9yb3cABQJpZAZ1aW50NjQIY29vcmRfaWQGdWludDY0B3N0cmF0dW0GdWludDE2CXJlbWFpbmluZwZ1aW50MzIKbGFzdF9ibG9jaxRibG9ja190aW1lc3RhbXBfdHlwZQdyZXNvbHZlAAICaWQGdWludDY0BWNvdW50B3VpbnQ2ND8PcmVzb2x2ZV9yZXN1bHRzAAYJZW50aXR5X2lkBnVpbnQ2NAtlbnRpdHlfdHlwZQRuYW1lDnJlc29sdmVkX2NvdW50BXVpbnQ4FG5ld19zY2hlZHVsZV9zdGFydGVkC3RpbWVfcG9pbnQ/C2VudGl0eWdyb3VwB3VpbnQ2ND8NZ3JvdXBfbWVtYmVycxZCX3ZlY3Rvcl9lbnRpdHlfcmVmX0U/CnJlc29sdmVhbGwAAQVvd25lcgRuYW1lEnJlc29sdmVhbGxfcmVzdWx0cwACB3NjYW5uZWQGdWludDMyCHJlc29sdmVkBnVpbnQzMg1yZXNvdXJjZV9pbmZvAAQCaWQGdWludDE2BG1hc3MGdWludDMyCGNhdGVnb3J5BXVpbnQ4BHRpZXIFdWludDgOcmVzb3VyY2Vfc3RhdHMAAwVzdGF0MQZ1aW50MTYFc3RhdDIGdWludDE2BXN0YXQzBnVpbnQxNhByZXNvdXJjZXNfcmVzdWx0AAEJcmVzb3VyY2VzD3Jlc291cmNlX2luZm9bXQZyZXZlYWwAAwlvcmFjbGVfaWQEbmFtZQVlcG9jaAZ1aW50NjQGcmV2ZWFsC2NoZWNrc3VtMjU2CnJldmVhbF9yb3cABAJpZAZ1aW50NjQFZXBvY2gGdWludDY0CW9yYWNsZV9pZARuYW1lBnJldmVhbAtjaGVja3N1bTI1NghybW1vZHVsZQADCWVudGl0eV9pZAZ1aW50NjQMbW9kdWxlX2luZGV4BXVpbnQ4CnRhcmdldF9yZWYKY2FyZ29fcmVmPwhybW5mdGNmZwABB2l0ZW1faWQGdWludDE2CHNjaGVkdWxlAAIHc3RhcnRlZAp0aW1lX3BvaW50BXRhc2tzBnRhc2tbXQxzY2hlbWFfZmllbGQAAgRuYW1lBnN0cmluZwpmaWVsZF90eXBlBnN0cmluZwlzZXRjb29yZHMAAwllbnRpdHlfaWQGdWludDY0AXgFaW50NjQBeQVpbnQ2NAlzZXRuZnRjZmcAAwdpdGVtX2lkBnVpbnQxNgt0ZW1wbGF0ZV9pZAVpbnQzMgtzY2hlbWFfbmFtZQRuYW1lDHNldHRocmVzaG9sZAABCXRocmVzaG9sZAV1aW50OAtzZXR3cmFwY29zdAADCWl0ZW1fdHlwZQV1aW50OAR0aWVyBXVpbnQ4BmFtb3VudAZ1aW50NjQKc2V0d3JhcGZlZQACB2ZlZV9wY3QGdWludDE2C2ZlZV9hY2NvdW50BG5hbWUIc2xvdF9kZWYAAgR0eXBlBXVpbnQ4Cm91dHB1dF9wY3QGdWludDE2EnN0YXRfc2xvdF9yZXNwb25zZQABB3NvdXJjZXMNc3RhdF9zb3VyY2VbXQtzdGF0X3NvdXJjZQACC2lucHV0X2luZGV4BXVpbnQ4EGlucHV0X3N0YXRfaW5kZXgFdWludDgJc3RhdGVfcm93AAMHZW5hYmxlZARib29sBWVwb2NoBnVpbnQzMgRzZWVkC2NoZWNrc3VtMjU2CXN0b3djYXJnbwAFBW93bmVyBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAhuZXh1c19pZAZ1aW50NjQIY2FyZ29faWQGdWludDY0CHF1YW50aXR5BnVpbnQ2NApzdG93ZW50aXR5AAMFb3duZXIEbmFtZQllbnRpdHlfaWQGdWludDY0CG5leHVzX2lkBnVpbnQ2NAxzdHJhdHVtX2RhdGEAAgdzdHJhdHVtDHN0cmF0dW1faW5mbwVzdGF0cw5yZXNvdXJjZV9zdGF0cwxzdHJhdHVtX2luZm8ABQdpdGVtX2lkBnVpbnQxNgRzZWVkBnVpbnQ2NAhyaWNobmVzcwZ1aW50MTYHcmVzZXJ2ZQZ1aW50MzILcmVzZXJ2ZV9tYXgGdWludDMyEXN0cmF0dW1fcmVtYWluaW5nAAMHc3RyYXR1bQZ1aW50MTYJcmVtYWluaW5nBnVpbnQzMgpsYXN0X2Jsb2NrFGJsb2NrX3RpbWVzdGFtcF90eXBlCnN3YXBtb2R1bGUAAwllbnRpdHlfaWQGdWludDY0DG1vZHVsZV9pbmRleAV1aW50OAptb2R1bGVfcmVmCWNhcmdvX3JlZgR0YXNrAAkEdHlwZQV1aW50OAhkdXJhdGlvbgZ1aW50MzIKY2FuY2VsYWJsZQV1aW50OAtjb29yZGluYXRlcwxjb29yZGluYXRlcz8FY2FyZ28MY2FyZ29faXRlbVtdDGVudGl0eXRhcmdldAtlbnRpdHlfcmVmPwtlbnRpdHlncm91cAd1aW50NjQ/C2VuZXJneV9jb3N0B3VpbnQzMj8EaG9sZAd1aW50NjQ/CnRhc2tfZXZlbnQACgpldmVudF90eXBlBXVpbnQ4BW93bmVyBG5hbWULZW50aXR5X3R5cGUEbmFtZQllbnRpdHlfaWQGdWludDY0CnRhc2tfaW5kZXgFdWludDgEdGFzawR0YXNrCXN0YXJ0c19hdAp0aW1lX3BvaW50DGNvbXBsZXRlc19hdAp0aW1lX3BvaW50Cm5ld19lbmVyZ3kHdWludDMyPwhsYW5lX2tleQV1aW50OAx0YXNrX3Jlc3VsdHMAAQhlbnRpdGllcxJlbnRpdHlfdGFza19pbmZvW10RdGVtcGxhdGVfbWV0YV9yb3cAAwdpdGVtX2lkBnVpbnQxNgRraW5kBG5hbWUNZGlzcGxheV9sYWJlbAZzdHJpbmcHdHJhbnNpdAAFAmlkBnVpbnQ2NAJheAVpbnQ2NAJheQVpbnQ2NAJieAVpbnQ2NAJieQVpbnQ2NAZ0cmF2ZWwABAJpZAZ1aW50NjQBeAVpbnQ2NAF5BWludDY0CHJlY2hhcmdlBGJvb2wJdHlwZXNfcm93AAUCaWQGdWludDY0E2VudGl0eV9zdW1tYXJ5X3R5cGUOZW50aXR5X3N1bW1hcnkQZ2FtZV9jb25maWdfdHlwZQtnYW1lX2NvbmZpZxZzdHJhdHVtX3JlbWFpbmluZ190eXBlEXN0cmF0dW1fcmVtYWluaW5nFW5mdF9pdGVtX3BheWxvYWRfdHlwZRBuZnRfaXRlbV9wYXlsb2FkCHVuZGVwbG95AAIHaG9zdF9pZAZ1aW50NjQJdGFyZ2V0X2lkBnVpbnQ2NAZ1bmxvYWQAAwJpZAZ1aW50NjQFdG9faWQGdWludDY0BWl0ZW1zDGNhcmdvX2l0ZW1bXQR3YXJwAAMCaWQGdWludDY0AXgFaW50NjQBeQVpbnQ2NAp3YXJwX3N0YXRzAAEFcmFuZ2UGdWludDMyBHdpcGUAAA13b3JtaG9sZV9pbmZvAAMGY29vcmRzC2Nvb3JkaW5hdGVzC2lzX3dvcm1ob2xlBGJvb2wLZGVzdGluYXRpb24LY29vcmRpbmF0ZXMOd3JhcGNvbmZpZ19yb3cAAgdmZWVfcGN0BnVpbnQxNgtmZWVfYWNjb3VudARuYW1lDHdyYXBjb3N0X3JvdwADCWl0ZW1fdHlwZQV1aW50OAR0aWVyBXVpbnQ4BmFtb3VudAZ1aW50NjRcAABQUScqUzIJYWRkbW9kdWxlxwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogYWRkbW9kdWxlCnN1bW1hcnk6ICdJbnN0YWxsIGEgbW9kdWxlIGludG8gYSBzbG90JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnN0YWxsIGEgbW9kdWxlIGZyb20gY2FyZ28gaW50byBhIG1vZHVsZSBzbG90IG9uIGEgbGl2ZSBlbnRpdHkgb3IgYSBwYWNrZWQgZW50aXR5IGluIGNhcmdvLiBUaGUgZW50aXR5IG11c3QgYmUgaWRsZSB3aXRoIG5vIHNjaGVkdWxlZCB0YXNrcy4gVGhlIG1vZHVsZSB0eXBlIG11c3QgYmUgY29tcGF0aWJsZSB3aXRoIHRoZSB0YXJnZXQgc2xvdCB0eXBlLiBUaGUgbW9kdWxlIGl0ZW0gaXMgcmVtb3ZlZCBmcm9tIGNhcmdvIHVwb24gaW5zdGFsbGF0aW9uLgAAAFh3NVMyCGFkZG5leHVzpwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogYWRkbmV4dXMKc3VtbWFyeTogJ0FkZCBhIG5leHVzIGxvY2F0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpDcmVhdGUgYSBuZXcgbmV4dXMgZW50aXR5IGF0IHRoZSBnaXZlbiBjb29yZGluYXRlcy4gTmV4dXNlcyBhcmUgb3duZWQgYnkgdGhlIGNvbnRyYWN0IGFuZCBzZXJ2ZSBhcyBmaXhlZCBnYXRoZXJpbmcgcG9pbnRzIHdoZXJlIHBsYXllcnMgY2FuIHdyYXAsIHVud3JhcCwgZGVwbG95LCBhbmQgb3RoZXJ3aXNlIGludGVyYWN0IHdpdGggTkZULWJhY2tlZCBhc3NldHMuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AAFARmUtTMglhZGRvcmFjbGUAAAAAAIA0VTwFYmxlbmT8Ai0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBibGVuZApzdW1tYXJ5OiAnQmxlbmQgY2FyZ28gc3RhY2tzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpDb21iaW5lIG11bHRpcGxlIGNhcmdvIHN0YWNrcyBvZiB0aGUgc2FtZSBpdGVtIHR5cGUgaW50byBhIHNpbmdsZSBzdGFjayB3aXRoIG5ldyBibGVuZGVkIHN0YXRzLiBBbGwgaW5wdXQgc3RhY2tzIG11c3Qgc2hhcmUgdGhlIHNhbWUgaXRlbSBpZC4gVGhlIG91dHB1dCBzdGFjayBoYXMgdGhlIGNvbWJpbmVkIHF1YW50aXR5IG9mIGFsbCBpbnB1dHMuAADINNYUnT4JYnVpbGRwbG90AAAAAABEhaZBBmNhbmNlbMICLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNhbmNlbApzdW1tYXJ5OiAnQ2FuY2VsIHNjaGVkdWxlZCB0YXNrcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ2FuY2VsIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIHRhc2tzIGZyb20gdGhlIGVuZCBvZiBhbiBlbnRpdHkncyBzY2hlZHVsZS4gVGFza3MgdGhhdCBhcmUgaW1tdXRhYmxlIGFuZCBpbiBwcm9ncmVzcyBjYW5ub3QgYmUgY2FuY2VsbGVkLgAAyDRW6UxECWNsYWltcGxvdABwVb4mY+lMRAxjbGFpbXN0YXJ0ZXIAAACoG99pVEQJY2xlYW5yc3Zw7AItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY2xlYW5yc3ZwCnN1bW1hcnk6ICdDbGVhbiB1cCBwYXN0IGVwb2NoIHJlc2VydmVzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpFcmFzZSByZXNlcnZlIHRhYmxlIHJvd3MgZnJvbSBhIHBhc3QgZXBvY2guIENhbm5vdCBjbGVhbiB0aGUgY3VycmVudCBvciBmdXR1cmUgZXBvY2hzLiBUaGUgbWF4X3Jvd3MgcGFyYW1ldGVyIGNhcHMgdGhlIG51bWJlciBvZiByb3dzIGVyYXNlZCBwZXIgY2FsbCB0byBsaW1pdCBDUFUgdXNhZ2UuAICKx+RrVEQKY2xlYXJ0YWJsZb4BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNsZWFydGFibGUKc3VtbWFyeTogJ0RFQlVHOiBjbGVhcnRhYmxlIGFjdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAAABkJyVFBmNvbW1pdOwBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNvbW1pdApzdW1tYXJ5OiAnU2V0IGNvbW1pdCB2YWx1ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKU2V0IHRoZSBpbml0aWFsIGNvbW1pdCB2YWx1ZSBkdXJpbmcgZ2FtZSBpbml0aWFsaXphdGlvbi4AAGA0MrcmRQljb25maWdsb2fdAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjb25maWdsb2cKc3VtbWFyeTogJ0xvZyBnYW1lIGNvbmZpZ3VyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiB0aGF0IGxvZ3MgdGhlIGN1cnJlbnQgZ2FtZSBjb25maWd1cmF0aW9uLiBDYWxsZWQgaW5saW5lIGFmdGVyIGluaXRpYWxpemF0aW9uIHRvIGJyb2FkY2FzdCBjb25maWcgdmlhIGFjdGlvbiB0cmFjZXMuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AAAAAgLzMRQVjcmFmdMgDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNyYWZ0CnN1bW1hcnk6ICdDcmFmdCBpdGVtcyBmcm9tIGEgcmVjaXBlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUcmFuc2Zvcm0gY2FyZ28gaXRlbXMgaW50byBhIG5ldyBpdGVtIHVzaW5nIGEgcmVjaXBlLiBUaGUgZW50aXR5IG11c3QgaGF2ZSBhIGNyYWZ0ZXIgbW9kdWxlIGluc3RhbGxlZC4gQ29uc3VtZXMgZW5lcmd5IGFuZCBzY2hlZHVsZXMgYSBjcmFmdGluZyB0YXNrIHdpdGggZHVyYXRpb24gYmFzZWQgb24gdG90YWwgaW5wdXQgbWFzcyBhbmQgY3JhZnRlciBzcGVlZC4gSW5wdXQgcXVhbnRpdGllcyBtdXN0IGV4YWN0bHkgbWF0Y2ggdGhlIHJlY2lwZSByZXF1aXJlbWVudHMuAAAADbtIpUoIZGVtb2xpc2jxAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBkZW1vbGlzaApzdW1tYXJ5OiAnRGVtb2xpc2ggYSBzdGF0aW9uYXJ5IGVudGl0eScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRGVjb21taXNzaW9uIGFuIGVudGl0eSwgZXJhc2luZyBpdCBmcm9tIHRoZSBnYW1lLiBUaGUgZW50aXR5IG11c3QgYmUgaWRsZSwgaGF2ZSBlbXB0eSBjYXJnbywgYW5kIGhhdmUgbm8gaW5zdGFsbGVkIG1vZHVsZXMgKHJlbW92ZSBlYWNoIHZpYSBybW1vZHVsZSBmaXJzdCkuIFNjaGVkdWxlcyBhIGRlbW9saXNoIHRhc2sgdGhhdCBlcmFzZXMgdGhlIGVudGl0eSBvbiByZXNvbHV0aW9uLiBPbmx5IHZhbGlkIGZvciBlbnRpdGllcyB0aGF0IGNhbm5vdCBtb3ZlOyB1c2UgdW5kZXBsb3kgb3Igd3JhcGVudGl0eSBmb3IgdGhlIHJlc3QuAAAAAHgaq0oGZGVwbG957AItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZGVwbG95CnN1bW1hcnk6ICdEZXBsb3kgYSBwYWNrZWQgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpVbnBhY2sgYSBwYWNrZWQgZW50aXR5IGl0ZW0gKHBhY2tlZCBzaGlwIG9yIHBhY2tlZCBjb250YWluZXIpIGZyb20gY2FyZ28sIHNjaGVkdWxpbmcgYSBkZXBsb3kgdGFzayB0aGF0IGNyZWF0ZXMgdGhlIG5ldyBlbnRpdHkgYXQgdGhlIGRlcGxveWluZyBlbnRpdHkncyBsb2NhdGlvbiB1cG9uIHJlc29sdXRpb24uAIDPLk+FsEoKZGVzY2VudGl0eckDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGRlc2NlbnRpdHkKc3VtbWFyeTogJ0Rlc2NyaWJlIGEgcGFja2VkIGVudGl0eScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgYSBodW1hbi1yZWFkYWJsZSBkZXNjcmlwdGlvbiBzdHJpbmcgZm9yIGEgcGFja2VkIGVudGl0eSwgZGVyaXZlZCBmcm9tIHRoZSBlbnRpdHkgaXRlbSBpZCwgaHVsbCBzdGF0cywgYW5kIHRoZSBsaXN0IG9mIGluc3RhbGxlZCBtb2R1bGUgaXRlbSBpZHMgYW5kIHN0YXRzLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIGFuZCBORlQgcmVuZGVyZXJzIHRvIGRpc3BsYXkgcGFja2VkIGVudGl0aWVzLgAAAACoeMxUBmVuYWJsZd0BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGVuYWJsZQpzdW1tYXJ5OiAnU2V0IGVuYWJsZWQgc3RhdGUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkVuYWJsZSBvciBkaXNhYmxlIHRoaXMgZ2FtZSBvZiBTaGlwbG9hZC6AsZGUXYO6WwxmaXhjYXJnb21hc3OQAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBmaXhjYXJnb21hc3MKc3VtbWFyeTogJ0RFQlVHOiByZWNvbXB1dGUgZW50aXR5IGNhcmdvIG1hc3MnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlY29tcHV0ZSBhbmQgcmV3cml0ZSBhbiBlbnRpdHkncyBjYXJnbyBtYXNzIGZyb20gaXRzIGN1cnJlbnQgY2FyZ28uIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4gQXZhaWxhYmxlIGZvciByZXBhaXJpbmcgZHJpZnQgYmV0d2VlbiBjYWNoZWQgY2FyZ28gbWFzcyBhbmQgdGhlIHRydWUgbWFzcyBkZXJpdmVkIGZyb20gY2FyZ28gcm93cy4AolFbXYUuXQtmb3JjZXJldmVhbL4ELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGZvcmNlcmV2ZWFsCnN1bW1hcnk6ICdERUJVRzogZm9yY2UtZmluYWxpemUgYW4gZXBvY2ggZnJvbSBleGlzdGluZyByZXZlYWxzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpGaW5hbGl6ZSBhIHN0dWNrIGVwb2NoIGJ5IGNvbXB1dGluZyBpdHMgc2VlZCBmcm9tIHRoZSByZXZlYWxzIGFscmVhZHkgc3VibWl0dGVkLCB3aXRob3V0IHdhaXRpbmcgZm9yIHRoZSBjb25maWd1cmVkIHRocmVzaG9sZC4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LiBUaGUgc2VlZCBpcyBkZXJpdmVkIHNvbGVseSBmcm9tIHRoZSBwcmUtaW1hZ2UtbG9ja2VkIHJldmVhbHMgYWxyZWFkeSBvbiBjaGFpbjsgbm8gYWRtaW4tc3VwcGxpZWQgZW50cm9weSBpcyBpbnRyb2R1Y2VkLiBVc2VkIHRvIHVuYmxvY2sgZXBvY2ggcHJvZ3Jlc3Npb24gd2hlbiB0aGUgdGhyZXNob2xkIGNhbm5vdCBvdGhlcndpc2UgYmUgbWV0LgAAAABc1bJhBmdhdGhlcpcDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdhdGhlcgpzdW1tYXJ5OiAnR2F0aGVyIHJlc291cmNlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKR2F0aGVyIHJlc291cmNlcyBhdCB0aGUgc2hpcCdzIGN1cnJlbnQgbG9jYXRpb24uIE9ubHkgd29ya3MgYXQgZ2F0aGVyYWJsZSBsb2NhdGlvbiB0eXBlcy4gU2NoZWR1bGVzIGEgZ2F0aGVyIHRhc2sgdGhhdCBjb25zdW1lcyBlbmVyZ3kgYW5kIHlpZWxkcyBjYXJnbyBiYXNlZCBvbiB0aGUgc2hpcCdzIGdhdGhlcmVyIHN0YXRzIGFuZCB0aGUgbG9jYXRpb24ncyByZXNvdXJjZSBjb21wb3NpdGlvbi6QlYoLO6ymYgxnZW5lc2lzZmxlZXSpBC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZW5lc2lzZmxlZXQKc3VtbWFyeTogJ01pbnQgdGhlIG9uZS10aW1lIGdlbmVzaXMgZmxlZXQnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkVtcGxhY2UgdGhlIG9uZS10aW1lIGdlbmVzaXMgZmxlZXQ6IGEgY2FsbGVyLXN1cHBsaWVkIHNldCBvZiBlbnRpdGllcyAoc2hpcHMsIHN0cnVjdHVyZXMsIGFuZCBjb250YWluZXJzKSB3cml0dGVuIHRvIHRoZSB3b3JsZCBhcy1pcy4gVmFsaWQgb25seSBkdXJpbmcgdGhlIHByZS1nZW5lc2lzIHdpbmRvdywgYmVmb3JlIGVwb2NoIDEgaXMgZmluYWxpemVkLiBUaGUgc3VwcGxpZWQgZW50aXR5IGlkcyBhcmUgaG9ub3JlZCBhbmQgdGhlIGlkIHNlcXVlbmNlIGlzIGFkdmFuY2VkIHBhc3QgdGhlbTsgaWQgMCBpcyByZXNlcnZlZCBmb3IgdGhlIEdlbmVzaXMgTmV4dXMuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AAGBuTYqyYglnZXRjb25maWfKAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRjb25maWcKc3VtbWFyeTogJ0dldCBnYW1lIGNvbmZpZ3VyYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgdGhlIGdhbWUgY29uZmlndXJhdGlvbiBpbmNsdWRpbmcgZGVmYXVsdCBlbnRpdHkgc3RhdHMgZm9yIHdhcmVob3VzZXMgYW5kIGNvbnRhaW5lcnMsIGFuZCB0aGUgZnVsbCBpdGVtIGRlZmluaXRpb25zIHRhYmxlLgBAdphWlbJiCmdldGRlcG9zaXQAABSaJmOXsmILZ2V0ZGlzdGFuY2UAAFQ8jrmosmILZ2V0ZWxpZ2libGXIAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRlbGlnaWJsZQpzdW1tYXJ5OiAnR2V0IGVsaWdpYmxlIHJlc291cmNlIGl0ZW0gSURzIGF0IGEgbG9jYXRpb24gYW5kIHN0cmF0dW0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBsaXN0IG9mIHJlc291cmNlIGl0ZW0gSURzIGVsaWdpYmxlIHRvIGJlIGdhdGhlcmVkIGF0IHRoZSBnaXZlbiBjb29yZGluYXRlcyBhbmQgc3RyYXR1bSBkZXB0aC4gSXRlbXMgYXJlIGdhdGVkIGJ5IGJvdGggdGhlIGxvY2F0aW9uJ3MgcmVzb3VyY2UgcHJvZmlsZSBhbmQgdGhlIGRlcHRoIHRocmVzaG9sZCBmb3IgZWFjaCB0aWVyLgAAwBHlqbJiCWdldGVudGNsc4wDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVudGNscwpzdW1tYXJ5OiAnR2V0IGVudGl0eSBjbGFzcyBlbnVtIHZhbHVlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgc2V0IG9mIGVudGl0eSBjbGFzcyBlbnVtIHZhbHVlcyBhbmQgdGhlaXIgc3RyaW5nIG5hbWVzIChPcmJpdGFsVmVzc2VsLCBQbGFuZXRhcnlTdHJ1Y3R1cmUpLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGRlY29kZSBlbnRpdHkgY2xhc3MgaWRlbnRpZmllcnMuALBy2eWpsmILZ2V0ZW50aXRpZXOkAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRlbnRpdGllcwpzdW1tYXJ5OiAnR2V0IGFsbCBlbnRpdGllcyBmb3IgYSBwbGF5ZXInCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJldHVybnMgZnVsbCBlbnRpdHkgaW5mbyBmb3IgYWxsIGVudGl0aWVzIG93bmVkIGJ5IGEgcGxheWVyLiBPcHRpb25hbGx5IGZpbHRlciBieSBlbnRpdHkgdHlwZS4AAPDZ5amyYglnZXRlbnRpdHmiAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRlbnRpdHkKc3VtbWFyeTogJ0dldCBlbnRpdHkgc3RhdGUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJldHVybnMgdGhlIGN1cnJlbnQgc3RhdGUgb2YgYW4gZW50aXR5IGluY2x1ZGluZyBpZGVudGl0eSwgY2FyZ28sIHNjaGVkdWxlIHN0YXRlLCBhbmQgdHlwZS1zcGVjaWZpYyBmaWVsZHMuAEw2SarssmILZ2V0aXRlbWRhdGGoAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRpdGVtZGF0YQpzdW1tYXJ5OiAnR2V0IGZ1bGwgaXRlbSBjYXRhbG9nJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgY29tcGxldGUgaXRlbSBjYXRhbG9nIGFzIHRoZSBjb250cmFjdCBzZWVzIGl0LCBpbmNsdWRpbmcgdHlwZSwgc3VidHlwZSwgdGllciwgbWFzcywgYW5kIG90aGVyIHN0YXRpYyBtZXRhZGF0YS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyBhbmQgY2xpZW50cyB0byBtaXJyb3IgdGhlIGNvbnRyYWN0J3MgaXRlbSBkZWZpbml0aW9ucy4AAE5OquyyYgpnZXRpdGVtaWRzhgMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0aXRlbWlkcwpzdW1tYXJ5OiAnR2V0IGl0ZW0gaWQgdG8gbmFtZSBtYXBwaW5ncycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgbWFwcGluZyBvZiBpdGVtIGlkIGNvbnN0YW50cyB0byB0aGVpciBjYW5vbmljYWwgc3RyaW5nIG5hbWVzLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIHJlc29sdmUgbnVtZXJpYyBpdGVtIGlkcyB0byBodW1hbi1yZWFkYWJsZSBpZGVudGlmaWVycy4AAABYquyyYghnZXRpdGVtc5oCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGl0ZW1zCnN1bW1hcnk6ICdHZXQgYWxsIGF2YWlsYWJsZSBpdGVtcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyBhIGxpc3Qgb2YgYWxsIGl0ZW1zIGluIHRoZSBnYW1lIGluY2x1ZGluZyB0aGVpciBpZCwgYmFzZSBwcmljZSwgYW5kIG1hc3MuAFT1WarssmILZ2V0aXRlbXR5cGUAgFX1WarssmIMZ2V0aXRlbXR5cGVziAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0aXRlbXR5cGVzCnN1bW1hcnk6ICdHZXQgaXRlbSB0eXBlIGVudW0gdmFsdWVzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgZnVsbCBzZXQgb2YgaXRlbSB0eXBlIGVudW0gdmFsdWVzIGFuZCB0aGVpciBzdHJpbmcgbmFtZXMgKHJlc291cmNlLCBjb21wb25lbnQsIG1vZHVsZSwgZW50aXR5KS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZWNvZGUgaXRlbSB0eXBlIGlkZW50aWZpZXJzLgBMVjJNB7NiC2dldGtpbmRtZXRh+AMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0a2luZG1ldGEKc3VtbWFyeTogJ0dldCBlbnRpdHkga2luZCBtZXRhZGF0YScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGVudGl0eSBraW5kIHJlZ2lzdHJ5IGFuZCB0ZW1wbGF0ZSByZWdpc3RyeSwgaW5jbHVkaW5nIGVhY2gga2luZCdzIGNsYXNzaWZpY2F0aW9uLCBjYXBhYmlsaXR5IGZsYWdzLCBaLWNvb3JkaW5hdGUsIGFuZCBkZWZhdWx0IGxhYmVsLCBwbHVzIHRoZSBtYXBwaW5nIG9mIGVudGl0eSBpdGVtIGlkcyB0byBraW5kcyB3aXRoIGRpc3BsYXkgbGFiZWxzLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGludGVycHJldCBlbnRpdHkga2luZHMgYW5kIGNhcGFiaWxpdGllcy4AJnXZIBqzYgtnZXRsb2NhdGlvbuICLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGxvY2F0aW9uCnN1bW1hcnk6ICdHZXQgbG9jYXRpb24gaW5mb3JtYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgaW5mb3JtYXRpb24gYWJvdXQgYSBsb2NhdGlvbiBpbmNsdWRpbmcgd2hldGhlciBhIHN5c3RlbSBleGlzdHMsIGFuZCBmb3IgZWFjaCBpdGVtOiBwcmljZSwgc3VwcGx5LCByYXJpdHkgbXVsdGlwbGllciwgYW5kIGxvY2F0aW9uIG11bHRpcGxpZXIuAIDJJiEas2IKZ2V0bG9jZGF0Yf4CLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGxvY2RhdGEKc3VtbWFyeTogJ0dldCBkZXJpdmVkIGxvY2F0aW9uIGRhdGEnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgZGVyaXZlZCBsb2NhdGlvbiBkYXRhIGluY2x1ZGluZyBzdGF0aWMgcHJvcGVydGllcyAodHlwZSwgZGlmZmljdWx0eSwgc2VlZHMpIGZyb20gdGhlIGdhbWUgc2VlZCBhbmQgZXBvY2gtc3BlY2lmaWMgcHJvcGVydGllcyAoYWN0aXZlLCBzZWVkcykgZnJvbSB0aGUgY3VycmVudCBlcG9jaCBzZWVkLgCwqj4nKrNiC2dldG1vZHR5cGVz1gMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0bW9kdHlwZXMKc3VtbWFyeTogJ0dldCBtb2R1bGUgdHlwZSBlbnVtIHZhbHVlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgc2V0IG9mIG1vZHVsZSB0eXBlIGVudW0gdmFsdWVzIGFuZCB0aGVpciBzdHJpbmcgbmFtZXMgKGFueSwgZW5naW5lLCBnZW5lcmF0b3IsIGdhdGhlcmVyLCBsb2FkZXIsIHdhcnAsIGNyYWZ0ZXIsIGxhdW5jaGVyLCBzdG9yYWdlLCBoYXVsZXIpLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGRlY29kZSBtb2R1bGUgc3VidHlwZSBpZGVudGlmaWVycyBhbmQgc2xvdCBjb21wYXRpYmlsaXR5LgAAVlEnKrNiCmdldG1vZHVsZXOAAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRtb2R1bGVzCnN1bW1hcnk6ICdHZXQgYWxsIG1vZHVsZSBpdGVtcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIHN1YnNldCBvZiBpdGVtcyBjbGFzc2lmaWVkIGFzIG1vZHVsZXMsIGluY2x1ZGluZyBlYWNoIG1vZHVsZSdzIGlkLCBtYXNzLCBzdWJ0eXBlLCBhbmQgdGllci4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBlbnVtZXJhdGUgaW5zdGFsbGFibGUgZXF1aXBtZW50LgAA8OcaNbNiCWdldG5lYXJied4DLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldG5lYXJieQpzdW1tYXJ5OiAnR2V0IG5lYXJieSByZWFjaGFibGUgc3lzdGVtcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyBuZWFyYnkgc3lzdGVtcyByZWFjaGFibGUgYnkgYW4gZW50aXR5IGZyb20gaXRzIHByb2plY3RlZCBsb2NhdGlvbi4gUmV0dXJucyBjdXJyZW50IHN0YXRlICh3aXRoIGNvbXBsZXRlZCB0YXNrcyByZXNvbHZlZCksIHByb2plY3RlZCBzdGF0ZSAoYWZ0ZXIgYWxsIHNjaGVkdWxlZCB0YXNrcyksIGFuZCBhIGxpc3Qgb2YgcmVhY2hhYmxlIHN5c3RlbXMgd2l0aCBkaXN0YW5jZSwgZW5lcmd5IGNvc3QsIGZsaWdodCB0aW1lLCBhbmQgbWFya2V0IGluZm9ybWF0aW9uLgCAwubkNbNiCmdldG5mdGJhc2UAAABd0+U1s2IKZ2V0bmZ0aW5mb/ADLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldG5mdGluZm8Kc3VtbWFyeTogJ0dldCBORlQgc2NoZW1hIGFuZCB0ZW1wbGF0ZSBjb25maWd1cmF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgZnVsbCBzZXQgb2YgQXRvbWljQXNzZXRzIHNjaGVtYXMgYW5kIHRlbXBsYXRlcyB0aGUgZ2FtZSBjb250cmFjdCBleHBlY3RzLCBwbHVzIHRoZSBjdXJyZW50IGBpdGVtX2lkIOKGkiAodGVtcGxhdGVfaWQsIHNjaGVtYV9uYW1lKWAgbWFwcGluZyBzdG9yZWQgaW4gdGhlIGBuZnRjb25maWdgIHRhYmxlLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIHN5bmMgYXRvbWljYXNzZXRzIHN0YXRlIHdpdGggdGhlIGNvbnRyYWN0LgAAuMqbWLNiCWdldHBsYXllcv0CLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHBsYXllcgpzdW1tYXJ5OiAnR2V0IHBsYXllciBpbmZvcm1hdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyBpbmZvcm1hdGlvbiBhYm91dCBhIHBsYXllciBpbmNsdWRpbmcgYmFsYW5jZSwgZGVidCwgbmV0d29ydGgsIGVudGl0eSBjb3VudHMsIGFuZCBwcmljaW5nIGZvciBuZXh0IHB1cmNoYXNlcy4gUmV0dXJucyBpc19wbGF5ZXI9ZmFsc2UgaWYgdGhlIGFjY291bnQgaGFzIG5vdCBqb2luZWQgdGhlIGdhbWUuoLLJ+NFbs2IMZ2V0cHJvanN0YXRlywMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0cHJvanN0YXRlCnN1bW1hcnk6ICdHZXQgcHJvamVjdGVkIGVudGl0eSBzdGF0ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIHByb2plY3RlZCBzdGF0ZSBvZiBhbiBlbnRpdHkgYWZ0ZXIgYXBwbHlpbmcgdGhlIG5leHQgdGFza19jb3VudCBzY2hlZHVsZWQgdGFza3MgKG9yIGFsbCB0YXNrcyBpZiB0YXNrX2NvdW50IGlzIG9taXR0ZWQpLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIHByZXZpZXcgdGhlIHJlc3VsdCBvZiBhbiBlbnRpdHkncyBzY2hlZHVsZSB3aXRob3V0IHJlc29sdmluZyBvbi1jaGFpbi4AAFDVIXWzYglnZXRyZWNpcGWmAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZWNpcGUKc3VtbWFyeTogJ0dldCBhIHNpbmdsZSBjcmFmdGluZyByZWNpcGUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSByZWNpcGUgd2hvc2Ugb3V0cHV0IG1hdGNoZXMgdGhlIGdpdmVuIGl0ZW0gaWQsIGluY2x1ZGluZyBpdHMgaW5wdXRzLCBibGVuZCB3ZWlnaHRzLCBzdGF0IHNsb3RzLCBhbmQgcmVzb2x2ZWQgaXRlbSBtYXNzIGluZm8uIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGlzcGxheSBjcmFmdGluZyByZXF1aXJlbWVudHMuAABW1SF1s2IKZ2V0cmVjaXBlc6wDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlY2lwZXMKc3VtbWFyeTogJ0xpc3QgY3JhZnRpbmcgcmVjaXBlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgYSBwYWdpbmF0ZWQgbGlzdCBvZiBjcmFmdGluZyByZWNpcGVzIHN0YXJ0aW5nIGF0IHRoZSBwcm92aWRlZCBsb3dlciBib3VuZCBvdXRwdXQgaXRlbSBpZCwgdXAgdG8gdGhlIHNwZWNpZmllZCBsaW1pdC4gRWFjaCBlbnRyeSBpbmNsdWRlcyBpbnB1dHMsIGJsZW5kIHdlaWdodHMsIHN0YXQgc2xvdHMsIGFuZCByZXNvbHZlZCBpdGVtIG1hc3MgaW5mby4AAM4GYXWzYgpnZXRyZXNjYXRzngMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0cmVzY2F0cwpzdW1tYXJ5OiAnR2V0IHJlc291cmNlIGNhdGVnb3J5IGVudW0gdmFsdWVzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgZnVsbCBzZXQgb2YgcmVzb3VyY2UgY2F0ZWdvcnkgZW51bSB2YWx1ZXMgYW5kIHRoZWlyIHN0cmluZyBuYW1lcyAob3JlLCBnYXMsIHJlZ29saXRoLCBiaW9tYXNzLCBjcnlzdGFsKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZWNvZGUgcmVzb3VyY2Ugc3VidHlwZSBpZGVudGlmaWVycy4AsNpXYXWzYgtnZXRyZXNlcnZlc/wDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlc2VydmVzCnN1bW1hcnk6ICdHZXQgY3VycmVudCByZXNlcnZlIG1vZGlmaWNhdGlvbnMgYXQgYSBsb2NhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyB0aGUgY2hhaW4ncyBtb2RpZmljYXRpb25zIHRvIGRlcml2ZWQgcmVzZXJ2ZXMgYXQgdGhlIGdpdmVuIGNvb3JkaW5hdGUgZm9yIHRoZSBjdXJyZW50IGVwb2NoIGFzIGEgbGlzdCBvZiB7c3RyYXR1bSwgcmVtYWluaW5nfSBwYWlycy4gU3RyYXRhIG5vdCBwcmVzZW50IGluIHRoZSByZXNwb25zZSB1c2UgdGhlaXIgZGVyaXZlZCBpbml0aWFsIHJlc2VydmUuIENvbXBvc2Ugd2l0aCBTREsgZGVyaXZhdGlvbiB0byBnZXQgdGhlIGZ1bGwgcGVyLWxvY2F0aW9uIHN0cmF0YSB2aWV3LoAVuppidbNiDGdldHJlc291cmNlc4cDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlc291cmNlcwpzdW1tYXJ5OiAnR2V0IGFsbCByZXNvdXJjZSBpdGVtcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIHN1YnNldCBvZiBpdGVtcyBjbGFzc2lmaWVkIGFzIHJlc291cmNlcywgaW5jbHVkaW5nIGVhY2ggcmVzb3VyY2UncyBpZCwgbWFzcywgc3VidHlwZSwgYW5kIHRpZXIuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZW51bWVyYXRlIGdhdGhlcmFibGUgbWF0ZXJpYWxzLgAAADjTiLNiCGdldHNsb3RzuwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0c2xvdHMKc3VtbWFyeTogJ0dldCBlbnRpdHkgc2xvdCBsYXlvdXRzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgbW9kdWxlIHNsb3QgbGF5b3V0IGZvciBldmVyeSBlbnRpdHkgaXRlbSB0eXBlLCBsaXN0aW5nIHRoZSBvcmRlcmVkIHNsb3QgdHlwZXMgYXZhaWxhYmxlIGZvciBtb2R1bGUgaW5zdGFsbGF0aW9uLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGRldGVybWluZSB3aGljaCBtb2R1bGUgdHlwZXMgYXJlIGNvbXBhdGlibGUgd2l0aCBhIGdpdmVuIGVudGl0eSBodWxsLgCA1NncjLNiCmdldHN0cmF0dW3SAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRzdHJhdHVtCnN1bW1hcnk6ICdHZXQgcmVzb3VyY2Ugc3RyYXR1bSBkYXRhJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIHJlc291cmNlIHN0cmF0dW0gZGF0YSBmb3IgYSBzcGVjaWZpYyBkZXB0aCBsYXllciBhdCBhIGNvb3JkaW5hdGUsIGluY2x1ZGluZyB0aGUgc3RyYXR1bSBzZWVkIGluZm8gYW5kIGRlcml2ZWQgcmVzb3VyY2Ugc3RhdHMugJW7RkqNs2IMZ2V0c3VtbWFyaWVz6AItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0c3VtbWFyaWVzCnN1bW1hcnk6ICdHZXQgZW50aXR5IHN1bW1hcmllcyBmb3IgYSBwbGF5ZXInCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJldHVybnMgbGlnaHR3ZWlnaHQgc3VtbWFyaWVzIG9mIGFsbCBlbnRpdGllcyBvd25lZCBieSBhIHBsYXllciBpbmNsdWRpbmcgdHlwZSwgaWQsIG93bmVyLCBuYW1lLCBsb2NhdGlvbiwgYW5kIGlkbGUgc3RhdHVzLiBPcHRpb25hbGx5IGZpbHRlciBieSBlbnRpdHkgdHlwZS4AVKRNXsqzYgtnZXR3b3JtaG9sZQCQHZ7m5qrpZQxncm91cHRyYW5zaXQAAKLa5uaq6WULZ3JvdXB0cmF2ZWyaBC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBncm91cHRyYXZlbApzdW1tYXJ5OiAnTW92ZSBtdWx0aXBsZSBlbnRpdGllcyB0b2dldGhlcicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW5pdGlhdGUgZ3JvdXAgdHJhdmVsIGZvciBtdWx0aXBsZSBlbnRpdGllcyB0byBhIGRlc3RpbmF0aW9uLiBBbGwgZW50aXRpZXMgbXVzdCBiZSBhdCB0aGUgc2FtZSBsb2NhdGlvbiBhbmQgb3duZWQgYnkgdGhlIGNhbGxlci4gQXQgbGVhc3Qgb25lIGVudGl0eSB3aXRoIGVuZ2luZXMgaXMgcmVxdWlyZWQgdG8gcHJvdmlkZSB0aHJ1c3QuIEZsaWdodCBkdXJhdGlvbiBpcyBjYWxjdWxhdGVkIGZyb20gY29tYmluZWQgdGhydXN0IGFuZCB0b3RhbCBtYXNzIG9mIGFsbCBlbnRpdGllcy4gQ3JlYXRlcyBhbiBlbnRpdHlncm91cCBmb3IgYXRvbWljIHJlc29sdXRpb24gYW5kIGNhbmNlbGxhdGlvbi4AAAAAANCwaQRoYXNo+AEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogaGFzaApzdW1tYXJ5OiAnQ2FsY3VsYXRlIHNoYTI1NiBoYXNoJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpDYWxjdWxhdGVzIHRoZSBzaGEyNTYgaGFzaCBvZiBhIHN0cmluZyBiYXNlZCB1c2luZyB0aGUgZ2FtZSBzZWVkLgAAAECE0rBpB2hhc2g1MTL7AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBoYXNoNTEyCnN1bW1hcnk6ICdDYWxjdWxhdGUgc2hhNTEyIGhhc2gnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkNhbGN1bGF0ZXMgdGhlIHNoYTUxMiBoYXNoIG9mIGEgc3RyaW5nIGJhc2VkIHVzaW5nIHRoZSBnYW1lIHNlZWQuACi7BuVLq3QLaW1wb3J0Y2FyZ28A4LPLU+VLq3QMaW1wb3J0ZW50aXR5AACqppflS6t0C2ltcG9ydGdyb3VwAHCVN7HmS6t0DGltcG9ydHBsYXllcgC6r8Lq5kurdA1pbXBvcnRyZXNlcnZlAABUNhnnS6t0C2ltcG9ydHN0YXRlAAAAAAAAMB19BGpvaW7EAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBqb2luCnN1bW1hcnk6ICdKb2luIGEgZ2FtZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSm9pbiBhIGdhbWUgb2YgU2hpcGxvYWQAAAAANDS1iQZsYXVuY2gAAAAAAACQDI0EbG9hZAAAAIhXM+nymgluZnRpbWd1cmyyAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBuZnRpbWd1cmwKc3VtbWFyeTogJ0dldCBORlQgaW1hZ2UgVVJMIGZvciBhIGNhcmdvIGl0ZW0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBpbWFnZSBVUkwgdGhlIGNvbnRyYWN0IGVtaXRzIGZvciBhIGdpdmVuIGNhcmdvIGl0ZW0sIG9wdGlvbmFsbHkgc2NvcGVkIHRvIGEgbG9jYXRpb24uIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgYW5kIE5GVCByZW5kZXJlcnMgdG8gZmV0Y2ggdGhlIGNhbm9uaWNhbCBhcnR3b3JrIGZvciBhbiBpdGVtIG9yIHBhY2tlZCBlbnRpdHkuAAAAAPjlMp0Gbm90aWZ5igMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogbm90aWZ5CnN1bW1hcnk6ICdUYXNrIGxpZmVjeWNsZSBub3RpZmljYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiB0aGF0IG5vdGlmaWVzIGVudGl0eSBvd25lcnMgb2YgdGFzayBsaWZlY3ljbGUgZXZlbnRzIChyZXNvbHZlZCwgY2FuY2VsbGVkKS4gQ2FsbGVkIGlubGluZSB3aGVuIHRhc2tzIGNoYW5nZSBzdGF0ZS4gVXNlcyByZXF1aXJlX3JlY2lwaWVudCB0byBlbmFibGUgb2ZmLWNoYWluIG1vbml0b3JpbmcgdmlhIGFjdGlvbiB0cmFjZXMuAABl1yCFTKwKcGxhY2VjYXJnb8kELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHBsYWNlY2FyZ28Kc3VtbWFyeTogJ1Jlc3RvcmUgTkZUIGNhcmdvIG9udG8gYSBob3N0IGVudGl0eScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW50ZXJuYWwgYWN0aW9uIGNhbGxlZCBpbmxpbmUgYnkgdGhlIHBsYXRmb3JtIGNvbnRyYWN0IG9ubHkuIFJlc3RvcmVzIHRoZSBjYXJnbyByZWNvcmRlZCBpbiBhbiB1bndyYXBwZWQgTkZUIG9udG8gYSBob3N0IGVudGl0eS4gVmFsaWRhdGVzIGhvc3Qgb3duZXJzaGlwLCBsb2FkZXJzLCBhbmQgcmVtYWluaW5nIGNhcGFjaXR5LCBkZXNlcmlhbGl6ZXMgdGhlIE5GVCdzIGl0ZW0gZGF0YSwgYW5kIGFwcGVuZHMgYW4gdW53cmFwIHRhc2sgdG8gZGVsaXZlciB0aGUgY2FyZ28gdG8gdGhlIGhvc3QuIFRoZSBwbGF0Zm9ybSBjb250cmFjdCBjcmVkaXRzIHRoZSBkZXBvc2l0IHJlZnVuZCBhbmQgYnVybnMgdGhlIGFzc2V0LiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAHx2eSqFTKwLcGxhY2VlbnRpdHnABC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBwbGFjZWVudGl0eQpzdW1tYXJ5OiAnTWF0ZXJpYWxpemUgYSBwYWNrZWQtZW50aXR5IE5GVCBhcyBhIGxpdmUgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gY2FsbGVkIGlubGluZSBieSB0aGUgcGxhdGZvcm0gY29udHJhY3Qgb25seS4gRW1wbGFjZXMgYSBsaXZlIG9yYml0YWwgdmVzc2VsIChzaGlwIG9yIGNvbnRhaW5lcikgZnJvbSBpdHMgcGFja2VkLWVudGl0eSBORlQgZGF0YSBhdCB0aGUgcmVjb3JkZWQgd3JhcCBvcmlnaW4sIHRoZW4gcXVldWVzIHRyYXZlbCBhbmQgcmVjaGFyZ2UgdGFza3MgdG8gZGVsaXZlciBpdCB0byB0aGUgdGFyZ2V0IG5leHVzIGF0IGZ1bGwgZW5lcmd5LiBUaGUgcGxhdGZvcm0gY29udHJhY3QgY3JlZGl0cyB0aGUgZGVwb3NpdCByZWZ1bmQgYW5kIGJ1cm5zIHRoZSBhc3NldC4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LgAAAIpd05C6CHJlY2hhcmdlzQItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcmVjaGFyZ2UKc3VtbWFyeTogJ1JlY2hhcmdlIHNoaXAgZW5lcmd5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpTY2hlZHVsZSBhIHJlY2hhcmdlIHRhc2sgZm9yIGFuIGVudGl0eSB0byByZXN0b3JlIGVuZXJneSB0byBmdWxsIGNhcGFjaXR5LiBUaGUgcmVjaGFyZ2UgZHVyYXRpb24gZGVwZW5kcyBvbiBjdXJyZW50IGVuZXJneSBsZXZlbCBhbmQgcmVjaGFyZ2UgcmF0ZS7gs8tTNXyXugxyZWZyc2hlbnRpdHm4Ay0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiByZWZyc2hlbnRpdHkKc3VtbWFyeTogJ1JlZnJlc2ggZGVyaXZlZCBlbnRpdHkgc3RhdGUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlY29tcHV0ZSBkZXJpdmVkIGZpZWxkcyBvbiBhbiBlbnRpdHkgZnJvbSBpdHMgY3VycmVudCBjYXJnbyBhbmQgbW9kdWxlcywgcmVmcmVzaGluZyBjYXBhYmlsaXR5IHN0YXRzIGFuZCBjYXJnbyBtYXNzLiBUaGUgZW50aXR5IG11c3QgYmUgaWRsZSB3aXRoIG5vIHNjaGVkdWxlZCB0YXNrcy4gVXNlZCB0byByZWNvbmNpbGUgZGVyaXZlZCBzdGF0ZSBhZnRlciBkYXRhIG1pZ3JhdGlvbnMgb3IgY29udHJhY3QgdXBncmFkZXMuoCIyl6pNpboMcmVtb3Zlb3JhY2xlAAAAAAAoaaa6BnJlbmFtZQAAAABA7UixugdyZXNvbHZl0AMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcmVzb2x2ZQpzdW1tYXJ5OiAnQ29tcGxldGUgc2NoZWR1bGVkIHRhc2tzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZXNvbHZlIGNvbXBsZXRlZCB0YXNrcyBpbiBhbiBlbnRpdHkncyBzY2hlZHVsZSwgYXBwbHlpbmcgdGhlaXIgZWZmZWN0cyAocmVjaGFyZ2UgZW5lcmd5LCB1cGRhdGUgbG9jYXRpb24sIGxvYWQvdW5sb2FkIGNhcmdvKS4gSWYgY291bnQgaXMgc3BlY2lmaWVkLCByZXNvbHZlIGV4YWN0bHkgdGhhdCBtYW55IHRhc2tzOyBvdGhlcndpc2UgcmVzb2x2ZSBhbGwgY29tcGxldGVkIHRhc2tzLiBGYWlscyBpZiBjb3VudCBleGNlZWRzIHRoZSBudW1iZXIgb2YgY29tcGxldGVkIHRhc2tzLgBAjEbtSLG6CnJlc29sdmVhbGwAAAAAAESjtroGcmV2ZWFsAAAAACrqRKW8CHJtbW9kdWxlvAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcm1tb2R1bGUKc3VtbWFyeTogJ1JlbW92ZSBhIG1vZHVsZSBmcm9tIGEgc2xvdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmVtb3ZlIGFuIGluc3RhbGxlZCBtb2R1bGUgZnJvbSBhIHNsb3Qgb24gYSBsaXZlIGVudGl0eSBvciBhIHBhY2tlZCBlbnRpdHkgaW4gY2FyZ28uIFRoZSBlbnRpdHkgbXVzdCBiZSBpZGxlIHdpdGggbm8gc2NoZWR1bGVkIHRhc2tzLiBUaGUgbW9kdWxlIGlzIHJldHVybmVkIHRvIGNhcmdvLiBGYWlscyBpZiB0aGUgZW50aXR5IGRvZXMgbm90IGhhdmUgZW5vdWdoIGNhcmdvIGNhcGFjaXR5IHRvIGhvbGQgdGhlIHJldHVybmVkIG1vZHVsZS4AAABsobymvAhybW5mdGNmZ6EDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHJtbmZ0Y2ZnCnN1bW1hcnk6ICdSZW1vdmUgTkZUIHRlbXBsYXRlIG1hcHBpbmcgZm9yIGFuIGl0ZW0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlbW92ZSB0aGUgQXRvbWljQXNzZXRzIHRlbXBsYXRlIG1hcHBpbmcgZm9yIHRoZSBzcGVjaWZpZWQgaXRlbSBpZCBmcm9tIHRoZSBgbmZ0Y29uZmlnYCB0YWJsZS4gQWZ0ZXIgcmVtb3ZhbCB0aGUgaXRlbSBjYW4gbm8gbG9uZ2VyIGJlIHdyYXBwZWQgb3IgdW53cmFwcGVkIHVudGlsIGEgbmV3IG1hcHBpbmcgaXMgc2V0LiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAADA6VKKssIJc2V0Y29vcmRzAAAAYAvlNbPCCXNldG5mdGNmZ8QDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHNldG5mdGNmZwpzdW1tYXJ5OiAnU2V0IE5GVCB0ZW1wbGF0ZSBtYXBwaW5nIGZvciBhbiBpdGVtJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpCaW5kIGFuIGl0ZW0gaWQgdG8gYW4gQXRvbWljQXNzZXRzIHRlbXBsYXRlIGlkIGFuZCBzY2hlbWEgbmFtZS4gVXNlZCB0byBjb25maWd1cmUgaG93IHRoZSBjb250cmFjdCBtaW50cyBhbmQgcmVjb2duaXplcyBORlRzIGZvciBhIGdpdmVuIGl0ZW0uIEluc2VydHMgYSBuZXcgbWFwcGluZyBpZiBvbmUgZG9lcyBub3QgZXhpc3QsIG9yIHVwZGF0ZXMgdGhlIGV4aXN0aW5nIG1hcHBpbmcuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS6QIm1Y3ZazwgxzZXR0aHJlc2hvbGQAADKmqJrLs8ILc2V0d3JhcGNvc3QAAIBSq5rLs8IKc2V0d3JhcGZlZQAAAKDsGsRpxglzdG93Y2FyZ2/VBS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBzdG93Y2FyZ28Kc3VtbWFyeTogJ1Jlc2VydmUgYSBjYXJnbyBzdGFjayBmb3Igd3JhcHBpbmcgaW50byBhbiBORlQnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiBjYWxsZWQgaW5saW5lIGJ5IHRoZSBwbGF0Zm9ybSBjb250cmFjdCBvbmx5LiBSZXNlcnZlcyBhbmQgY29uc3VtZXMgYSBjYXJnbyBzdGFjayBvbiBhIGxpdmUgZW50aXR5IGZvciB3cmFwcGluZyBpbnRvIGFuIE5GVC4gVmFsaWRhdGVzIGVudGl0eSBvd25lcnNoaXAsIGxvYWRlcnMsIGFuZCBwcmVzZW5jZSBhdCB0aGUgbmV4dXMsIGFuZCBjb25maXJtcyB0aGUgdGFyZ2V0IGNhcmdvIHN0YWNrIGlzIGF2YWlsYWJsZSBhbmQgbm90IHJlc2VydmVkIGJ5IGEgcGVuZGluZyB0YXNrLiBDb21wdXRlcyB0aGUgd3JhcCBjb3N0IGFuZCBmZWUsIGRlYml0cyB0aGVtIGZyb20gdGhlIG93bmVyJ3MgcGxhdGZvcm0gZGVwb3NpdCBiYWxhbmNlLCBkZXJpdmVzIHRoZSBORlQncyBpbW11dGFibGUgZGF0YSwgYW5kIG1pbnRzIHRoZSBORlQgaW5saW5lIGFzIHRoZSBnYW1lIGNvbnRyYWN0IGJlZm9yZSBjb25zdW1pbmcgdGhlIGNhcmdvLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAIDPLk/FacYKc3Rvd2VudGl0eZkFLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHN0b3dlbnRpdHkKc3VtbWFyeTogJ1Jlc2VydmUgYW4gZW50aXR5IGZvciB3cmFwcGluZyBpbnRvIGFuIE5GVCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW50ZXJuYWwgYWN0aW9uIGNhbGxlZCBpbmxpbmUgYnkgdGhlIHBsYXRmb3JtIGNvbnRyYWN0IG9ubHkuIFJlc2VydmVzIGEgd2hvbGUgZW50aXR5IChzaGlwLCBjb250YWluZXIsIG9yIHBsYW5ldGFyeSBzdHJ1Y3R1cmUpIGZvciB3cmFwcGluZyBpbnRvIGFuIE5GVC4gVGhlIGVudGl0eSBtdXN0IGJlIGlkbGUgd2l0aCBlbXB0eSBjYXJnbyBhbmQgbm8gc2NoZWR1bGVkIHRhc2tzLiBDb21wdXRlcyB0aGUgd3JhcCBjb3N0IGFuZCBmZWUsIGRlYml0cyB0aGVtIGZyb20gdGhlIG93bmVyJ3MgcGxhdGZvcm0gZGVwb3NpdCBiYWxhbmNlLCBkZXJpdmVzIHRoZSBlbnRpdHkgTkZUJ3MgaW1tdXRhYmxlIGRhdGEsIG1pbnRzIHRoZSBORlQgaW5saW5lIGFzIHRoZSBnYW1lIGNvbnRyYWN0LCBhbmQgZXJhc2VzIHRoZSBlbnRpdHkgZnJvbSB0aGUgd29ybGQuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AgIo6UVkNxwpzd2FwbW9kdWxlAAAAACA7PM3NB3RyYW5zaXQAAAAAAES1zc0GdHJhdmVs+wEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogdHJhdmVsCnN1bW1hcnk6ICdNb3ZlIGEgc2hpcCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW5pdGlhdGUgdHJhdmVsIG9mIGFuIGVudGl0eSBmcm9tIGl0cyBjdXJyZW50IGxvY2F0aW9uIHRvIGEgbmV3IGRlc3RpbmF0aW9uLgAAAJ7GqtLUCHVuZGVwbG955wQtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogdW5kZXBsb3kKc3VtbWFyeTogJ1BhY2sgYSBkZXBsb3llZCBlbnRpdHkgaW50byBhIGhvc3QnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClBhY2sgYW4gZW50aXR5IGludG8gYSBob3N0IGVudGl0eSdzIGNhcmdvIGFzIGEgcGFja2VkLWVudGl0eSBpdGVtLiBIb3N0IGFuZCB0YXJnZXQgbXVzdCBzaGFyZSB0aGUgc2FtZSBvd25lciBhbmQgY29vcmRpbmF0ZXMsIHRoZSBob3N0IG11c3QgaGF2ZSBsb2FkZXJzIGFuZCBlbm91Z2ggY2FwYWNpdHkgZm9yIHRoZSBwYWNrZWQgbWFzcywgYW5kIHRoZSB0YXJnZXQgbXVzdCBiZSBpZGxlIHdpdGggZW1wdHkgY2FyZ28uIENyZWF0ZXMgYW4gZW50aXR5Z3JvdXAgYW5kIHNjaGVkdWxlcyB1bmRlcGxveSB0YXNrcyBvbiBib3RoIGVudGl0aWVzOyBvbiByZXNvbHV0aW9uIHRoZSB0YXJnZXQgaXMgZXJhc2VkIGFuZCB0aGUgcGFja2VkIGVudGl0eSBpcyBhZGRlZCB0byB0aGUgaG9zdCdzIGNhcmdvLiBJbnZlcnNlIG9mIGRlcGxveS4AAAAAJEPj1AZ1bmxvYWQAAAAAAABQr+EEd2FycJ8DLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHdhcnAKc3VtbWFyeTogJ1dhcnAgdG8gYSBkZXN0aW5hdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW5zdGFudGx5IHRlbGVwb3J0IGFuIGVudGl0eSB0byBhIGRlc3RpbmF0aW9uIHN5c3RlbS4gUmVxdWlyZXMgd2FycCBjYXBhYmlsaXR5LCBmdWxsIGVuZXJneSwgZW1wdHkgY2FyZ28sIGFuZCBhbiBlbXB0eSBzY2hlZHVsZS4gVGhlIGRlc3RpbmF0aW9uIG11c3QgYmUgYSB2YWxpZCBzeXN0ZW0gd2l0aGluIHdhcnAgcmFuZ2UuIFJlc29sdmVzIGltbWVkaWF0ZWx5IGFzIGEgemVyby1kdXJhdGlvbiB0YXNrLgAAAAAAoKrjBHdpcGWyAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB3aXBlCnN1bW1hcnk6ICdERUJVRzogd2lwZSBhY3Rpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0RAAAAAADKrkEDaTY0AAAJY2FyZ29fcm93AAAAAGDpTEQDaTY0AAAJY2xhaW1fcm93AAAAAGQnJUUDaTY0AAAKY29tbWl0X3JvdwAAAAD47PJUA2k2NAAACmVudGl0eV9yb3cAqqaX+ezyVANpNjQAAA9lbnRpdHlncm91cF9yb3cAALAK++zyVANpNjQAAA5lbnRpdHlfc2VxX3JvdwAAAACAhmhVA2k2NAAACWVwb2NoX3JvdwAAYG5NivKaA2k2NAAADW5mdGNvbmZpZ19yb3cAAGALqYjMpQNpNjQAABFvcmFjbGVfY29uZmlnX3JvdwAAAACriMylA2k2NAAACm9yYWNsZV9yb3cAAAAAXOVNrANpNjQAAApwbGF5ZXJfcm93AAAAQO2rsLoDaTY0AAALcmVzZXJ2ZV9yb3cAAAAARKO2ugNpNjQAAApyZXZlYWxfcm93AAAAAACVTcYDaTY0AAAJc3RhdGVfcm93AAAAAACsqs8DaTY0AAAJdHlwZXNfcm93AABza1JUzeUDaTY0AAAOd3JhcGNvbmZpZ19yb3cAAAAZU1TN5QNpNjQAAAx3cmFwY29zdF9yb3cBEVNoaXBsb2FkIChTZXJ2ZXIpEVNoaXBsb2FkIChTZXJ2ZXIpAAAAOgAAyDTWFJ0+DHRhc2tfcmVzdWx0cwAAAABEhaZBDmNhbmNlbF9yZXN1bHRzAADINFbpTEQMdGFza19yZXN1bHRzAAAAAIC8zEUMdGFza19yZXN1bHRzAAAADbtIpUoMdGFza19yZXN1bHRzAAAAAHgaq0oMdGFza19yZXN1bHRzAIDPLk+FsEoGc3RyaW5nAAAAAFzVsmEMdGFza19yZXN1bHRzAABgbk2KsmILZ2FtZV9jb25maWcAQHaYVpWyYg5leHRlbmRlZF9hc3NldAAUmiZjl7JiBnVpbnQ2NABUPI65qLJiCHVpbnQxNltdAADAEeWpsmILZW51bV9yZXN1bHQAsHLZ5amyYg1lbnRpdHlfaW5mb1tdAADw2eWpsmILZW50aXR5X2luZm8ATDZJquyyYg9pdGVtZGF0YV9yZXN1bHQAAE5OquyyYg9pdGVtX2lkc19yZXN1bHQAAABYquyyYgppdGVtc19pbmZvAFT1WarssmIFdWludDiAVfVZquyyYgtlbnVtX3Jlc3VsdABMVjJNB7NiEGtpbmRfbWV0YV9yZXN1bHQAJnXZIBqzYg1sb2NhdGlvbl9pbmZvAIDJJiEas2IQbG9jYXRpb25fZGVyaXZlZACwqj4nKrNiC2VudW1fcmVzdWx0AABWUScqs2IObW9kdWxlc19yZXN1bHQAAPDnGjWzYgtuZWFyYnlfaW5mbwCAwubkNbNiCHN0cmluZ1tdAABd0+U1s2IObmZ0aW5mb19yZXN1bHQAALjKm1izYgtwbGF5ZXJfaW5mb6CyyfjRW7NiD3Byb2plY3RlZF9zdGF0ZQAAUNUhdbNiDnJlY2lwZXNfcmVzdWx0AABW1SF1s2IOcmVjaXBlc19yZXN1bHQAAM4GYXWzYgtlbnVtX3Jlc3VsdACw2ldhdbNiE3N0cmF0dW1fcmVtYWluaW5nW12AFbqaYnWzYhByZXNvdXJjZXNfcmVzdWx0AAAAONOIs2IVZW50aXR5X2xheW91dHNfcmVzdWx0AIDU2dyMs2IMc3RyYXR1bV9kYXRhgJW7RkqNs2IQZW50aXR5X3N1bW1hcnlbXQBUpE1eyrNiDXdvcm1ob2xlX2luZm+QHZ7m5qrpZQx0YXNrX3Jlc3VsdHMAotrm5qrpZQx0YXNrX3Jlc3VsdHMAAAAAANCwaQtjaGVja3N1bTI1NgAAAECE0rBpC2NoZWNrc3VtNTEyAAAAADQ0tYkMdGFza19yZXN1bHRzAAAAAACQDI0MdGFza19yZXN1bHRzAACIVzPp8poGc3RyaW5nAABl1yCFTKwMdGFza19yZXN1bHRzAHx2eSqFTKwMdGFza19yZXN1bHRzAAAAil3TkLoMdGFza19yZXN1bHRzAAAAQO1IsboPcmVzb2x2ZV9yZXN1bHRzAECMRu1IsboScmVzb2x2ZWFsbF9yZXN1bHRzAACg7BrEacYMdGFza19yZXN1bHRzAIDPLk/FacYMdGFza19yZXN1bHRzAAAAIDs8zc0MdGFza19yZXN1bHRzAAAAAES1zc0MdGFza19yZXN1bHRzAAAAnsaq0tQMdGFza19yZXN1bHRzAAAAACRD49QMdGFza19yZXN1bHRzAAAAAABQr+EMdGFza19yZXN1bHRz');
|
|
451
|
+
const abiBlob = antelope.Blob.from('DmVvc2lvOjphYmkvMS4yAhVCX3ZlY3Rvcl9lbnRpdHlfcmVmX0UMZW50aXR5X3JlZltdDWxvY2F0aW9uX3R5cGUFdWludDisAQlhZGRtb2R1bGUABAllbnRpdHlfaWQGdWludDY0DG1vZHVsZV9pbmRleAV1aW50OAptb2R1bGVfcmVmCWNhcmdvX3JlZgp0YXJnZXRfcmVmCmNhcmdvX3JlZj8IYWRkbmV4dXMAAwpuZXh1c19uYW1lBnN0cmluZwF4BWludDY0AXkFaW50NjQJYWRkb3JhY2xlAAEJb3JhY2xlX2lkBG5hbWUFYmxlbmQAAgJpZAZ1aW50NjQGaW5wdXRzDGNhcmdvX2l0ZW1bXQlidWlsZHBsb3QAAgpidWlsZGVyX2lkBnVpbnQ2NAdwbG90X2lkBnVpbnQ2NAZjYW5jZWwAAwJpZAZ1aW50NjQIbGFuZV9rZXkFdWludDgFY291bnQGdWludDY0DmNhbmNlbF9yZXN1bHRzAAYJZW50aXR5X2lkBnVpbnQ2NAtlbnRpdHlfdHlwZQRuYW1lD2NhbmNlbGxlZF9jb3VudAV1aW50OBBzY2hlZHVsZV9zdGFydGVkC3RpbWVfcG9pbnQ/C2VudGl0eWdyb3VwB3VpbnQ2ND8NZ3JvdXBfbWVtYmVycxZCX3ZlY3Rvcl9lbnRpdHlfcmVmX0U/CmNhcmdvX2l0ZW0ABQdpdGVtX2lkBnVpbnQxNgVzdGF0cwZ1aW50NjQHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQhxdWFudGl0eQZ1aW50MzIJZW50aXR5X2lkB3VpbnQ2ND8JY2FyZ29fcmVmAAQHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0B21vZHVsZXMObW9kdWxlX2VudHJ5W10JZW50aXR5X2lkB3VpbnQ2ND8JY2FyZ29fcm93AAcCaWQGdWludDY0CWVudGl0eV9pZAZ1aW50NjQHaXRlbV9pZAZ1aW50NjQIcXVhbnRpdHkGdWludDY0BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdC3NlcXVlbmNlX2lkB3VpbnQ2ND8KY2FyZ29fdmlldwAGB2l0ZW1faWQGdWludDE2BXN0YXRzBnVpbnQ2NAdtb2R1bGVzDm1vZHVsZV9lbnRyeVtdCHF1YW50aXR5BnVpbnQzMgJpZAZ1aW50NjQJZW50aXR5X2lkB3VpbnQ2ND8JY2xhaW1wbG90AAMKYnVpbGRlcl9pZAZ1aW50NjQOdGFyZ2V0X2l0ZW1faWQGdWludDE2BHNsb3QMY2x1c3Rlcl9zbG90CWNsZWFucnN2cAACBWVwb2NoBnVpbnQ2NAhtYXhfcm93cwZ1aW50NjQMY2x1c3Rlcl9jZWxsAAMCZ3gEaW50OAJneQRpbnQ4BmVudGl0eQZ1aW50NjQLY2x1c3Rlcl9yb3cAAgRyb290BnVpbnQ2NAVjZWxscw5jbHVzdGVyX2NlbGxbXQxjbHVzdGVyX3Nsb3QAAwNodWIGdWludDY0Amd4BGludDgCZ3kEaW50OAZjb21taXQAAwlvcmFjbGVfaWQEbmFtZQVlcG9jaAZ1aW50NjQGY29tbWl0C2NoZWNrc3VtMjU2CmNvbW1pdF9yb3cABAJpZAZ1aW50NjQFZXBvY2gGdWludDY0CW9yYWNsZV9pZARuYW1lBmNvbW1pdAtjaGVja3N1bTI1Ngljb25maWdsb2cAAQZjb25maWcLZ2FtZV9jb25maWcLY29vcmRpbmF0ZXMAAwF4BWludDY0AXkFaW50NjQBegd1aW50MTY/BWNyYWZ0AAYCaWQGdWludDY0CXJlY2lwZV9pZAZ1aW50MTYIcXVhbnRpdHkGdWludDMyBmlucHV0cwxjYXJnb19pdGVtW10GdGFyZ2V0B3VpbnQ2ND8Ec2xvdAZ1aW50OD8MY3JhZnRlcl9sYW5lAAQKc2xvdF9pbmRleAV1aW50OAVzcGVlZAZ1aW50MTYFZHJhaW4GdWludDMyCm91dHB1dF9wY3QGdWludDE2CGRlbW9saXNoAAEJZW50aXR5X2lkBnVpbnQ2NAZkZXBsb3kAAwJpZAZ1aW50NjQDcmVmCWNhcmdvX3JlZgRzbG90DWNsdXN0ZXJfc2xvdD8KZGVzY2VudGl0eQAEB2l0ZW1faWQGdWludDE2Cmh1bGxfc3RhdHMGdWludDY0DG1vZHVsZV9pdGVtcwh1aW50MTZbXQxtb2R1bGVfc3RhdHMIdWludDY0W10GZW5hYmxlAAEHZW5hYmxlZARib29sDGVuZXJneV9zdGF0cwACCGNhcGFjaXR5BnVpbnQzMghyZWNoYXJnZQZ1aW50MzIUZW50aXR5X2N1cnJlbnRfc3RhdGUAAgtjb29yZGluYXRlcwtjb29yZGluYXRlcwZlbmVyZ3kGdWludDMyD2VudGl0eV9kZWZhdWx0cwACC3dhcmVob3VzZV96BnVpbnQxNgtjb250YWluZXJfegZ1aW50MTYLZW50aXR5X2luZm8AFgR0eXBlBG5hbWUCaWQGdWludDY0BW93bmVyBG5hbWULZW50aXR5X25hbWUGc3RyaW5nC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzB2l0ZW1faWQGdWludDE2CWNhcmdvbWFzcwZ1aW50MzIFY2FyZ28MY2FyZ29fdmlld1tdB21vZHVsZXMObW9kdWxlX2VudHJ5W10GZW5lcmd5B3VpbnQzMj8IaHVsbG1hc3MHdWludDMyPwhjYXBhY2l0eQd1aW50MzI/B2VuZ2luZXMPbW92ZW1lbnRfc3RhdHM/BHdhcnALd2FycF9zdGF0cz8JZ2VuZXJhdG9yDWVuZXJneV9zdGF0cz8GaGF1bGVyDWhhdWxlcl9zdGF0cz8OZ2F0aGVyZXJfbGFuZXMPZ2F0aGVyZXJfbGFuZVtdDWNyYWZ0ZXJfbGFuZXMOY3JhZnRlcl9sYW5lW10MbG9hZGVyX2xhbmVzDWxvYWRlcl9sYW5lW10IbGF1bmNoZXIPbGF1bmNoZXJfc3RhdHM/BWxhbmVzBmxhbmVbXQVob2xkcwZob2xkW10NZW50aXR5X2xheW91dAACDmVudGl0eV9pdGVtX2lkBnVpbnQxNgVzbG90cwpzbG90X2RlZltdFWVudGl0eV9sYXlvdXRzX3Jlc3VsdAABCGVudGl0aWVzD2VudGl0eV9sYXlvdXRbXQplbnRpdHlfcmVmAAILZW50aXR5X3R5cGUEbmFtZQllbnRpdHlfaWQGdWludDY0CmVudGl0eV9yb3cADAJpZAZ1aW50NjQFb3duZXIEbmFtZQRraW5kBG5hbWUHaXRlbV9pZAZ1aW50MTYEbmFtZQZzdHJpbmcFc3RhdHMGdWludDY0C2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzBmVuZXJneQd1aW50MzI/CWNhcmdvbWFzcwZ1aW50MzIHbW9kdWxlcw5tb2R1bGVfZW50cnlbXQVsYW5lcwZsYW5lW10FaG9sZHMGaG9sZFtdDmVudGl0eV9zZXFfcm93AAEHbmV4dF9pZAZ1aW50NjQOZW50aXR5X3N1bW1hcnkACAR0eXBlBG5hbWUCaWQGdWludDY0BW93bmVyBG5hbWULZW50aXR5X25hbWUGc3RyaW5nC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzB2lzX2lkbGUEYm9vbA5yZXNvbHZlZF9jb3VudAZ1aW50MzINcGVuZGluZ19jb3VudAZ1aW50MzIQZW50aXR5X3Rhc2tfaW5mbwAECWVudGl0eV9pZAZ1aW50NjQLZW50aXR5X3R5cGUEbmFtZQp0YXNrX2NvdW50BXVpbnQ4EHNjaGVkdWxlX3N0YXJ0ZWQKdGltZV9wb2ludA9lbnRpdHlncm91cF9yb3cAAgJpZAZ1aW50NjQMcGFydGljaXBhbnRzDGVudGl0eV9yZWZbXQtlbnVtX21lbWJlcgACBXZhbHVlBXVpbnQ4BG5hbWUGc3RyaW5nC2VudW1fcmVzdWx0AAEHbWVtYmVycw1lbnVtX21lbWJlcltdCWVwb2NoX3JvdwAEBWVwb2NoBnVpbnQ2NApvcmFjbGVfaWRzBm5hbWVbXQl0aHJlc2hvbGQFdWludDgEc2VlZAtjaGVja3N1bTI1NhBmb290cHJpbnRfcmVzdWx0AAEFY2VsbHMLZ3JpZF9jZWxsW10LZ2FtZV9jb25maWcAAwd2ZXJzaW9uBnVpbnQzMghkZWZhdWx0cw9lbnRpdHlfZGVmYXVsdHMFaXRlbXMKaXRlbV9kZWZbXQZnYXRoZXIABQlzb3VyY2VfaWQGdWludDY0DmRlc3RpbmF0aW9uX2lkBnVpbnQ2NAdzdHJhdHVtBnVpbnQxNghxdWFudGl0eQZ1aW50MzIEc2xvdAZ1aW50OD8NZ2F0aGVyZXJfbGFuZQAFCnNsb3RfaW5kZXgFdWludDgFeWllbGQGdWludDE2BWRyYWluBnVpbnQzMgVkZXB0aAZ1aW50MTYKb3V0cHV0X3BjdAZ1aW50MTYMZ2VuZXNpc2ZsZWV0AAEIZW50aXRpZXMMZW50aXR5X3Jvd1tdCmdldGNsdXN0ZXIAAQZodWJfaWQGdWludDY0CWdldGNvbmZpZwAAC2dldGRpc3RhbmNlAAQCYXgFaW50NjQCYXkFaW50NjQCYngFaW50NjQCYnkFaW50NjQLZ2V0ZWxpZ2libGUAAgZjb29yZHMLY29vcmRpbmF0ZXMHc3RyYXR1bQZ1aW50MTYJZ2V0ZW50Y2xzAAALZ2V0ZW50aXRpZXMAAgVvd25lcgRuYW1lC2VudGl0eV90eXBlBW5hbWU/CWdldGVudGl0eQABCWVudGl0eV9pZAZ1aW50NjQMZ2V0Zm9vdHByaW50AAEHaXRlbV9pZAZ1aW50MTYLZ2V0aXRlbWRhdGEAAApnZXRpdGVtaWRzAAAIZ2V0aXRlbXMAAAxnZXRpdGVtdHlwZXMAAAtnZXRraW5kbWV0YQAAC2dldGxvY2F0aW9uAAIBeAVpbnQ2NAF5BWludDY0CmdldGxvY2RhdGEAAgF4BWludDY0AXkFaW50NjQLZ2V0bW9kdHlwZXMAAApnZXRtb2R1bGVzAAAJZ2V0bmVhcmJ5AAIJZW50aXR5X2lkBnVpbnQ2NAhyZWNoYXJnZQRib29sCmdldG5mdGluZm8AAAlnZXRwbGF5ZXIAAQdhY2NvdW50BG5hbWUMZ2V0cHJvanN0YXRlAAIJZW50aXR5X2lkBnVpbnQ2NAp0YXNrX2NvdW50BnVpbnQ4PwlnZXRyZWNpcGUAAQ5vdXRwdXRfaXRlbV9pZAZ1aW50MTYKZ2V0cmVjaXBlcwACC2xvd2VyX2JvdW5kBnVpbnQxNgVsaW1pdAV1aW50OApnZXRyZXNjYXRzAAALZ2V0cmVzZXJ2ZXMAAgF4BWludDY0AXkFaW50NjQMZ2V0cmVzb3VyY2VzAAAIZ2V0c2xvdHMAAApnZXRzdHJhdHVtAAMBeAVpbnQ2NAF5BWludDY0B3N0cmF0dW0GdWludDE2DGdldHN1bW1hcmllcwACBW93bmVyBG5hbWULZW50aXR5X3R5cGUFbmFtZT8LZ2V0d29ybWhvbGUAAgF4BWludDY0AXkFaW50NjQJZ3JpZF9jZWxsAAICZ3gEaW50OAJneQRpbnQ4DGdyb3VwdHJhbnNpdAAFCGVudGl0aWVzDGVudGl0eV9yZWZbXQJheAVpbnQ2NAJheQVpbnQ2NAJieAVpbnQ2NAJieQVpbnQ2NAtncm91cHRyYXZlbAAECGVudGl0aWVzDGVudGl0eV9yZWZbXQF4BWludDY0AXkFaW50NjQIcmVjaGFyZ2UEYm9vbARoYXNoAAEFdmFsdWUGc3RyaW5nB2hhc2g1MTIAAQV2YWx1ZQZzdHJpbmcMaGF1bGVyX3N0YXRzAAMIY2FwYWNpdHkFdWludDgKZWZmaWNpZW5jeQZ1aW50MTYFZHJhaW4GdWludDMyBGhvbGQABQJpZAZ1aW50NjQEa2luZAV1aW50OAtjb3VudGVycGFydAplbnRpdHlfcmVmBXVudGlsCnRpbWVfcG9pbnQNaW5jb21pbmdfbWFzcwZ1aW50MzIIaXRlbV9kZWYABQJpZAZ1aW50MTYEbWFzcwZ1aW50MzIEdHlwZQV1aW50OAdzdWJ0eXBlBXVpbnQ4BHRpZXIFdWludDgMaXRlbV9pZF9wYWlyAAICaWQGdWludDE2BG5hbWUGc3RyaW5nD2l0ZW1faWRzX3Jlc3VsdAABBWl0ZW1zDml0ZW1faWRfcGFpcltdD2l0ZW1kYXRhX3Jlc3VsdAACBWl0ZW1zCml0ZW1fZGVmW10HcmVjaXBlcw5yZWNpcGVzX3Jlc3VsdAppdGVtc19pbmZvAAEFaXRlbXMKaXRlbV9kZWZbXQRqb2luAAEHYWNjb3VudARuYW1lEGtpbmRfbWV0YV9yZXN1bHQAAgVraW5kcw9raW5kX21ldGFfcm93W10JdGVtcGxhdGVzE3RlbXBsYXRlX21ldGFfcm93W10Na2luZF9tZXRhX3JvdwAFBGtpbmQEbmFtZQ5jbGFzc2lmaWNhdGlvbgV1aW50OBBjYXBhYmlsaXR5X2ZsYWdzBXVpbnQ4B3pfY29vcmQGdWludDMyDWRlZmF1bHRfbGFiZWwGc3RyaW5nBGxhbmUAAghsYW5lX2tleQV1aW50OAhzY2hlZHVsZQhzY2hlZHVsZQZsYXVuY2gAAwtsYXVuY2hlcl9pZAZ1aW50NjQKY2F0Y2hlcl9pZAZ1aW50NjQFaXRlbXMMY2FyZ29faXRlbVtdDmxhdW5jaGVyX3N0YXRzAAMLY2hhcmdlX3JhdGUGdWludDE2CHZlbG9jaXR5BnVpbnQxNgVkcmFpbgZ1aW50MTYEbG9hZAADAmlkBnVpbnQ2NAdmcm9tX2lkBnVpbnQ2NAVpdGVtcwxjYXJnb19pdGVtW10LbG9hZGVyX2xhbmUABApzbG90X2luZGV4BXVpbnQ4BG1hc3MGdWludDMyBnRocnVzdAZ1aW50MTYKb3V0cHV0X3BjdAZ1aW50MTYQbG9jYXRpb25fZGVyaXZlZAACDHN0YXRpY19wcm9wcw9sb2NhdGlvbl9zdGF0aWMEc2l6ZQZ1aW50MTYNbG9jYXRpb25faW5mbwADBmNvb3Jkcwtjb29yZGluYXRlcwlpc19zeXN0ZW0EYm9vbAtpc193b3JtaG9sZQRib29sD2xvY2F0aW9uX3N0YXRpYwAFBmNvb3Jkcwtjb29yZGluYXRlcwR0eXBlDWxvY2F0aW9uX3R5cGUHc3VidHlwZQV1aW50OAVzZWVkMAV1aW50OAVzZWVkMQV1aW50OAxtb2R1bGVfZW50cnkAAgR0eXBlBXVpbnQ4CWluc3RhbGxlZA5wYWNrZWRfbW9kdWxlPwttb2R1bGVfaW5mbwAEAmlkBnVpbnQxNgRtYXNzBnVpbnQzMgttb2R1bGVfdHlwZQV1aW50OAR0aWVyBXVpbnQ4Dm1vZHVsZXNfcmVzdWx0AAEHbW9kdWxlcw1tb2R1bGVfaW5mb1tdDm1vdmVtZW50X3N0YXRzAAIGdGhydXN0BnVpbnQzMgVkcmFpbgZ1aW50MzIIbW92ZXRpbGUABQZodWJfaWQGdWludDY0B2Zyb21fZ3gEaW50OAdmcm9tX2d5BGludDgFdG9fZ3gEaW50OAV0b19neQRpbnQ4C25lYXJieV9pbmZvAAUKY2FuX3RyYXZlbARib29sB2N1cnJlbnQUZW50aXR5X2N1cnJlbnRfc3RhdGUJcHJvamVjdGVkFGVudGl0eV9jdXJyZW50X3N0YXRlCm1heF9lbmVyZ3kGdWludDMyB3N5c3RlbXMPbmVhcmJ5X3N5c3RlbVtdDW5lYXJieV9zeXN0ZW0ABAhkaXN0YW5jZQZ1aW50NjQLZW5lcmd5X2Nvc3QGdWludDY0C2ZsaWdodF90aW1lBnVpbnQzMghsb2NhdGlvbg1sb2NhdGlvbl9pbmZvDm5mdF9jYXJnb19pdGVtAAQHaXRlbV9pZAZ1aW50MTYFc3RhdHMGdWludDY0B21vZHVsZXMObW9kdWxlX2VudHJ5W10IcXVhbnRpdHkGdWludDMyEG5mdF9pdGVtX3BheWxvYWQAAgRpdGVtDm5mdF9jYXJnb19pdGVtCGxvY2F0aW9uDGNvb3JkaW5hdGVzPw5uZnRfc2NoZW1hX2RlZgACC3NjaGVtYV9uYW1lBG5hbWUGZmllbGRzDnNjaGVtYV9maWVsZFtdEG5mdF90ZW1wbGF0ZV9kZWYAAwdpdGVtX2lkBnVpbnQxNgtzY2hlbWFfbmFtZQRuYW1lC3RlbXBsYXRlX2lkBWludDMyDW5mdGNvbmZpZ19yb3cAAwdpdGVtX2lkBnVpbnQxNgt0ZW1wbGF0ZV9pZAVpbnQzMgtzY2hlbWFfbmFtZQRuYW1lCW5mdGltZ3VybAACBGl0ZW0KY2FyZ29faXRlbQhsb2NhdGlvbgxjb29yZGluYXRlcz8ObmZ0aW5mb19yZXN1bHQAAgdzY2hlbWFzEG5mdF9zY2hlbWFfZGVmW10JdGVtcGxhdGVzEm5mdF90ZW1wbGF0ZV9kZWZbXQZub3RpZnkAAQVldmVudAp0YXNrX2V2ZW50EW9yYWNsZV9jb25maWdfcm93AAEJdGhyZXNob2xkBXVpbnQ4Cm9yYWNsZV9yb3cAAQJpZARuYW1lDXBhY2tlZF9tb2R1bGUAAgdpdGVtX2lkBnVpbnQxNgVzdGF0cwZ1aW50NjQKcGxhY2VjYXJnbwADBW93bmVyBG5hbWUHaG9zdF9pZAZ1aW50NjQIYXNzZXRfaWQGdWludDY0C3BsYWNlZW50aXR5AAMFb3duZXIEbmFtZQhhc3NldF9pZAZ1aW50NjQPdGFyZ2V0X25leHVzX2lkBnVpbnQ2NAtwbGF5ZXJfaW5mbwADBW93bmVyBG5hbWUJaXNfcGxheWVyBGJvb2wMY29tcGFueV9uYW1lBnN0cmluZwpwbGF5ZXJfcm93AAEFb3duZXIEbmFtZQ9wcm9qZWN0ZWRfc3RhdGUADwVvd25lcgRuYW1lC2Nvb3JkaW5hdGVzC2Nvb3JkaW5hdGVzBmVuZXJneQd1aW50MzI/CWNhcmdvbWFzcwZ1aW50MzIFY2FyZ28MY2FyZ29fdmlld1tdCGh1bGxtYXNzB3VpbnQzMj8IY2FwYWNpdHkHdWludDMyPwdlbmdpbmVzD21vdmVtZW50X3N0YXRzPwR3YXJwC3dhcnBfc3RhdHM/CWdlbmVyYXRvcg1lbmVyZ3lfc3RhdHM/BmhhdWxlcg1oYXVsZXJfc3RhdHM/DmdhdGhlcmVyX2xhbmVzD2dhdGhlcmVyX2xhbmVbXQ1jcmFmdGVyX2xhbmVzDmNyYWZ0ZXJfbGFuZVtdDGxvYWRlcl9sYW5lcw1sb2FkZXJfbGFuZVtdCGxhdW5jaGVyD2xhdW5jaGVyX3N0YXRzPwhyZWNoYXJnZQABAmlkBnVpbnQ2NAxyZWNpcGVfaW5wdXQAAgdpdGVtX2lkBnVpbnQxNghxdWFudGl0eQZ1aW50MzIQcmVjaXBlX2l0ZW1faW5mbwACAmlkBnVpbnQxNgRtYXNzBnVpbnQzMg9yZWNpcGVfcmVzcG9uc2UABw5vdXRwdXRfaXRlbV9pZAZ1aW50MTYLb3V0cHV0X21hc3MGdWludDMyBmlucHV0cw5yZWNpcGVfaW5wdXRbXQpzdGF0X3Nsb3RzFHN0YXRfc2xvdF9yZXNwb25zZVtdDWJsZW5kX3dlaWdodHMFYnl0ZXMLb3V0cHV0X2l0ZW0QcmVjaXBlX2l0ZW1faW5mbwtpbnB1dF9pdGVtcxJyZWNpcGVfaXRlbV9pbmZvW10OcmVjaXBlc19yZXN1bHQAAQdyZWNpcGVzEXJlY2lwZV9yZXNwb25zZVtdDHJlZnJzaGVudGl0eQABCWVudGl0eV9pZAZ1aW50NjQMcmVtb3Zlb3JhY2xlAAEJb3JhY2xlX2lkBG5hbWUGcmVuYW1lAAICaWQGdWludDY0BG5hbWUGc3RyaW5nC3Jlc2VydmVfcm93AAUCaWQGdWludDY0CGNvb3JkX2lkBnVpbnQ2NAdzdHJhdHVtBnVpbnQxNglyZW1haW5pbmcGdWludDMyCmxhc3RfYmxvY2sUYmxvY2tfdGltZXN0YW1wX3R5cGUHcmVzb2x2ZQACAmlkBnVpbnQ2NAVjb3VudAd1aW50NjQ/D3Jlc29sdmVfcmVzdWx0cwAGCWVudGl0eV9pZAZ1aW50NjQLZW50aXR5X3R5cGUEbmFtZQ5yZXNvbHZlZF9jb3VudAV1aW50OBRuZXdfc2NoZWR1bGVfc3RhcnRlZAt0aW1lX3BvaW50PwtlbnRpdHlncm91cAd1aW50NjQ/DWdyb3VwX21lbWJlcnMWQl92ZWN0b3JfZW50aXR5X3JlZl9FPwpyZXNvbHZlYWxsAAEFb3duZXIEbmFtZRJyZXNvbHZlYWxsX3Jlc3VsdHMAAgdzY2FubmVkBnVpbnQzMghyZXNvbHZlZAZ1aW50MzINcmVzb3VyY2VfaW5mbwAEAmlkBnVpbnQxNgRtYXNzBnVpbnQzMghjYXRlZ29yeQV1aW50OAR0aWVyBXVpbnQ4DnJlc291cmNlX3N0YXRzAAMFc3RhdDEGdWludDE2BXN0YXQyBnVpbnQxNgVzdGF0MwZ1aW50MTYQcmVzb3VyY2VzX3Jlc3VsdAABCXJlc291cmNlcw9yZXNvdXJjZV9pbmZvW10GcmV2ZWFsAAMJb3JhY2xlX2lkBG5hbWUFZXBvY2gGdWludDY0BnJldmVhbAtjaGVja3N1bTI1NgpyZXZlYWxfcm93AAQCaWQGdWludDY0BWVwb2NoBnVpbnQ2NAlvcmFjbGVfaWQEbmFtZQZyZXZlYWwLY2hlY2tzdW0yNTYIcm1tb2R1bGUAAwllbnRpdHlfaWQGdWludDY0DG1vZHVsZV9pbmRleAV1aW50OAp0YXJnZXRfcmVmCmNhcmdvX3JlZj8Icm1uZnRjZmcAAQdpdGVtX2lkBnVpbnQxNghzY2hlZHVsZQACB3N0YXJ0ZWQKdGltZV9wb2ludAV0YXNrcwZ0YXNrW10Mc2NoZW1hX2ZpZWxkAAIEbmFtZQZzdHJpbmcKZmllbGRfdHlwZQZzdHJpbmcJc2V0bmZ0Y2ZnAAMHaXRlbV9pZAZ1aW50MTYLdGVtcGxhdGVfaWQFaW50MzILc2NoZW1hX25hbWUEbmFtZQxzZXR0aHJlc2hvbGQAAQl0aHJlc2hvbGQFdWludDgLc2V0d3JhcGNvc3QAAwlpdGVtX3R5cGUFdWludDgEdGllcgV1aW50OAZhbW91bnQGdWludDY0CnNldHdyYXBmZWUAAgdmZWVfcGN0BnVpbnQxNgtmZWVfYWNjb3VudARuYW1lCHNsb3RfZGVmAAIEdHlwZQV1aW50OApvdXRwdXRfcGN0BnVpbnQxNhJzdGF0X3Nsb3RfcmVzcG9uc2UAAQdzb3VyY2VzDXN0YXRfc291cmNlW10Lc3RhdF9zb3VyY2UAAgtpbnB1dF9pbmRleAV1aW50OBBpbnB1dF9zdGF0X2luZGV4BXVpbnQ4CXN0YXRlX3JvdwADB2VuYWJsZWQEYm9vbAVlcG9jaAZ1aW50MzIEc2VlZAtjaGVja3N1bTI1NglzdG93Y2FyZ28ABQVvd25lcgRuYW1lCWVudGl0eV9pZAZ1aW50NjQIbmV4dXNfaWQGdWludDY0CGNhcmdvX2lkBnVpbnQ2NAhxdWFudGl0eQZ1aW50NjQKc3Rvd2VudGl0eQADBW93bmVyBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAhuZXh1c19pZAZ1aW50NjQMc3RyYXR1bV9kYXRhAAIHc3RyYXR1bQxzdHJhdHVtX2luZm8Fc3RhdHMOcmVzb3VyY2Vfc3RhdHMMc3RyYXR1bV9pbmZvAAUHaXRlbV9pZAZ1aW50MTYEc2VlZAZ1aW50NjQIcmljaG5lc3MGdWludDE2B3Jlc2VydmUGdWludDMyC3Jlc2VydmVfbWF4BnVpbnQzMhFzdHJhdHVtX3JlbWFpbmluZwADB3N0cmF0dW0GdWludDE2CXJlbWFpbmluZwZ1aW50MzIKbGFzdF9ibG9jaxRibG9ja190aW1lc3RhbXBfdHlwZQpzd2FwbW9kdWxlAAMJZW50aXR5X2lkBnVpbnQ2NAxtb2R1bGVfaW5kZXgFdWludDgKbW9kdWxlX3JlZgljYXJnb19yZWYEdGFzawAJBHR5cGUFdWludDgIZHVyYXRpb24GdWludDMyCmNhbmNlbGFibGUFdWludDgLY29vcmRpbmF0ZXMMY29vcmRpbmF0ZXM/BWNhcmdvDGNhcmdvX2l0ZW1bXQxlbnRpdHl0YXJnZXQLZW50aXR5X3JlZj8LZW50aXR5Z3JvdXAHdWludDY0PwtlbmVyZ3lfY29zdAd1aW50MzI/BGhvbGQHdWludDY0Pwp0YXNrX2V2ZW50AAoKZXZlbnRfdHlwZQV1aW50OAVvd25lcgRuYW1lC2VudGl0eV90eXBlBG5hbWUJZW50aXR5X2lkBnVpbnQ2NAp0YXNrX2luZGV4BXVpbnQ4BHRhc2sEdGFzawlzdGFydHNfYXQKdGltZV9wb2ludAxjb21wbGV0ZXNfYXQKdGltZV9wb2ludApuZXdfZW5lcmd5B3VpbnQzMj8IbGFuZV9rZXkFdWludDgMdGFza19yZXN1bHRzAAEIZW50aXRpZXMSZW50aXR5X3Rhc2tfaW5mb1tdEXRlbXBsYXRlX21ldGFfcm93AAMHaXRlbV9pZAZ1aW50MTYEa2luZARuYW1lDWRpc3BsYXlfbGFiZWwGc3RyaW5nB3RyYW5zaXQABQJpZAZ1aW50NjQCYXgFaW50NjQCYXkFaW50NjQCYngFaW50NjQCYnkFaW50NjQGdHJhdmVsAAQCaWQGdWludDY0AXgFaW50NjQBeQVpbnQ2NAhyZWNoYXJnZQRib29sCXR5cGVzX3JvdwAFAmlkBnVpbnQ2NBNlbnRpdHlfc3VtbWFyeV90eXBlDmVudGl0eV9zdW1tYXJ5EGdhbWVfY29uZmlnX3R5cGULZ2FtZV9jb25maWcWc3RyYXR1bV9yZW1haW5pbmdfdHlwZRFzdHJhdHVtX3JlbWFpbmluZxVuZnRfaXRlbV9wYXlsb2FkX3R5cGUQbmZ0X2l0ZW1fcGF5bG9hZAh1bmRlcGxveQACB2hvc3RfaWQGdWludDY0CXRhcmdldF9pZAZ1aW50NjQGdW5sb2FkAAMCaWQGdWludDY0BXRvX2lkBnVpbnQ2NAVpdGVtcwxjYXJnb19pdGVtW10Ed2FycAADAmlkBnVpbnQ2NAF4BWludDY0AXkFaW50NjQKd2FycF9zdGF0cwABBXJhbmdlBnVpbnQzMg13b3JtaG9sZV9pbmZvAAMGY29vcmRzC2Nvb3JkaW5hdGVzC2lzX3dvcm1ob2xlBGJvb2wLZGVzdGluYXRpb24LY29vcmRpbmF0ZXMOd3JhcGNvbmZpZ19yb3cAAgdmZWVfcGN0BnVpbnQxNgtmZWVfYWNjb3VudARuYW1lDHdyYXBjb3N0X3JvdwADCWl0ZW1fdHlwZQV1aW50OAR0aWVyBXVpbnQ4BmFtb3VudAZ1aW50NjRQAABQUScqUzIJYWRkbW9kdWxlxwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogYWRkbW9kdWxlCnN1bW1hcnk6ICdJbnN0YWxsIGEgbW9kdWxlIGludG8gYSBzbG90JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnN0YWxsIGEgbW9kdWxlIGZyb20gY2FyZ28gaW50byBhIG1vZHVsZSBzbG90IG9uIGEgbGl2ZSBlbnRpdHkgb3IgYSBwYWNrZWQgZW50aXR5IGluIGNhcmdvLiBUaGUgZW50aXR5IG11c3QgYmUgaWRsZSB3aXRoIG5vIHNjaGVkdWxlZCB0YXNrcy4gVGhlIG1vZHVsZSB0eXBlIG11c3QgYmUgY29tcGF0aWJsZSB3aXRoIHRoZSB0YXJnZXQgc2xvdCB0eXBlLiBUaGUgbW9kdWxlIGl0ZW0gaXMgcmVtb3ZlZCBmcm9tIGNhcmdvIHVwb24gaW5zdGFsbGF0aW9uLgAAAFh3NVMyCGFkZG5leHVzpwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogYWRkbmV4dXMKc3VtbWFyeTogJ0FkZCBhIG5leHVzIGxvY2F0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpDcmVhdGUgYSBuZXcgbmV4dXMgZW50aXR5IGF0IHRoZSBnaXZlbiBjb29yZGluYXRlcy4gTmV4dXNlcyBhcmUgb3duZWQgYnkgdGhlIGNvbnRyYWN0IGFuZCBzZXJ2ZSBhcyBmaXhlZCBnYXRoZXJpbmcgcG9pbnRzIHdoZXJlIHBsYXllcnMgY2FuIHdyYXAsIHVud3JhcCwgZGVwbG95LCBhbmQgb3RoZXJ3aXNlIGludGVyYWN0IHdpdGggTkZULWJhY2tlZCBhc3NldHMuIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AAFARmUtTMglhZGRvcmFjbGUAAAAAAIA0VTwFYmxlbmT8Ai0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBibGVuZApzdW1tYXJ5OiAnQmxlbmQgY2FyZ28gc3RhY2tzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpDb21iaW5lIG11bHRpcGxlIGNhcmdvIHN0YWNrcyBvZiB0aGUgc2FtZSBpdGVtIHR5cGUgaW50byBhIHNpbmdsZSBzdGFjayB3aXRoIG5ldyBibGVuZGVkIHN0YXRzLiBBbGwgaW5wdXQgc3RhY2tzIG11c3Qgc2hhcmUgdGhlIHNhbWUgaXRlbSBpZC4gVGhlIG91dHB1dCBzdGFjayBoYXMgdGhlIGNvbWJpbmVkIHF1YW50aXR5IG9mIGFsbCBpbnB1dHMuAADINNYUnT4JYnVpbGRwbG90AAAAAABEhaZBBmNhbmNlbMICLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGNhbmNlbApzdW1tYXJ5OiAnQ2FuY2VsIHNjaGVkdWxlZCB0YXNrcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ2FuY2VsIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIHRhc2tzIGZyb20gdGhlIGVuZCBvZiBhbiBlbnRpdHkncyBzY2hlZHVsZS4gVGFza3MgdGhhdCBhcmUgaW1tdXRhYmxlIGFuZCBpbiBwcm9ncmVzcyBjYW5ub3QgYmUgY2FuY2VsbGVkLgAAyDRW6UxECWNsYWltcGxvdAAAAKgb32lURAljbGVhbnJzdnDsAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjbGVhbnJzdnAKc3VtbWFyeTogJ0NsZWFuIHVwIHBhc3QgZXBvY2ggcmVzZXJ2ZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkVyYXNlIHJlc2VydmUgdGFibGUgcm93cyBmcm9tIGEgcGFzdCBlcG9jaC4gQ2Fubm90IGNsZWFuIHRoZSBjdXJyZW50IG9yIGZ1dHVyZSBlcG9jaHMuIFRoZSBtYXhfcm93cyBwYXJhbWV0ZXIgY2FwcyB0aGUgbnVtYmVyIG9mIHJvd3MgZXJhc2VkIHBlciBjYWxsIHRvIGxpbWl0IENQVSB1c2FnZS4AAAAAZCclRQZjb21taXTsAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjb21taXQKc3VtbWFyeTogJ1NldCBjb21taXQgdmFsdWUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClNldCB0aGUgaW5pdGlhbCBjb21taXQgdmFsdWUgZHVyaW5nIGdhbWUgaW5pdGlhbGl6YXRpb24uAABgNDK3JkUJY29uZmlnbG9n3QItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogY29uZmlnbG9nCnN1bW1hcnk6ICdMb2cgZ2FtZSBjb25maWd1cmF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gdGhhdCBsb2dzIHRoZSBjdXJyZW50IGdhbWUgY29uZmlndXJhdGlvbi4gQ2FsbGVkIGlubGluZSBhZnRlciBpbml0aWFsaXphdGlvbiB0byBicm9hZGNhc3QgY29uZmlnIHZpYSBhY3Rpb24gdHJhY2VzLiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAAAAAIC8zEUFY3JhZnTIAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBjcmFmdApzdW1tYXJ5OiAnQ3JhZnQgaXRlbXMgZnJvbSBhIHJlY2lwZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVHJhbnNmb3JtIGNhcmdvIGl0ZW1zIGludG8gYSBuZXcgaXRlbSB1c2luZyBhIHJlY2lwZS4gVGhlIGVudGl0eSBtdXN0IGhhdmUgYSBjcmFmdGVyIG1vZHVsZSBpbnN0YWxsZWQuIENvbnN1bWVzIGVuZXJneSBhbmQgc2NoZWR1bGVzIGEgY3JhZnRpbmcgdGFzayB3aXRoIGR1cmF0aW9uIGJhc2VkIG9uIHRvdGFsIGlucHV0IG1hc3MgYW5kIGNyYWZ0ZXIgc3BlZWQuIElucHV0IHF1YW50aXRpZXMgbXVzdCBleGFjdGx5IG1hdGNoIHRoZSByZWNpcGUgcmVxdWlyZW1lbnRzLgAAAA27SKVKCGRlbW9saXNo8QMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZGVtb2xpc2gKc3VtbWFyeTogJ0RlbW9saXNoIGEgc3RhdGlvbmFyeSBlbnRpdHknCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkRlY29tbWlzc2lvbiBhbiBlbnRpdHksIGVyYXNpbmcgaXQgZnJvbSB0aGUgZ2FtZS4gVGhlIGVudGl0eSBtdXN0IGJlIGlkbGUsIGhhdmUgZW1wdHkgY2FyZ28sIGFuZCBoYXZlIG5vIGluc3RhbGxlZCBtb2R1bGVzIChyZW1vdmUgZWFjaCB2aWEgcm1tb2R1bGUgZmlyc3QpLiBTY2hlZHVsZXMgYSBkZW1vbGlzaCB0YXNrIHRoYXQgZXJhc2VzIHRoZSBlbnRpdHkgb24gcmVzb2x1dGlvbi4gT25seSB2YWxpZCBmb3IgZW50aXRpZXMgdGhhdCBjYW5ub3QgbW92ZTsgdXNlIHVuZGVwbG95IG9yIHdyYXBlbnRpdHkgZm9yIHRoZSByZXN0LgAAAAB4GqtKBmRlcGxveewCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGRlcGxveQpzdW1tYXJ5OiAnRGVwbG95IGEgcGFja2VkIGVudGl0eScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVW5wYWNrIGEgcGFja2VkIGVudGl0eSBpdGVtIChwYWNrZWQgc2hpcCBvciBwYWNrZWQgY29udGFpbmVyKSBmcm9tIGNhcmdvLCBzY2hlZHVsaW5nIGEgZGVwbG95IHRhc2sgdGhhdCBjcmVhdGVzIHRoZSBuZXcgZW50aXR5IGF0IHRoZSBkZXBsb3lpbmcgZW50aXR5J3MgbG9jYXRpb24gdXBvbiByZXNvbHV0aW9uLgCAzy5PhbBKCmRlc2NlbnRpdHnJAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBkZXNjZW50aXR5CnN1bW1hcnk6ICdEZXNjcmliZSBhIHBhY2tlZCBlbnRpdHknCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIGEgaHVtYW4tcmVhZGFibGUgZGVzY3JpcHRpb24gc3RyaW5nIGZvciBhIHBhY2tlZCBlbnRpdHksIGRlcml2ZWQgZnJvbSB0aGUgZW50aXR5IGl0ZW0gaWQsIGh1bGwgc3RhdHMsIGFuZCB0aGUgbGlzdCBvZiBpbnN0YWxsZWQgbW9kdWxlIGl0ZW0gaWRzIGFuZCBzdGF0cy4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyBhbmQgTkZUIHJlbmRlcmVycyB0byBkaXNwbGF5IHBhY2tlZCBlbnRpdGllcy4AAAAAqHjMVAZlbmFibGXdAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBlbmFibGUKc3VtbWFyeTogJ1NldCBlbmFibGVkIHN0YXRlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpFbmFibGUgb3IgZGlzYWJsZSB0aGlzIGdhbWUgb2YgU2hpcGxvYWQuAAAAAFzVsmEGZ2F0aGVylwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2F0aGVyCnN1bW1hcnk6ICdHYXRoZXIgcmVzb3VyY2VzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpHYXRoZXIgcmVzb3VyY2VzIGF0IHRoZSBzaGlwJ3MgY3VycmVudCBsb2NhdGlvbi4gT25seSB3b3JrcyBhdCBnYXRoZXJhYmxlIGxvY2F0aW9uIHR5cGVzLiBTY2hlZHVsZXMgYSBnYXRoZXIgdGFzayB0aGF0IGNvbnN1bWVzIGVuZXJneSBhbmQgeWllbGRzIGNhcmdvIGJhc2VkIG9uIHRoZSBzaGlwJ3MgZ2F0aGVyZXIgc3RhdHMgYW5kIHRoZSBsb2NhdGlvbidzIHJlc291cmNlIGNvbXBvc2l0aW9uLpCVigs7rKZiDGdlbmVzaXNmbGVldKkELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdlbmVzaXNmbGVldApzdW1tYXJ5OiAnTWludCB0aGUgb25lLXRpbWUgZ2VuZXNpcyBmbGVldCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKRW1wbGFjZSB0aGUgb25lLXRpbWUgZ2VuZXNpcyBmbGVldDogYSBjYWxsZXItc3VwcGxpZWQgc2V0IG9mIGVudGl0aWVzIChzaGlwcywgc3RydWN0dXJlcywgYW5kIGNvbnRhaW5lcnMpIHdyaXR0ZW4gdG8gdGhlIHdvcmxkIGFzLWlzLiBWYWxpZCBvbmx5IGR1cmluZyB0aGUgcHJlLWdlbmVzaXMgd2luZG93LCBiZWZvcmUgZXBvY2ggMSBpcyBmaW5hbGl6ZWQuIFRoZSBzdXBwbGllZCBlbnRpdHkgaWRzIGFyZSBob25vcmVkIGFuZCB0aGUgaWQgc2VxdWVuY2UgaXMgYWR2YW5jZWQgcGFzdCB0aGVtOyBpZCAwIGlzIHJlc2VydmVkIGZvciB0aGUgR2VuZXNpcyBOZXh1cy4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LgDAVRnriLJiCmdldGNsdXN0ZXIAAABgbk2KsmIJZ2V0Y29uZmlnygItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0Y29uZmlnCnN1bW1hcnk6ICdHZXQgZ2FtZSBjb25maWd1cmF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGFjdGlvbiByZXR1cm5zIHRoZSBnYW1lIGNvbmZpZ3VyYXRpb24gaW5jbHVkaW5nIGRlZmF1bHQgZW50aXR5IHN0YXRzIGZvciB3YXJlaG91c2VzIGFuZCBjb250YWluZXJzLCBhbmQgdGhlIGZ1bGwgaXRlbSBkZWZpbml0aW9ucyB0YWJsZS4AFJomY5eyYgtnZXRkaXN0YW5jZQAAVDyOuaiyYgtnZXRlbGlnaWJsZcgDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVsaWdpYmxlCnN1bW1hcnk6ICdHZXQgZWxpZ2libGUgcmVzb3VyY2UgaXRlbSBJRHMgYXQgYSBsb2NhdGlvbiBhbmQgc3RyYXR1bScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGxpc3Qgb2YgcmVzb3VyY2UgaXRlbSBJRHMgZWxpZ2libGUgdG8gYmUgZ2F0aGVyZWQgYXQgdGhlIGdpdmVuIGNvb3JkaW5hdGVzIGFuZCBzdHJhdHVtIGRlcHRoLiBJdGVtcyBhcmUgZ2F0ZWQgYnkgYm90aCB0aGUgbG9jYXRpb24ncyByZXNvdXJjZSBwcm9maWxlIGFuZCB0aGUgZGVwdGggdGhyZXNob2xkIGZvciBlYWNoIHRpZXIuAADAEeWpsmIJZ2V0ZW50Y2xzjAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0ZW50Y2xzCnN1bW1hcnk6ICdHZXQgZW50aXR5IGNsYXNzIGVudW0gdmFsdWVzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgZnVsbCBzZXQgb2YgZW50aXR5IGNsYXNzIGVudW0gdmFsdWVzIGFuZCB0aGVpciBzdHJpbmcgbmFtZXMgKE9yYml0YWxWZXNzZWwsIFBsYW5ldGFyeVN0cnVjdHVyZSkuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGVjb2RlIGVudGl0eSBjbGFzcyBpZGVudGlmaWVycy4AsHLZ5amyYgtnZXRlbnRpdGllc6QCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVudGl0aWVzCnN1bW1hcnk6ICdHZXQgYWxsIGVudGl0aWVzIGZvciBhIHBsYXllcicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmV0dXJucyBmdWxsIGVudGl0eSBpbmZvIGZvciBhbGwgZW50aXRpZXMgb3duZWQgYnkgYSBwbGF5ZXIuIE9wdGlvbmFsbHkgZmlsdGVyIGJ5IGVudGl0eSB0eXBlLgAA8NnlqbJiCWdldGVudGl0eaICLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGVudGl0eQpzdW1tYXJ5OiAnR2V0IGVudGl0eSBzdGF0ZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmV0dXJucyB0aGUgY3VycmVudCBzdGF0ZSBvZiBhbiBlbnRpdHkgaW5jbHVkaW5nIGlkZW50aXR5LCBjYXJnbywgc2NoZWR1bGUgc3RhdGUsIGFuZCB0eXBlLXNwZWNpZmljIGZpZWxkcy6Qp7s1U7qyYgxnZXRmb290cHJpbnQAAEw2SarssmILZ2V0aXRlbWRhdGGoAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRpdGVtZGF0YQpzdW1tYXJ5OiAnR2V0IGZ1bGwgaXRlbSBjYXRhbG9nJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgY29tcGxldGUgaXRlbSBjYXRhbG9nIGFzIHRoZSBjb250cmFjdCBzZWVzIGl0LCBpbmNsdWRpbmcgdHlwZSwgc3VidHlwZSwgdGllciwgbWFzcywgYW5kIG90aGVyIHN0YXRpYyBtZXRhZGF0YS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyBhbmQgY2xpZW50cyB0byBtaXJyb3IgdGhlIGNvbnRyYWN0J3MgaXRlbSBkZWZpbml0aW9ucy4AAE5OquyyYgpnZXRpdGVtaWRzhgMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0aXRlbWlkcwpzdW1tYXJ5OiAnR2V0IGl0ZW0gaWQgdG8gbmFtZSBtYXBwaW5ncycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgbWFwcGluZyBvZiBpdGVtIGlkIGNvbnN0YW50cyB0byB0aGVpciBjYW5vbmljYWwgc3RyaW5nIG5hbWVzLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIHJlc29sdmUgbnVtZXJpYyBpdGVtIGlkcyB0byBodW1hbi1yZWFkYWJsZSBpZGVudGlmaWVycy4AAABYquyyYghnZXRpdGVtc5oCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGl0ZW1zCnN1bW1hcnk6ICdHZXQgYWxsIGF2YWlsYWJsZSBpdGVtcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyBhIGxpc3Qgb2YgYWxsIGl0ZW1zIGluIHRoZSBnYW1lIGluY2x1ZGluZyB0aGVpciBpZCwgYmFzZSBwcmljZSwgYW5kIG1hc3MugFX1WarssmIMZ2V0aXRlbXR5cGVziAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0aXRlbXR5cGVzCnN1bW1hcnk6ICdHZXQgaXRlbSB0eXBlIGVudW0gdmFsdWVzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgZnVsbCBzZXQgb2YgaXRlbSB0eXBlIGVudW0gdmFsdWVzIGFuZCB0aGVpciBzdHJpbmcgbmFtZXMgKHJlc291cmNlLCBjb21wb25lbnQsIG1vZHVsZSwgZW50aXR5KS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZWNvZGUgaXRlbSB0eXBlIGlkZW50aWZpZXJzLgBMVjJNB7NiC2dldGtpbmRtZXRh+AMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0a2luZG1ldGEKc3VtbWFyeTogJ0dldCBlbnRpdHkga2luZCBtZXRhZGF0YScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGVudGl0eSBraW5kIHJlZ2lzdHJ5IGFuZCB0ZW1wbGF0ZSByZWdpc3RyeSwgaW5jbHVkaW5nIGVhY2gga2luZCdzIGNsYXNzaWZpY2F0aW9uLCBjYXBhYmlsaXR5IGZsYWdzLCBaLWNvb3JkaW5hdGUsIGFuZCBkZWZhdWx0IGxhYmVsLCBwbHVzIHRoZSBtYXBwaW5nIG9mIGVudGl0eSBpdGVtIGlkcyB0byBraW5kcyB3aXRoIGRpc3BsYXkgbGFiZWxzLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGludGVycHJldCBlbnRpdHkga2luZHMgYW5kIGNhcGFiaWxpdGllcy4AJnXZIBqzYgtnZXRsb2NhdGlvbuICLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGxvY2F0aW9uCnN1bW1hcnk6ICdHZXQgbG9jYXRpb24gaW5mb3JtYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgaW5mb3JtYXRpb24gYWJvdXQgYSBsb2NhdGlvbiBpbmNsdWRpbmcgd2hldGhlciBhIHN5c3RlbSBleGlzdHMsIGFuZCBmb3IgZWFjaCBpdGVtOiBwcmljZSwgc3VwcGx5LCByYXJpdHkgbXVsdGlwbGllciwgYW5kIGxvY2F0aW9uIG11bHRpcGxpZXIuAIDJJiEas2IKZ2V0bG9jZGF0Yf4CLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldGxvY2RhdGEKc3VtbWFyeTogJ0dldCBkZXJpdmVkIGxvY2F0aW9uIGRhdGEnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgZGVyaXZlZCBsb2NhdGlvbiBkYXRhIGluY2x1ZGluZyBzdGF0aWMgcHJvcGVydGllcyAodHlwZSwgZGlmZmljdWx0eSwgc2VlZHMpIGZyb20gdGhlIGdhbWUgc2VlZCBhbmQgZXBvY2gtc3BlY2lmaWMgcHJvcGVydGllcyAoYWN0aXZlLCBzZWVkcykgZnJvbSB0aGUgY3VycmVudCBlcG9jaCBzZWVkLgCwqj4nKrNiC2dldG1vZHR5cGVz1gMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0bW9kdHlwZXMKc3VtbWFyeTogJ0dldCBtb2R1bGUgdHlwZSBlbnVtIHZhbHVlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgc2V0IG9mIG1vZHVsZSB0eXBlIGVudW0gdmFsdWVzIGFuZCB0aGVpciBzdHJpbmcgbmFtZXMgKGFueSwgZW5naW5lLCBnZW5lcmF0b3IsIGdhdGhlcmVyLCBsb2FkZXIsIHdhcnAsIGNyYWZ0ZXIsIGxhdW5jaGVyLCBzdG9yYWdlLCBoYXVsZXIpLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGRlY29kZSBtb2R1bGUgc3VidHlwZSBpZGVudGlmaWVycyBhbmQgc2xvdCBjb21wYXRpYmlsaXR5LgAAVlEnKrNiCmdldG1vZHVsZXOAAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRtb2R1bGVzCnN1bW1hcnk6ICdHZXQgYWxsIG1vZHVsZSBpdGVtcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIHN1YnNldCBvZiBpdGVtcyBjbGFzc2lmaWVkIGFzIG1vZHVsZXMsIGluY2x1ZGluZyBlYWNoIG1vZHVsZSdzIGlkLCBtYXNzLCBzdWJ0eXBlLCBhbmQgdGllci4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBlbnVtZXJhdGUgaW5zdGFsbGFibGUgZXF1aXBtZW50LgAA8OcaNbNiCWdldG5lYXJied4DLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldG5lYXJieQpzdW1tYXJ5OiAnR2V0IG5lYXJieSByZWFjaGFibGUgc3lzdGVtcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyBuZWFyYnkgc3lzdGVtcyByZWFjaGFibGUgYnkgYW4gZW50aXR5IGZyb20gaXRzIHByb2plY3RlZCBsb2NhdGlvbi4gUmV0dXJucyBjdXJyZW50IHN0YXRlICh3aXRoIGNvbXBsZXRlZCB0YXNrcyByZXNvbHZlZCksIHByb2plY3RlZCBzdGF0ZSAoYWZ0ZXIgYWxsIHNjaGVkdWxlZCB0YXNrcyksIGFuZCBhIGxpc3Qgb2YgcmVhY2hhYmxlIHN5c3RlbXMgd2l0aCBkaXN0YW5jZSwgZW5lcmd5IGNvc3QsIGZsaWdodCB0aW1lLCBhbmQgbWFya2V0IGluZm9ybWF0aW9uLgAAXdPlNbNiCmdldG5mdGluZm/wAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRuZnRpbmZvCnN1bW1hcnk6ICdHZXQgTkZUIHNjaGVtYSBhbmQgdGVtcGxhdGUgY29uZmlndXJhdGlvbicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgc2V0IG9mIEF0b21pY0Fzc2V0cyBzY2hlbWFzIGFuZCB0ZW1wbGF0ZXMgdGhlIGdhbWUgY29udHJhY3QgZXhwZWN0cywgcGx1cyB0aGUgY3VycmVudCBgaXRlbV9pZCDihpIgKHRlbXBsYXRlX2lkLCBzY2hlbWFfbmFtZSlgIG1hcHBpbmcgc3RvcmVkIGluIHRoZSBgbmZ0Y29uZmlnYCB0YWJsZS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBzeW5jIGF0b21pY2Fzc2V0cyBzdGF0ZSB3aXRoIHRoZSBjb250cmFjdC4AALjKm1izYglnZXRwbGF5ZXL9Ai0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRwbGF5ZXIKc3VtbWFyeTogJ0dldCBwbGF5ZXIgaW5mb3JtYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgaW5mb3JtYXRpb24gYWJvdXQgYSBwbGF5ZXIgaW5jbHVkaW5nIGJhbGFuY2UsIGRlYnQsIG5ldHdvcnRoLCBlbnRpdHkgY291bnRzLCBhbmQgcHJpY2luZyBmb3IgbmV4dCBwdXJjaGFzZXMuIFJldHVybnMgaXNfcGxheWVyPWZhbHNlIGlmIHRoZSBhY2NvdW50IGhhcyBub3Qgam9pbmVkIHRoZSBnYW1lLqCyyfjRW7NiDGdldHByb2pzdGF0ZcsDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHByb2pzdGF0ZQpzdW1tYXJ5OiAnR2V0IHByb2plY3RlZCBlbnRpdHkgc3RhdGUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBwcm9qZWN0ZWQgc3RhdGUgb2YgYW4gZW50aXR5IGFmdGVyIGFwcGx5aW5nIHRoZSBuZXh0IHRhc2tfY291bnQgc2NoZWR1bGVkIHRhc2tzIChvciBhbGwgdGFza3MgaWYgdGFza19jb3VudCBpcyBvbWl0dGVkKS4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBwcmV2aWV3IHRoZSByZXN1bHQgb2YgYW4gZW50aXR5J3Mgc2NoZWR1bGUgd2l0aG91dCByZXNvbHZpbmcgb24tY2hhaW4uAABQ1SF1s2IJZ2V0cmVjaXBlpgMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0cmVjaXBlCnN1bW1hcnk6ICdHZXQgYSBzaW5nbGUgY3JhZnRpbmcgcmVjaXBlJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpUaGlzIGlzIGEgcmVhZC1vbmx5IHF1ZXJ5IHRoYXQgcmV0dXJucyB0aGUgcmVjaXBlIHdob3NlIG91dHB1dCBtYXRjaGVzIHRoZSBnaXZlbiBpdGVtIGlkLCBpbmNsdWRpbmcgaXRzIGlucHV0cywgYmxlbmQgd2VpZ2h0cywgc3RhdCBzbG90cywgYW5kIHJlc29sdmVkIGl0ZW0gbWFzcyBpbmZvLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGRpc3BsYXkgY3JhZnRpbmcgcmVxdWlyZW1lbnRzLgAAVtUhdbNiCmdldHJlY2lwZXOsAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZWNpcGVzCnN1bW1hcnk6ICdMaXN0IGNyYWZ0aW5nIHJlY2lwZXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIGEgcGFnaW5hdGVkIGxpc3Qgb2YgY3JhZnRpbmcgcmVjaXBlcyBzdGFydGluZyBhdCB0aGUgcHJvdmlkZWQgbG93ZXIgYm91bmQgb3V0cHV0IGl0ZW0gaWQsIHVwIHRvIHRoZSBzcGVjaWZpZWQgbGltaXQuIEVhY2ggZW50cnkgaW5jbHVkZXMgaW5wdXRzLCBibGVuZCB3ZWlnaHRzLCBzdGF0IHNsb3RzLCBhbmQgcmVzb2x2ZWQgaXRlbSBtYXNzIGluZm8uAADOBmF1s2IKZ2V0cmVzY2F0c54DLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHJlc2NhdHMKc3VtbWFyeTogJ0dldCByZXNvdXJjZSBjYXRlZ29yeSBlbnVtIHZhbHVlcycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIGZ1bGwgc2V0IG9mIHJlc291cmNlIGNhdGVnb3J5IGVudW0gdmFsdWVzIGFuZCB0aGVpciBzdHJpbmcgbmFtZXMgKG9yZSwgZ2FzLCByZWdvbGl0aCwgYmlvbWFzcywgY3J5c3RhbCkuIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgdG8gZGVjb2RlIHJlc291cmNlIHN1YnR5cGUgaWRlbnRpZmllcnMuALDaV2F1s2ILZ2V0cmVzZXJ2ZXP8Ay0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZXNlcnZlcwpzdW1tYXJ5OiAnR2V0IGN1cnJlbnQgcmVzZXJ2ZSBtb2RpZmljYXRpb25zIGF0IGEgbG9jYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgYWN0aW9uIHJldHVybnMgdGhlIGNoYWluJ3MgbW9kaWZpY2F0aW9ucyB0byBkZXJpdmVkIHJlc2VydmVzIGF0IHRoZSBnaXZlbiBjb29yZGluYXRlIGZvciB0aGUgY3VycmVudCBlcG9jaCBhcyBhIGxpc3Qgb2Yge3N0cmF0dW0sIHJlbWFpbmluZ30gcGFpcnMuIFN0cmF0YSBub3QgcHJlc2VudCBpbiB0aGUgcmVzcG9uc2UgdXNlIHRoZWlyIGRlcml2ZWQgaW5pdGlhbCByZXNlcnZlLiBDb21wb3NlIHdpdGggU0RLIGRlcml2YXRpb24gdG8gZ2V0IHRoZSBmdWxsIHBlci1sb2NhdGlvbiBzdHJhdGEgdmlldy6AFbqaYnWzYgxnZXRyZXNvdXJjZXOHAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRyZXNvdXJjZXMKc3VtbWFyeTogJ0dldCBhbGwgcmVzb3VyY2UgaXRlbXMnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBzdWJzZXQgb2YgaXRlbXMgY2xhc3NpZmllZCBhcyByZXNvdXJjZXMsIGluY2x1ZGluZyBlYWNoIHJlc291cmNlJ3MgaWQsIG1hc3MsIHN1YnR5cGUsIGFuZCB0aWVyLiBVc2VkIGJ5IG9mZi1jaGFpbiB0b29saW5nIHRvIGVudW1lcmF0ZSBnYXRoZXJhYmxlIG1hdGVyaWFscy4AAAA404izYghnZXRzbG90c7sDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHNsb3RzCnN1bW1hcnk6ICdHZXQgZW50aXR5IHNsb3QgbGF5b3V0cycKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBpcyBhIHJlYWQtb25seSBxdWVyeSB0aGF0IHJldHVybnMgdGhlIG1vZHVsZSBzbG90IGxheW91dCBmb3IgZXZlcnkgZW50aXR5IGl0ZW0gdHlwZSwgbGlzdGluZyB0aGUgb3JkZXJlZCBzbG90IHR5cGVzIGF2YWlsYWJsZSBmb3IgbW9kdWxlIGluc3RhbGxhdGlvbi4gVXNlZCBieSBvZmYtY2hhaW4gdG9vbGluZyB0byBkZXRlcm1pbmUgd2hpY2ggbW9kdWxlIHR5cGVzIGFyZSBjb21wYXRpYmxlIHdpdGggYSBnaXZlbiBlbnRpdHkgaHVsbC4AgNTZ3IyzYgpnZXRzdHJhdHVt0gItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ2V0c3RyYXR1bQpzdW1tYXJ5OiAnR2V0IHJlc291cmNlIHN0cmF0dW0gZGF0YScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKVGhpcyBhY3Rpb24gcmV0dXJucyByZXNvdXJjZSBzdHJhdHVtIGRhdGEgZm9yIGEgc3BlY2lmaWMgZGVwdGggbGF5ZXIgYXQgYSBjb29yZGluYXRlLCBpbmNsdWRpbmcgdGhlIHN0cmF0dW0gc2VlZCBpbmZvIGFuZCBkZXJpdmVkIHJlc291cmNlIHN0YXRzLoCVu0ZKjbNiDGdldHN1bW1hcmllc+gCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGdldHN1bW1hcmllcwpzdW1tYXJ5OiAnR2V0IGVudGl0eSBzdW1tYXJpZXMgZm9yIGEgcGxheWVyJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZXR1cm5zIGxpZ2h0d2VpZ2h0IHN1bW1hcmllcyBvZiBhbGwgZW50aXRpZXMgb3duZWQgYnkgYSBwbGF5ZXIgaW5jbHVkaW5nIHR5cGUsIGlkLCBvd25lciwgbmFtZSwgbG9jYXRpb24sIGFuZCBpZGxlIHN0YXR1cy4gT3B0aW9uYWxseSBmaWx0ZXIgYnkgZW50aXR5IHR5cGUuAFSkTV7Ks2ILZ2V0d29ybWhvbGUAkB2e5uaq6WUMZ3JvdXB0cmFuc2l0AACi2ubmqullC2dyb3VwdHJhdmVsmgQtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogZ3JvdXB0cmF2ZWwKc3VtbWFyeTogJ01vdmUgbXVsdGlwbGUgZW50aXRpZXMgdG9nZXRoZXInCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkluaXRpYXRlIGdyb3VwIHRyYXZlbCBmb3IgbXVsdGlwbGUgZW50aXRpZXMgdG8gYSBkZXN0aW5hdGlvbi4gQWxsIGVudGl0aWVzIG11c3QgYmUgYXQgdGhlIHNhbWUgbG9jYXRpb24gYW5kIG93bmVkIGJ5IHRoZSBjYWxsZXIuIEF0IGxlYXN0IG9uZSBlbnRpdHkgd2l0aCBlbmdpbmVzIGlzIHJlcXVpcmVkIHRvIHByb3ZpZGUgdGhydXN0LiBGbGlnaHQgZHVyYXRpb24gaXMgY2FsY3VsYXRlZCBmcm9tIGNvbWJpbmVkIHRocnVzdCBhbmQgdG90YWwgbWFzcyBvZiBhbGwgZW50aXRpZXMuIENyZWF0ZXMgYW4gZW50aXR5Z3JvdXAgZm9yIGF0b21pYyByZXNvbHV0aW9uIGFuZCBjYW5jZWxsYXRpb24uAAAAAADQsGkEaGFzaPgBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IGhhc2gKc3VtbWFyeTogJ0NhbGN1bGF0ZSBzaGEyNTYgaGFzaCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKQ2FsY3VsYXRlcyB0aGUgc2hhMjU2IGhhc2ggb2YgYSBzdHJpbmcgYmFzZWQgdXNpbmcgdGhlIGdhbWUgc2VlZC4AAABAhNKwaQdoYXNoNTEy+wEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogaGFzaDUxMgpzdW1tYXJ5OiAnQ2FsY3VsYXRlIHNoYTUxMiBoYXNoJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpDYWxjdWxhdGVzIHRoZSBzaGE1MTIgaGFzaCBvZiBhIHN0cmluZyBiYXNlZCB1c2luZyB0aGUgZ2FtZSBzZWVkLgAAAAAAMB19BGpvaW7EAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBqb2luCnN1bW1hcnk6ICdKb2luIGEgZ2FtZScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSm9pbiBhIGdhbWUgb2YgU2hpcGxvYWQAAAAANDS1iQZsYXVuY2gAAAAAAACQDI0EbG9hZAAAAAAquqw2lQhtb3ZldGlsZQAAAIhXM+nymgluZnRpbWd1cmyyAy0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBuZnRpbWd1cmwKc3VtbWFyeTogJ0dldCBORlQgaW1hZ2UgVVJMIGZvciBhIGNhcmdvIGl0ZW0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClRoaXMgaXMgYSByZWFkLW9ubHkgcXVlcnkgdGhhdCByZXR1cm5zIHRoZSBpbWFnZSBVUkwgdGhlIGNvbnRyYWN0IGVtaXRzIGZvciBhIGdpdmVuIGNhcmdvIGl0ZW0sIG9wdGlvbmFsbHkgc2NvcGVkIHRvIGEgbG9jYXRpb24uIFVzZWQgYnkgb2ZmLWNoYWluIHRvb2xpbmcgYW5kIE5GVCByZW5kZXJlcnMgdG8gZmV0Y2ggdGhlIGNhbm9uaWNhbCBhcnR3b3JrIGZvciBhbiBpdGVtIG9yIHBhY2tlZCBlbnRpdHkuAAAAAPjlMp0Gbm90aWZ5igMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogbm90aWZ5CnN1bW1hcnk6ICdUYXNrIGxpZmVjeWNsZSBub3RpZmljYXRpb24nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkludGVybmFsIGFjdGlvbiB0aGF0IG5vdGlmaWVzIGVudGl0eSBvd25lcnMgb2YgdGFzayBsaWZlY3ljbGUgZXZlbnRzIChyZXNvbHZlZCwgY2FuY2VsbGVkKS4gQ2FsbGVkIGlubGluZSB3aGVuIHRhc2tzIGNoYW5nZSBzdGF0ZS4gVXNlcyByZXF1aXJlX3JlY2lwaWVudCB0byBlbmFibGUgb2ZmLWNoYWluIG1vbml0b3JpbmcgdmlhIGFjdGlvbiB0cmFjZXMuAABl1yCFTKwKcGxhY2VjYXJnb8kELS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHBsYWNlY2FyZ28Kc3VtbWFyeTogJ1Jlc3RvcmUgTkZUIGNhcmdvIG9udG8gYSBob3N0IGVudGl0eScKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW50ZXJuYWwgYWN0aW9uIGNhbGxlZCBpbmxpbmUgYnkgdGhlIHBsYXRmb3JtIGNvbnRyYWN0IG9ubHkuIFJlc3RvcmVzIHRoZSBjYXJnbyByZWNvcmRlZCBpbiBhbiB1bndyYXBwZWQgTkZUIG9udG8gYSBob3N0IGVudGl0eS4gVmFsaWRhdGVzIGhvc3Qgb3duZXJzaGlwLCBsb2FkZXJzLCBhbmQgcmVtYWluaW5nIGNhcGFjaXR5LCBkZXNlcmlhbGl6ZXMgdGhlIE5GVCdzIGl0ZW0gZGF0YSwgYW5kIGFwcGVuZHMgYW4gdW53cmFwIHRhc2sgdG8gZGVsaXZlciB0aGUgY2FyZ28gdG8gdGhlIGhvc3QuIFRoZSBwbGF0Zm9ybSBjb250cmFjdCBjcmVkaXRzIHRoZSBkZXBvc2l0IHJlZnVuZCBhbmQgYnVybnMgdGhlIGFzc2V0LiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAHx2eSqFTKwLcGxhY2VlbnRpdHnABC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBwbGFjZWVudGl0eQpzdW1tYXJ5OiAnTWF0ZXJpYWxpemUgYSBwYWNrZWQtZW50aXR5IE5GVCBhcyBhIGxpdmUgZW50aXR5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gY2FsbGVkIGlubGluZSBieSB0aGUgcGxhdGZvcm0gY29udHJhY3Qgb25seS4gRW1wbGFjZXMgYSBsaXZlIG9yYml0YWwgdmVzc2VsIChzaGlwIG9yIGNvbnRhaW5lcikgZnJvbSBpdHMgcGFja2VkLWVudGl0eSBORlQgZGF0YSBhdCB0aGUgcmVjb3JkZWQgd3JhcCBvcmlnaW4sIHRoZW4gcXVldWVzIHRyYXZlbCBhbmQgcmVjaGFyZ2UgdGFza3MgdG8gZGVsaXZlciBpdCB0byB0aGUgdGFyZ2V0IG5leHVzIGF0IGZ1bGwgZW5lcmd5LiBUaGUgcGxhdGZvcm0gY29udHJhY3QgY3JlZGl0cyB0aGUgZGVwb3NpdCByZWZ1bmQgYW5kIGJ1cm5zIHRoZSBhc3NldC4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LgAAAIpd05C6CHJlY2hhcmdlzQItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcmVjaGFyZ2UKc3VtbWFyeTogJ1JlY2hhcmdlIHNoaXAgZW5lcmd5JwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpTY2hlZHVsZSBhIHJlY2hhcmdlIHRhc2sgZm9yIGFuIGVudGl0eSB0byByZXN0b3JlIGVuZXJneSB0byBmdWxsIGNhcGFjaXR5LiBUaGUgcmVjaGFyZ2UgZHVyYXRpb24gZGVwZW5kcyBvbiBjdXJyZW50IGVuZXJneSBsZXZlbCBhbmQgcmVjaGFyZ2UgcmF0ZS7gs8tTNXyXugxyZWZyc2hlbnRpdHm4Ay0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiByZWZyc2hlbnRpdHkKc3VtbWFyeTogJ1JlZnJlc2ggZGVyaXZlZCBlbnRpdHkgc3RhdGUnCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlY29tcHV0ZSBkZXJpdmVkIGZpZWxkcyBvbiBhbiBlbnRpdHkgZnJvbSBpdHMgY3VycmVudCBjYXJnbyBhbmQgbW9kdWxlcywgcmVmcmVzaGluZyBjYXBhYmlsaXR5IHN0YXRzIGFuZCBjYXJnbyBtYXNzLiBUaGUgZW50aXR5IG11c3QgYmUgaWRsZSB3aXRoIG5vIHNjaGVkdWxlZCB0YXNrcy4gVXNlZCB0byByZWNvbmNpbGUgZGVyaXZlZCBzdGF0ZSBhZnRlciBkYXRhIG1pZ3JhdGlvbnMgb3IgY29udHJhY3QgdXBncmFkZXMuoCIyl6pNpboMcmVtb3Zlb3JhY2xlAAAAAAAoaaa6BnJlbmFtZQAAAABA7UixugdyZXNvbHZl0AMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcmVzb2x2ZQpzdW1tYXJ5OiAnQ29tcGxldGUgc2NoZWR1bGVkIHRhc2tzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpSZXNvbHZlIGNvbXBsZXRlZCB0YXNrcyBpbiBhbiBlbnRpdHkncyBzY2hlZHVsZSwgYXBwbHlpbmcgdGhlaXIgZWZmZWN0cyAocmVjaGFyZ2UgZW5lcmd5LCB1cGRhdGUgbG9jYXRpb24sIGxvYWQvdW5sb2FkIGNhcmdvKS4gSWYgY291bnQgaXMgc3BlY2lmaWVkLCByZXNvbHZlIGV4YWN0bHkgdGhhdCBtYW55IHRhc2tzOyBvdGhlcndpc2UgcmVzb2x2ZSBhbGwgY29tcGxldGVkIHRhc2tzLiBGYWlscyBpZiBjb3VudCBleGNlZWRzIHRoZSBudW1iZXIgb2YgY29tcGxldGVkIHRhc2tzLgBAjEbtSLG6CnJlc29sdmVhbGwAAAAAAESjtroGcmV2ZWFsAAAAACrqRKW8CHJtbW9kdWxlvAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogcm1tb2R1bGUKc3VtbWFyeTogJ1JlbW92ZSBhIG1vZHVsZSBmcm9tIGEgc2xvdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUmVtb3ZlIGFuIGluc3RhbGxlZCBtb2R1bGUgZnJvbSBhIHNsb3Qgb24gYSBsaXZlIGVudGl0eSBvciBhIHBhY2tlZCBlbnRpdHkgaW4gY2FyZ28uIFRoZSBlbnRpdHkgbXVzdCBiZSBpZGxlIHdpdGggbm8gc2NoZWR1bGVkIHRhc2tzLiBUaGUgbW9kdWxlIGlzIHJldHVybmVkIHRvIGNhcmdvLiBGYWlscyBpZiB0aGUgZW50aXR5IGRvZXMgbm90IGhhdmUgZW5vdWdoIGNhcmdvIGNhcGFjaXR5IHRvIGhvbGQgdGhlIHJldHVybmVkIG1vZHVsZS4AAABsobymvAhybW5mdGNmZ6EDLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHJtbmZ0Y2ZnCnN1bW1hcnk6ICdSZW1vdmUgTkZUIHRlbXBsYXRlIG1hcHBpbmcgZm9yIGFuIGl0ZW0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KClJlbW92ZSB0aGUgQXRvbWljQXNzZXRzIHRlbXBsYXRlIG1hcHBpbmcgZm9yIHRoZSBzcGVjaWZpZWQgaXRlbSBpZCBmcm9tIHRoZSBgbmZ0Y29uZmlnYCB0YWJsZS4gQWZ0ZXIgcmVtb3ZhbCB0aGUgaXRlbSBjYW4gbm8gbG9uZ2VyIGJlIHdyYXBwZWQgb3IgdW53cmFwcGVkIHVudGlsIGEgbmV3IG1hcHBpbmcgaXMgc2V0LiBSZXF1aXJlcyBjb250cmFjdCBhdXRob3JpdHkuAABgC+U1s8IJc2V0bmZ0Y2ZnxAMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogc2V0bmZ0Y2ZnCnN1bW1hcnk6ICdTZXQgTkZUIHRlbXBsYXRlIG1hcHBpbmcgZm9yIGFuIGl0ZW0nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0KCkJpbmQgYW4gaXRlbSBpZCB0byBhbiBBdG9taWNBc3NldHMgdGVtcGxhdGUgaWQgYW5kIHNjaGVtYSBuYW1lLiBVc2VkIHRvIGNvbmZpZ3VyZSBob3cgdGhlIGNvbnRyYWN0IG1pbnRzIGFuZCByZWNvZ25pemVzIE5GVHMgZm9yIGEgZ2l2ZW4gaXRlbS4gSW5zZXJ0cyBhIG5ldyBtYXBwaW5nIGlmIG9uZSBkb2VzIG5vdCBleGlzdCwgb3IgdXBkYXRlcyB0aGUgZXhpc3RpbmcgbWFwcGluZy4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LpAibVjdlrPCDHNldHRocmVzaG9sZAAAMqaomsuzwgtzZXR3cmFwY29zdAAAgFKrmsuzwgpzZXR3cmFwZmVlAAAAoOwaxGnGCXN0b3djYXJnb9UFLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6IHN0b3djYXJnbwpzdW1tYXJ5OiAnUmVzZXJ2ZSBhIGNhcmdvIHN0YWNrIGZvciB3cmFwcGluZyBpbnRvIGFuIE5GVCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKSW50ZXJuYWwgYWN0aW9uIGNhbGxlZCBpbmxpbmUgYnkgdGhlIHBsYXRmb3JtIGNvbnRyYWN0IG9ubHkuIFJlc2VydmVzIGFuZCBjb25zdW1lcyBhIGNhcmdvIHN0YWNrIG9uIGEgbGl2ZSBlbnRpdHkgZm9yIHdyYXBwaW5nIGludG8gYW4gTkZULiBWYWxpZGF0ZXMgZW50aXR5IG93bmVyc2hpcCwgbG9hZGVycywgYW5kIHByZXNlbmNlIGF0IHRoZSBuZXh1cywgYW5kIGNvbmZpcm1zIHRoZSB0YXJnZXQgY2FyZ28gc3RhY2sgaXMgYXZhaWxhYmxlIGFuZCBub3QgcmVzZXJ2ZWQgYnkgYSBwZW5kaW5nIHRhc2suIENvbXB1dGVzIHRoZSB3cmFwIGNvc3QgYW5kIGZlZSwgZGViaXRzIHRoZW0gZnJvbSB0aGUgb3duZXIncyBwbGF0Zm9ybSBkZXBvc2l0IGJhbGFuY2UsIGRlcml2ZXMgdGhlIE5GVCdzIGltbXV0YWJsZSBkYXRhLCBhbmQgbWludHMgdGhlIE5GVCBpbmxpbmUgYXMgdGhlIGdhbWUgY29udHJhY3QgYmVmb3JlIGNvbnN1bWluZyB0aGUgY2FyZ28uIFJlcXVpcmVzIGNvbnRyYWN0IGF1dGhvcml0eS4AgM8uT8VpxgpzdG93ZW50aXR5mQUtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogc3Rvd2VudGl0eQpzdW1tYXJ5OiAnUmVzZXJ2ZSBhbiBlbnRpdHkgZm9yIHdyYXBwaW5nIGludG8gYW4gTkZUJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnRlcm5hbCBhY3Rpb24gY2FsbGVkIGlubGluZSBieSB0aGUgcGxhdGZvcm0gY29udHJhY3Qgb25seS4gUmVzZXJ2ZXMgYSB3aG9sZSBlbnRpdHkgKHNoaXAsIGNvbnRhaW5lciwgb3IgcGxhbmV0YXJ5IHN0cnVjdHVyZSkgZm9yIHdyYXBwaW5nIGludG8gYW4gTkZULiBUaGUgZW50aXR5IG11c3QgYmUgaWRsZSB3aXRoIGVtcHR5IGNhcmdvIGFuZCBubyBzY2hlZHVsZWQgdGFza3MuIENvbXB1dGVzIHRoZSB3cmFwIGNvc3QgYW5kIGZlZSwgZGViaXRzIHRoZW0gZnJvbSB0aGUgb3duZXIncyBwbGF0Zm9ybSBkZXBvc2l0IGJhbGFuY2UsIGRlcml2ZXMgdGhlIGVudGl0eSBORlQncyBpbW11dGFibGUgZGF0YSwgbWludHMgdGhlIE5GVCBpbmxpbmUgYXMgdGhlIGdhbWUgY29udHJhY3QsIGFuZCBlcmFzZXMgdGhlIGVudGl0eSBmcm9tIHRoZSB3b3JsZC4gUmVxdWlyZXMgY29udHJhY3QgYXV0aG9yaXR5LgCAijpRWQ3HCnN3YXBtb2R1bGUAAAAAIDs8zc0HdHJhbnNpdAAAAAAARLXNzQZ0cmF2ZWz7AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB0cmF2ZWwKc3VtbWFyeTogJ01vdmUgYSBzaGlwJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbml0aWF0ZSB0cmF2ZWwgb2YgYW4gZW50aXR5IGZyb20gaXRzIGN1cnJlbnQgbG9jYXRpb24gdG8gYSBuZXcgZGVzdGluYXRpb24uAAAAnsaq0tQIdW5kZXBsb3nnBC0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiB1bmRlcGxveQpzdW1tYXJ5OiAnUGFjayBhIGRlcGxveWVkIGVudGl0eSBpbnRvIGEgaG9zdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQoKUGFjayBhbiBlbnRpdHkgaW50byBhIGhvc3QgZW50aXR5J3MgY2FyZ28gYXMgYSBwYWNrZWQtZW50aXR5IGl0ZW0uIEhvc3QgYW5kIHRhcmdldCBtdXN0IHNoYXJlIHRoZSBzYW1lIG93bmVyIGFuZCBjb29yZGluYXRlcywgdGhlIGhvc3QgbXVzdCBoYXZlIGxvYWRlcnMgYW5kIGVub3VnaCBjYXBhY2l0eSBmb3IgdGhlIHBhY2tlZCBtYXNzLCBhbmQgdGhlIHRhcmdldCBtdXN0IGJlIGlkbGUgd2l0aCBlbXB0eSBjYXJnby4gQ3JlYXRlcyBhbiBlbnRpdHlncm91cCBhbmQgc2NoZWR1bGVzIHVuZGVwbG95IHRhc2tzIG9uIGJvdGggZW50aXRpZXM7IG9uIHJlc29sdXRpb24gdGhlIHRhcmdldCBpcyBlcmFzZWQgYW5kIHRoZSBwYWNrZWQgZW50aXR5IGlzIGFkZGVkIHRvIHRoZSBob3N0J3MgY2FyZ28uIEludmVyc2Ugb2YgZGVwbG95LgAAAAAkQ+PUBnVubG9hZAAAAAAAAFCv4QR3YXJwnwMtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogd2FycApzdW1tYXJ5OiAnV2FycCB0byBhIGRlc3RpbmF0aW9uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tCgpJbnN0YW50bHkgdGVsZXBvcnQgYW4gZW50aXR5IHRvIGEgZGVzdGluYXRpb24gc3lzdGVtLiBSZXF1aXJlcyB3YXJwIGNhcGFiaWxpdHksIGZ1bGwgZW5lcmd5LCBlbXB0eSBjYXJnbywgYW5kIGFuIGVtcHR5IHNjaGVkdWxlLiBUaGUgZGVzdGluYXRpb24gbXVzdCBiZSBhIHZhbGlkIHN5c3RlbSB3aXRoaW4gd2FycCByYW5nZS4gUmVzb2x2ZXMgaW1tZWRpYXRlbHkgYXMgYSB6ZXJvLWR1cmF0aW9uIHRhc2suEQAAAAAAyq5BA2k2NAAACWNhcmdvX3JvdwAAAOCqjHVEA2k2NAAAC2NsdXN0ZXJfcm93AAAAAGQnJUUDaTY0AAAKY29tbWl0X3JvdwAAAAD47PJUA2k2NAAACmVudGl0eV9yb3cAqqaX+ezyVANpNjQAAA9lbnRpdHlncm91cF9yb3cAALAK++zyVANpNjQAAA5lbnRpdHlfc2VxX3JvdwAAAACAhmhVA2k2NAAACWVwb2NoX3JvdwAAYG5NivKaA2k2NAAADW5mdGNvbmZpZ19yb3cAAGALqYjMpQNpNjQAABFvcmFjbGVfY29uZmlnX3JvdwAAAACriMylA2k2NAAACm9yYWNsZV9yb3cAAAAAXOVNrANpNjQAAApwbGF5ZXJfcm93AAAAQO2rsLoDaTY0AAALcmVzZXJ2ZV9yb3cAAAAARKO2ugNpNjQAAApyZXZlYWxfcm93AAAAAACVTcYDaTY0AAAJc3RhdGVfcm93AAAAAACsqs8DaTY0AAAJdHlwZXNfcm93AABza1JUzeUDaTY0AAAOd3JhcGNvbmZpZ19yb3cAAAAZU1TN5QNpNjQAAAx3cmFwY29zdF9yb3cBEVNoaXBsb2FkIChTZXJ2ZXIpEVNoaXBsb2FkIChTZXJ2ZXIpAAAAOgAAyDTWFJ0+DHRhc2tfcmVzdWx0cwAAAABEhaZBDmNhbmNlbF9yZXN1bHRzAADINFbpTEQMdGFza19yZXN1bHRzAAAAAIC8zEUMdGFza19yZXN1bHRzAAAADbtIpUoMdGFza19yZXN1bHRzAAAAAHgaq0oMdGFza19yZXN1bHRzAIDPLk+FsEoGc3RyaW5nAAAAAFzVsmEMdGFza19yZXN1bHRzAMBVGeuIsmILY2x1c3Rlcl9yb3cAAGBuTYqyYgtnYW1lX2NvbmZpZwAUmiZjl7JiBnVpbnQ2NABUPI65qLJiCHVpbnQxNltdAADAEeWpsmILZW51bV9yZXN1bHQAsHLZ5amyYg1lbnRpdHlfaW5mb1tdAADw2eWpsmILZW50aXR5X2luZm+Qp7s1U7qyYhBmb290cHJpbnRfcmVzdWx0AEw2SarssmIPaXRlbWRhdGFfcmVzdWx0AABOTqrssmIPaXRlbV9pZHNfcmVzdWx0AAAAWKrssmIKaXRlbXNfaW5mb4BV9Vmq7LJiC2VudW1fcmVzdWx0AExWMk0Hs2IQa2luZF9tZXRhX3Jlc3VsdAAmddkgGrNiDWxvY2F0aW9uX2luZm8AgMkmIRqzYhBsb2NhdGlvbl9kZXJpdmVkALCqPicqs2ILZW51bV9yZXN1bHQAAFZRJyqzYg5tb2R1bGVzX3Jlc3VsdAAA8OcaNbNiC25lYXJieV9pbmZvAABd0+U1s2IObmZ0aW5mb19yZXN1bHQAALjKm1izYgtwbGF5ZXJfaW5mb6CyyfjRW7NiD3Byb2plY3RlZF9zdGF0ZQAAUNUhdbNiDnJlY2lwZXNfcmVzdWx0AABW1SF1s2IOcmVjaXBlc19yZXN1bHQAAM4GYXWzYgtlbnVtX3Jlc3VsdACw2ldhdbNiE3N0cmF0dW1fcmVtYWluaW5nW12AFbqaYnWzYhByZXNvdXJjZXNfcmVzdWx0AAAAONOIs2IVZW50aXR5X2xheW91dHNfcmVzdWx0AIDU2dyMs2IMc3RyYXR1bV9kYXRhgJW7RkqNs2IQZW50aXR5X3N1bW1hcnlbXQBUpE1eyrNiDXdvcm1ob2xlX2luZm+QHZ7m5qrpZQx0YXNrX3Jlc3VsdHMAotrm5qrpZQx0YXNrX3Jlc3VsdHMAAAAAANCwaQtjaGVja3N1bTI1NgAAAECE0rBpC2NoZWNrc3VtNTEyAAAAADQ0tYkMdGFza19yZXN1bHRzAAAAAACQDI0MdGFza19yZXN1bHRzAAAAKrqsNpUMdGFza19yZXN1bHRzAACIVzPp8poGc3RyaW5nAABl1yCFTKwMdGFza19yZXN1bHRzAHx2eSqFTKwMdGFza19yZXN1bHRzAAAAil3TkLoMdGFza19yZXN1bHRzAAAAQO1IsboPcmVzb2x2ZV9yZXN1bHRzAECMRu1IsboScmVzb2x2ZWFsbF9yZXN1bHRzAACg7BrEacYMdGFza19yZXN1bHRzAIDPLk/FacYMdGFza19yZXN1bHRzAAAAIDs8zc0MdGFza19yZXN1bHRzAAAAAES1zc0MdGFza19yZXN1bHRzAAAAnsaq0tQMdGFza19yZXN1bHRzAAAAACRD49QMdGFza19yZXN1bHRzAAAAAABQr+EMdGFza19yZXN1bHRz');
|
|
452
452
|
const abi = antelope.ABI.from(abiBlob);
|
|
453
453
|
exports.ServerTypes = void 0;
|
|
454
454
|
(function (Types) {
|
|
@@ -683,30 +683,21 @@ exports.ServerTypes = void 0;
|
|
|
683
683
|
antelope.Struct.type('cargo_view')
|
|
684
684
|
], cargo_view);
|
|
685
685
|
Types.cargo_view = cargo_view;
|
|
686
|
-
let
|
|
686
|
+
let cluster_slot = class cluster_slot extends antelope.Struct {
|
|
687
687
|
};
|
|
688
688
|
tslib.__decorate([
|
|
689
|
-
antelope.Struct.field(antelope.
|
|
690
|
-
],
|
|
691
|
-
claim_row = tslib.__decorate([
|
|
692
|
-
antelope.Struct.type('claim_row')
|
|
693
|
-
], claim_row);
|
|
694
|
-
Types.claim_row = claim_row;
|
|
695
|
-
let coordinates = class coordinates extends antelope.Struct {
|
|
696
|
-
};
|
|
697
|
-
tslib.__decorate([
|
|
698
|
-
antelope.Struct.field(antelope.Int64)
|
|
699
|
-
], coordinates.prototype, "x", void 0);
|
|
689
|
+
antelope.Struct.field(antelope.UInt64)
|
|
690
|
+
], cluster_slot.prototype, "hub", void 0);
|
|
700
691
|
tslib.__decorate([
|
|
701
|
-
antelope.Struct.field(antelope.
|
|
702
|
-
],
|
|
692
|
+
antelope.Struct.field(antelope.Int8)
|
|
693
|
+
], cluster_slot.prototype, "gx", void 0);
|
|
703
694
|
tslib.__decorate([
|
|
704
|
-
antelope.Struct.field(antelope.
|
|
705
|
-
],
|
|
706
|
-
|
|
707
|
-
antelope.Struct.type('
|
|
708
|
-
],
|
|
709
|
-
Types.
|
|
695
|
+
antelope.Struct.field(antelope.Int8)
|
|
696
|
+
], cluster_slot.prototype, "gy", void 0);
|
|
697
|
+
cluster_slot = tslib.__decorate([
|
|
698
|
+
antelope.Struct.type('cluster_slot')
|
|
699
|
+
], cluster_slot);
|
|
700
|
+
Types.cluster_slot = cluster_slot;
|
|
710
701
|
let claimplot = class claimplot extends antelope.Struct {
|
|
711
702
|
};
|
|
712
703
|
tslib.__decorate([
|
|
@@ -716,21 +707,12 @@ exports.ServerTypes = void 0;
|
|
|
716
707
|
antelope.Struct.field(antelope.UInt16)
|
|
717
708
|
], claimplot.prototype, "target_item_id", void 0);
|
|
718
709
|
tslib.__decorate([
|
|
719
|
-
antelope.Struct.field(
|
|
720
|
-
], claimplot.prototype, "
|
|
710
|
+
antelope.Struct.field(cluster_slot)
|
|
711
|
+
], claimplot.prototype, "slot", void 0);
|
|
721
712
|
claimplot = tslib.__decorate([
|
|
722
713
|
antelope.Struct.type('claimplot')
|
|
723
714
|
], claimplot);
|
|
724
715
|
Types.claimplot = claimplot;
|
|
725
|
-
let claimstarter = class claimstarter extends antelope.Struct {
|
|
726
|
-
};
|
|
727
|
-
tslib.__decorate([
|
|
728
|
-
antelope.Struct.field(antelope.Name)
|
|
729
|
-
], claimstarter.prototype, "owner", void 0);
|
|
730
|
-
claimstarter = tslib.__decorate([
|
|
731
|
-
antelope.Struct.type('claimstarter')
|
|
732
|
-
], claimstarter);
|
|
733
|
-
Types.claimstarter = claimstarter;
|
|
734
716
|
let cleanrsvp = class cleanrsvp extends antelope.Struct {
|
|
735
717
|
};
|
|
736
718
|
tslib.__decorate([
|
|
@@ -743,21 +725,33 @@ exports.ServerTypes = void 0;
|
|
|
743
725
|
antelope.Struct.type('cleanrsvp')
|
|
744
726
|
], cleanrsvp);
|
|
745
727
|
Types.cleanrsvp = cleanrsvp;
|
|
746
|
-
let
|
|
728
|
+
let cluster_cell = class cluster_cell extends antelope.Struct {
|
|
747
729
|
};
|
|
748
730
|
tslib.__decorate([
|
|
749
|
-
antelope.Struct.field(antelope.
|
|
750
|
-
],
|
|
731
|
+
antelope.Struct.field(antelope.Int8)
|
|
732
|
+
], cluster_cell.prototype, "gx", void 0);
|
|
751
733
|
tslib.__decorate([
|
|
752
|
-
antelope.Struct.field(antelope.
|
|
753
|
-
],
|
|
734
|
+
antelope.Struct.field(antelope.Int8)
|
|
735
|
+
], cluster_cell.prototype, "gy", void 0);
|
|
754
736
|
tslib.__decorate([
|
|
755
|
-
antelope.Struct.field(antelope.UInt64
|
|
756
|
-
],
|
|
757
|
-
|
|
758
|
-
antelope.Struct.type('
|
|
759
|
-
],
|
|
760
|
-
Types.
|
|
737
|
+
antelope.Struct.field(antelope.UInt64)
|
|
738
|
+
], cluster_cell.prototype, "entity", void 0);
|
|
739
|
+
cluster_cell = tslib.__decorate([
|
|
740
|
+
antelope.Struct.type('cluster_cell')
|
|
741
|
+
], cluster_cell);
|
|
742
|
+
Types.cluster_cell = cluster_cell;
|
|
743
|
+
let cluster_row = class cluster_row extends antelope.Struct {
|
|
744
|
+
};
|
|
745
|
+
tslib.__decorate([
|
|
746
|
+
antelope.Struct.field(antelope.UInt64)
|
|
747
|
+
], cluster_row.prototype, "root", void 0);
|
|
748
|
+
tslib.__decorate([
|
|
749
|
+
antelope.Struct.field(cluster_cell, { array: true })
|
|
750
|
+
], cluster_row.prototype, "cells", void 0);
|
|
751
|
+
cluster_row = tslib.__decorate([
|
|
752
|
+
antelope.Struct.type('cluster_row')
|
|
753
|
+
], cluster_row);
|
|
754
|
+
Types.cluster_row = cluster_row;
|
|
761
755
|
let commit = class commit extends antelope.Struct {
|
|
762
756
|
};
|
|
763
757
|
tslib.__decorate([
|
|
@@ -848,6 +842,21 @@ exports.ServerTypes = void 0;
|
|
|
848
842
|
antelope.Struct.type('configlog')
|
|
849
843
|
], configlog);
|
|
850
844
|
Types.configlog = configlog;
|
|
845
|
+
let coordinates = class coordinates extends antelope.Struct {
|
|
846
|
+
};
|
|
847
|
+
tslib.__decorate([
|
|
848
|
+
antelope.Struct.field(antelope.Int64)
|
|
849
|
+
], coordinates.prototype, "x", void 0);
|
|
850
|
+
tslib.__decorate([
|
|
851
|
+
antelope.Struct.field(antelope.Int64)
|
|
852
|
+
], coordinates.prototype, "y", void 0);
|
|
853
|
+
tslib.__decorate([
|
|
854
|
+
antelope.Struct.field(antelope.UInt16, { optional: true })
|
|
855
|
+
], coordinates.prototype, "z", void 0);
|
|
856
|
+
coordinates = tslib.__decorate([
|
|
857
|
+
antelope.Struct.type('coordinates')
|
|
858
|
+
], coordinates);
|
|
859
|
+
Types.coordinates = coordinates;
|
|
851
860
|
let craft = class craft extends antelope.Struct {
|
|
852
861
|
};
|
|
853
862
|
tslib.__decorate([
|
|
@@ -907,6 +916,9 @@ exports.ServerTypes = void 0;
|
|
|
907
916
|
tslib.__decorate([
|
|
908
917
|
antelope.Struct.field(cargo_ref)
|
|
909
918
|
], deploy.prototype, "ref", void 0);
|
|
919
|
+
tslib.__decorate([
|
|
920
|
+
antelope.Struct.field(cluster_slot, { optional: true })
|
|
921
|
+
], deploy.prototype, "slot", void 0);
|
|
910
922
|
deploy = tslib.__decorate([
|
|
911
923
|
antelope.Struct.type('deploy')
|
|
912
924
|
], deploy);
|
|
@@ -1385,24 +1397,27 @@ exports.ServerTypes = void 0;
|
|
|
1385
1397
|
antelope.Struct.type('epoch_row')
|
|
1386
1398
|
], epoch_row);
|
|
1387
1399
|
Types.epoch_row = epoch_row;
|
|
1388
|
-
let
|
|
1400
|
+
let grid_cell = class grid_cell extends antelope.Struct {
|
|
1389
1401
|
};
|
|
1390
1402
|
tslib.__decorate([
|
|
1391
|
-
antelope.Struct.field(antelope.
|
|
1392
|
-
],
|
|
1393
|
-
|
|
1394
|
-
antelope.Struct.
|
|
1395
|
-
],
|
|
1396
|
-
|
|
1397
|
-
|
|
1403
|
+
antelope.Struct.field(antelope.Int8)
|
|
1404
|
+
], grid_cell.prototype, "gx", void 0);
|
|
1405
|
+
tslib.__decorate([
|
|
1406
|
+
antelope.Struct.field(antelope.Int8)
|
|
1407
|
+
], grid_cell.prototype, "gy", void 0);
|
|
1408
|
+
grid_cell = tslib.__decorate([
|
|
1409
|
+
antelope.Struct.type('grid_cell')
|
|
1410
|
+
], grid_cell);
|
|
1411
|
+
Types.grid_cell = grid_cell;
|
|
1412
|
+
let footprint_result = class footprint_result extends antelope.Struct {
|
|
1398
1413
|
};
|
|
1399
1414
|
tslib.__decorate([
|
|
1400
|
-
antelope.Struct.field(
|
|
1401
|
-
],
|
|
1402
|
-
|
|
1403
|
-
antelope.Struct.type('
|
|
1404
|
-
],
|
|
1405
|
-
Types.
|
|
1415
|
+
antelope.Struct.field(grid_cell, { array: true })
|
|
1416
|
+
], footprint_result.prototype, "cells", void 0);
|
|
1417
|
+
footprint_result = tslib.__decorate([
|
|
1418
|
+
antelope.Struct.type('footprint_result')
|
|
1419
|
+
], footprint_result);
|
|
1420
|
+
Types.footprint_result = footprint_result;
|
|
1406
1421
|
let gather = class gather extends antelope.Struct {
|
|
1407
1422
|
};
|
|
1408
1423
|
tslib.__decorate([
|
|
@@ -1433,24 +1448,21 @@ exports.ServerTypes = void 0;
|
|
|
1433
1448
|
antelope.Struct.type('genesisfleet')
|
|
1434
1449
|
], genesisfleet);
|
|
1435
1450
|
Types.genesisfleet = genesisfleet;
|
|
1451
|
+
let getcluster = class getcluster extends antelope.Struct {
|
|
1452
|
+
};
|
|
1453
|
+
tslib.__decorate([
|
|
1454
|
+
antelope.Struct.field(antelope.UInt64)
|
|
1455
|
+
], getcluster.prototype, "hub_id", void 0);
|
|
1456
|
+
getcluster = tslib.__decorate([
|
|
1457
|
+
antelope.Struct.type('getcluster')
|
|
1458
|
+
], getcluster);
|
|
1459
|
+
Types.getcluster = getcluster;
|
|
1436
1460
|
let getconfig = class getconfig extends antelope.Struct {
|
|
1437
1461
|
};
|
|
1438
1462
|
getconfig = tslib.__decorate([
|
|
1439
1463
|
antelope.Struct.type('getconfig')
|
|
1440
1464
|
], getconfig);
|
|
1441
1465
|
Types.getconfig = getconfig;
|
|
1442
|
-
let getdeposit = class getdeposit extends antelope.Struct {
|
|
1443
|
-
};
|
|
1444
|
-
tslib.__decorate([
|
|
1445
|
-
antelope.Struct.field(antelope.Name)
|
|
1446
|
-
], getdeposit.prototype, "owner", void 0);
|
|
1447
|
-
tslib.__decorate([
|
|
1448
|
-
antelope.Struct.field(antelope.UInt64)
|
|
1449
|
-
], getdeposit.prototype, "asset_id", void 0);
|
|
1450
|
-
getdeposit = tslib.__decorate([
|
|
1451
|
-
antelope.Struct.type('getdeposit')
|
|
1452
|
-
], getdeposit);
|
|
1453
|
-
Types.getdeposit = getdeposit;
|
|
1454
1466
|
let getdistance = class getdistance extends antelope.Struct {
|
|
1455
1467
|
};
|
|
1456
1468
|
tslib.__decorate([
|
|
@@ -1508,6 +1520,15 @@ exports.ServerTypes = void 0;
|
|
|
1508
1520
|
antelope.Struct.type('getentity')
|
|
1509
1521
|
], getentity);
|
|
1510
1522
|
Types.getentity = getentity;
|
|
1523
|
+
let getfootprint = class getfootprint extends antelope.Struct {
|
|
1524
|
+
};
|
|
1525
|
+
tslib.__decorate([
|
|
1526
|
+
antelope.Struct.field(antelope.UInt16)
|
|
1527
|
+
], getfootprint.prototype, "item_id", void 0);
|
|
1528
|
+
getfootprint = tslib.__decorate([
|
|
1529
|
+
antelope.Struct.type('getfootprint')
|
|
1530
|
+
], getfootprint);
|
|
1531
|
+
Types.getfootprint = getfootprint;
|
|
1511
1532
|
let getitemdata = class getitemdata extends antelope.Struct {
|
|
1512
1533
|
};
|
|
1513
1534
|
getitemdata = tslib.__decorate([
|
|
@@ -1526,15 +1547,6 @@ exports.ServerTypes = void 0;
|
|
|
1526
1547
|
antelope.Struct.type('getitems')
|
|
1527
1548
|
], getitems);
|
|
1528
1549
|
Types.getitems = getitems;
|
|
1529
|
-
let getitemtype = class getitemtype extends antelope.Struct {
|
|
1530
|
-
};
|
|
1531
|
-
tslib.__decorate([
|
|
1532
|
-
antelope.Struct.field(antelope.UInt16)
|
|
1533
|
-
], getitemtype.prototype, "item_id", void 0);
|
|
1534
|
-
getitemtype = tslib.__decorate([
|
|
1535
|
-
antelope.Struct.type('getitemtype')
|
|
1536
|
-
], getitemtype);
|
|
1537
|
-
Types.getitemtype = getitemtype;
|
|
1538
1550
|
let getitemtypes = class getitemtypes extends antelope.Struct {
|
|
1539
1551
|
};
|
|
1540
1552
|
getitemtypes = tslib.__decorate([
|
|
@@ -1595,12 +1607,6 @@ exports.ServerTypes = void 0;
|
|
|
1595
1607
|
antelope.Struct.type('getnearby')
|
|
1596
1608
|
], getnearby);
|
|
1597
1609
|
Types.getnearby = getnearby;
|
|
1598
|
-
let getnftbase = class getnftbase extends antelope.Struct {
|
|
1599
|
-
};
|
|
1600
|
-
getnftbase = tslib.__decorate([
|
|
1601
|
-
antelope.Struct.type('getnftbase')
|
|
1602
|
-
], getnftbase);
|
|
1603
|
-
Types.getnftbase = getnftbase;
|
|
1604
1610
|
let getnftinfo = class getnftinfo extends antelope.Struct {
|
|
1605
1611
|
};
|
|
1606
1612
|
getnftinfo = tslib.__decorate([
|
|
@@ -1775,99 +1781,6 @@ exports.ServerTypes = void 0;
|
|
|
1775
1781
|
antelope.Struct.type('hash512')
|
|
1776
1782
|
], hash512);
|
|
1777
1783
|
Types.hash512 = hash512;
|
|
1778
|
-
let importcargo = class importcargo extends antelope.Struct {
|
|
1779
|
-
};
|
|
1780
|
-
tslib.__decorate([
|
|
1781
|
-
antelope.Struct.field(cargo_row)
|
|
1782
|
-
], importcargo.prototype, "row", void 0);
|
|
1783
|
-
importcargo = tslib.__decorate([
|
|
1784
|
-
antelope.Struct.type('importcargo')
|
|
1785
|
-
], importcargo);
|
|
1786
|
-
Types.importcargo = importcargo;
|
|
1787
|
-
let importentity = class importentity extends antelope.Struct {
|
|
1788
|
-
};
|
|
1789
|
-
tslib.__decorate([
|
|
1790
|
-
antelope.Struct.field(entity_row)
|
|
1791
|
-
], importentity.prototype, "row", void 0);
|
|
1792
|
-
importentity = tslib.__decorate([
|
|
1793
|
-
antelope.Struct.type('importentity')
|
|
1794
|
-
], importentity);
|
|
1795
|
-
Types.importentity = importentity;
|
|
1796
|
-
let importgroup = class importgroup extends antelope.Struct {
|
|
1797
|
-
};
|
|
1798
|
-
tslib.__decorate([
|
|
1799
|
-
antelope.Struct.field(entitygroup_row)
|
|
1800
|
-
], importgroup.prototype, "row", void 0);
|
|
1801
|
-
importgroup = tslib.__decorate([
|
|
1802
|
-
antelope.Struct.type('importgroup')
|
|
1803
|
-
], importgroup);
|
|
1804
|
-
Types.importgroup = importgroup;
|
|
1805
|
-
let importplayer = class importplayer extends antelope.Struct {
|
|
1806
|
-
};
|
|
1807
|
-
tslib.__decorate([
|
|
1808
|
-
antelope.Struct.field(antelope.Name)
|
|
1809
|
-
], importplayer.prototype, "owner", void 0);
|
|
1810
|
-
importplayer = tslib.__decorate([
|
|
1811
|
-
antelope.Struct.type('importplayer')
|
|
1812
|
-
], importplayer);
|
|
1813
|
-
Types.importplayer = importplayer;
|
|
1814
|
-
let reserve_row = class reserve_row extends antelope.Struct {
|
|
1815
|
-
};
|
|
1816
|
-
tslib.__decorate([
|
|
1817
|
-
antelope.Struct.field(antelope.UInt64)
|
|
1818
|
-
], reserve_row.prototype, "id", void 0);
|
|
1819
|
-
tslib.__decorate([
|
|
1820
|
-
antelope.Struct.field(antelope.UInt64)
|
|
1821
|
-
], reserve_row.prototype, "coord_id", void 0);
|
|
1822
|
-
tslib.__decorate([
|
|
1823
|
-
antelope.Struct.field(antelope.UInt16)
|
|
1824
|
-
], reserve_row.prototype, "stratum", void 0);
|
|
1825
|
-
tslib.__decorate([
|
|
1826
|
-
antelope.Struct.field(antelope.UInt32)
|
|
1827
|
-
], reserve_row.prototype, "remaining", void 0);
|
|
1828
|
-
tslib.__decorate([
|
|
1829
|
-
antelope.Struct.field(antelope.BlockTimestamp)
|
|
1830
|
-
], reserve_row.prototype, "last_block", void 0);
|
|
1831
|
-
reserve_row = tslib.__decorate([
|
|
1832
|
-
antelope.Struct.type('reserve_row')
|
|
1833
|
-
], reserve_row);
|
|
1834
|
-
Types.reserve_row = reserve_row;
|
|
1835
|
-
let importreserve = class importreserve extends antelope.Struct {
|
|
1836
|
-
};
|
|
1837
|
-
tslib.__decorate([
|
|
1838
|
-
antelope.Struct.field(antelope.UInt32)
|
|
1839
|
-
], importreserve.prototype, "epoch_scope", void 0);
|
|
1840
|
-
tslib.__decorate([
|
|
1841
|
-
antelope.Struct.field(reserve_row)
|
|
1842
|
-
], importreserve.prototype, "row", void 0);
|
|
1843
|
-
importreserve = tslib.__decorate([
|
|
1844
|
-
antelope.Struct.type('importreserve')
|
|
1845
|
-
], importreserve);
|
|
1846
|
-
Types.importreserve = importreserve;
|
|
1847
|
-
let state_row = class state_row extends antelope.Struct {
|
|
1848
|
-
};
|
|
1849
|
-
tslib.__decorate([
|
|
1850
|
-
antelope.Struct.field('bool')
|
|
1851
|
-
], state_row.prototype, "enabled", void 0);
|
|
1852
|
-
tslib.__decorate([
|
|
1853
|
-
antelope.Struct.field(antelope.UInt32)
|
|
1854
|
-
], state_row.prototype, "epoch", void 0);
|
|
1855
|
-
tslib.__decorate([
|
|
1856
|
-
antelope.Struct.field(antelope.Checksum256)
|
|
1857
|
-
], state_row.prototype, "seed", void 0);
|
|
1858
|
-
state_row = tslib.__decorate([
|
|
1859
|
-
antelope.Struct.type('state_row')
|
|
1860
|
-
], state_row);
|
|
1861
|
-
Types.state_row = state_row;
|
|
1862
|
-
let importstate = class importstate extends antelope.Struct {
|
|
1863
|
-
};
|
|
1864
|
-
tslib.__decorate([
|
|
1865
|
-
antelope.Struct.field(state_row)
|
|
1866
|
-
], importstate.prototype, "row", void 0);
|
|
1867
|
-
importstate = tslib.__decorate([
|
|
1868
|
-
antelope.Struct.type('importstate')
|
|
1869
|
-
], importstate);
|
|
1870
|
-
Types.importstate = importstate;
|
|
1871
1784
|
let item_id_pair = class item_id_pair extends antelope.Struct {
|
|
1872
1785
|
};
|
|
1873
1786
|
tslib.__decorate([
|
|
@@ -2153,6 +2066,27 @@ exports.ServerTypes = void 0;
|
|
|
2153
2066
|
antelope.Struct.type('modules_result')
|
|
2154
2067
|
], modules_result);
|
|
2155
2068
|
Types.modules_result = modules_result;
|
|
2069
|
+
let movetile = class movetile extends antelope.Struct {
|
|
2070
|
+
};
|
|
2071
|
+
tslib.__decorate([
|
|
2072
|
+
antelope.Struct.field(antelope.UInt64)
|
|
2073
|
+
], movetile.prototype, "hub_id", void 0);
|
|
2074
|
+
tslib.__decorate([
|
|
2075
|
+
antelope.Struct.field(antelope.Int8)
|
|
2076
|
+
], movetile.prototype, "from_gx", void 0);
|
|
2077
|
+
tslib.__decorate([
|
|
2078
|
+
antelope.Struct.field(antelope.Int8)
|
|
2079
|
+
], movetile.prototype, "from_gy", void 0);
|
|
2080
|
+
tslib.__decorate([
|
|
2081
|
+
antelope.Struct.field(antelope.Int8)
|
|
2082
|
+
], movetile.prototype, "to_gx", void 0);
|
|
2083
|
+
tslib.__decorate([
|
|
2084
|
+
antelope.Struct.field(antelope.Int8)
|
|
2085
|
+
], movetile.prototype, "to_gy", void 0);
|
|
2086
|
+
movetile = tslib.__decorate([
|
|
2087
|
+
antelope.Struct.type('movetile')
|
|
2088
|
+
], movetile);
|
|
2089
|
+
Types.movetile = movetile;
|
|
2156
2090
|
let nearby_system = class nearby_system extends antelope.Struct {
|
|
2157
2091
|
};
|
|
2158
2092
|
tslib.__decorate([
|
|
@@ -2507,6 +2441,27 @@ exports.ServerTypes = void 0;
|
|
|
2507
2441
|
antelope.Struct.type('rename')
|
|
2508
2442
|
], rename);
|
|
2509
2443
|
Types.rename = rename;
|
|
2444
|
+
let reserve_row = class reserve_row extends antelope.Struct {
|
|
2445
|
+
};
|
|
2446
|
+
tslib.__decorate([
|
|
2447
|
+
antelope.Struct.field(antelope.UInt64)
|
|
2448
|
+
], reserve_row.prototype, "id", void 0);
|
|
2449
|
+
tslib.__decorate([
|
|
2450
|
+
antelope.Struct.field(antelope.UInt64)
|
|
2451
|
+
], reserve_row.prototype, "coord_id", void 0);
|
|
2452
|
+
tslib.__decorate([
|
|
2453
|
+
antelope.Struct.field(antelope.UInt16)
|
|
2454
|
+
], reserve_row.prototype, "stratum", void 0);
|
|
2455
|
+
tslib.__decorate([
|
|
2456
|
+
antelope.Struct.field(antelope.UInt32)
|
|
2457
|
+
], reserve_row.prototype, "remaining", void 0);
|
|
2458
|
+
tslib.__decorate([
|
|
2459
|
+
antelope.Struct.field(antelope.BlockTimestamp)
|
|
2460
|
+
], reserve_row.prototype, "last_block", void 0);
|
|
2461
|
+
reserve_row = tslib.__decorate([
|
|
2462
|
+
antelope.Struct.type('reserve_row')
|
|
2463
|
+
], reserve_row);
|
|
2464
|
+
Types.reserve_row = reserve_row;
|
|
2510
2465
|
let resolve = class resolve extends antelope.Struct {
|
|
2511
2466
|
};
|
|
2512
2467
|
tslib.__decorate([
|
|
@@ -2663,21 +2618,6 @@ exports.ServerTypes = void 0;
|
|
|
2663
2618
|
antelope.Struct.type('rmnftcfg')
|
|
2664
2619
|
], rmnftcfg);
|
|
2665
2620
|
Types.rmnftcfg = rmnftcfg;
|
|
2666
|
-
let setcoords = class setcoords extends antelope.Struct {
|
|
2667
|
-
};
|
|
2668
|
-
tslib.__decorate([
|
|
2669
|
-
antelope.Struct.field(antelope.UInt64)
|
|
2670
|
-
], setcoords.prototype, "entity_id", void 0);
|
|
2671
|
-
tslib.__decorate([
|
|
2672
|
-
antelope.Struct.field(antelope.Int64)
|
|
2673
|
-
], setcoords.prototype, "x", void 0);
|
|
2674
|
-
tslib.__decorate([
|
|
2675
|
-
antelope.Struct.field(antelope.Int64)
|
|
2676
|
-
], setcoords.prototype, "y", void 0);
|
|
2677
|
-
setcoords = tslib.__decorate([
|
|
2678
|
-
antelope.Struct.type('setcoords')
|
|
2679
|
-
], setcoords);
|
|
2680
|
-
Types.setcoords = setcoords;
|
|
2681
2621
|
let setnftcfg = class setnftcfg extends antelope.Struct {
|
|
2682
2622
|
};
|
|
2683
2623
|
tslib.__decorate([
|
|
@@ -2729,6 +2669,21 @@ exports.ServerTypes = void 0;
|
|
|
2729
2669
|
antelope.Struct.type('setwrapfee')
|
|
2730
2670
|
], setwrapfee);
|
|
2731
2671
|
Types.setwrapfee = setwrapfee;
|
|
2672
|
+
let state_row = class state_row extends antelope.Struct {
|
|
2673
|
+
};
|
|
2674
|
+
tslib.__decorate([
|
|
2675
|
+
antelope.Struct.field('bool')
|
|
2676
|
+
], state_row.prototype, "enabled", void 0);
|
|
2677
|
+
tslib.__decorate([
|
|
2678
|
+
antelope.Struct.field(antelope.UInt32)
|
|
2679
|
+
], state_row.prototype, "epoch", void 0);
|
|
2680
|
+
tslib.__decorate([
|
|
2681
|
+
antelope.Struct.field(antelope.Checksum256)
|
|
2682
|
+
], state_row.prototype, "seed", void 0);
|
|
2683
|
+
state_row = tslib.__decorate([
|
|
2684
|
+
antelope.Struct.type('state_row')
|
|
2685
|
+
], state_row);
|
|
2686
|
+
Types.state_row = state_row;
|
|
2732
2687
|
let stowcargo = class stowcargo extends antelope.Struct {
|
|
2733
2688
|
};
|
|
2734
2689
|
tslib.__decorate([
|
|
@@ -2939,12 +2894,6 @@ exports.ServerTypes = void 0;
|
|
|
2939
2894
|
antelope.Struct.type('warp')
|
|
2940
2895
|
], warp);
|
|
2941
2896
|
Types.warp = warp;
|
|
2942
|
-
let wipe = class wipe extends antelope.Struct {
|
|
2943
|
-
};
|
|
2944
|
-
wipe = tslib.__decorate([
|
|
2945
|
-
antelope.Struct.type('wipe')
|
|
2946
|
-
], wipe);
|
|
2947
|
-
Types.wipe = wipe;
|
|
2948
2897
|
let wormhole_info = class wormhole_info extends antelope.Struct {
|
|
2949
2898
|
};
|
|
2950
2899
|
tslib.__decorate([
|
|
@@ -2990,7 +2939,7 @@ exports.ServerTypes = void 0;
|
|
|
2990
2939
|
})(exports.ServerTypes || (exports.ServerTypes = {}));
|
|
2991
2940
|
const TableMap = {
|
|
2992
2941
|
cargo: exports.ServerTypes.cargo_row,
|
|
2993
|
-
|
|
2942
|
+
cluster: exports.ServerTypes.cluster_row,
|
|
2994
2943
|
commit: exports.ServerTypes.commit_row,
|
|
2995
2944
|
entity: exports.ServerTypes.entity_row,
|
|
2996
2945
|
entitygroup: exports.ServerTypes.entitygroup_row,
|
|
@@ -3296,6 +3245,7 @@ const ITEM_EXTRACTOR_T1_PACKED = 10203;
|
|
|
3296
3245
|
const ITEM_FACTORY_T1_PACKED = 10204;
|
|
3297
3246
|
const ITEM_MASS_DRIVER_T1_PACKED = 10205;
|
|
3298
3247
|
const ITEM_MASS_CATCHER_T1_PACKED = 10206;
|
|
3248
|
+
const ITEM_HUB_T1_PACKED = 10207;
|
|
3299
3249
|
const ITEM_PLATE_T2 = 20001;
|
|
3300
3250
|
const ITEM_FRAME_T2 = 20002;
|
|
3301
3251
|
const ITEM_CONTAINER_T2_PACKED = 20200;
|
|
@@ -3326,6 +3276,14 @@ var recipes = [
|
|
|
3326
3276
|
statIndex: 2
|
|
3327
3277
|
}
|
|
3328
3278
|
]
|
|
3279
|
+
},
|
|
3280
|
+
{
|
|
3281
|
+
sources: [
|
|
3282
|
+
{
|
|
3283
|
+
inputIndex: 0,
|
|
3284
|
+
statIndex: 1
|
|
3285
|
+
}
|
|
3286
|
+
]
|
|
3329
3287
|
}
|
|
3330
3288
|
],
|
|
3331
3289
|
blendWeights: [
|
|
@@ -3360,6 +3318,22 @@ var recipes = [
|
|
|
3360
3318
|
statIndex: 0
|
|
3361
3319
|
}
|
|
3362
3320
|
]
|
|
3321
|
+
},
|
|
3322
|
+
{
|
|
3323
|
+
sources: [
|
|
3324
|
+
{
|
|
3325
|
+
inputIndex: 0,
|
|
3326
|
+
statIndex: 2
|
|
3327
|
+
}
|
|
3328
|
+
]
|
|
3329
|
+
},
|
|
3330
|
+
{
|
|
3331
|
+
sources: [
|
|
3332
|
+
{
|
|
3333
|
+
inputIndex: 1,
|
|
3334
|
+
statIndex: 2
|
|
3335
|
+
}
|
|
3336
|
+
]
|
|
3363
3337
|
}
|
|
3364
3338
|
],
|
|
3365
3339
|
blendWeights: [
|
|
@@ -3390,6 +3364,14 @@ var recipes = [
|
|
|
3390
3364
|
statIndex: 2
|
|
3391
3365
|
}
|
|
3392
3366
|
]
|
|
3367
|
+
},
|
|
3368
|
+
{
|
|
3369
|
+
sources: [
|
|
3370
|
+
{
|
|
3371
|
+
inputIndex: 0,
|
|
3372
|
+
statIndex: 1
|
|
3373
|
+
}
|
|
3374
|
+
]
|
|
3393
3375
|
}
|
|
3394
3376
|
],
|
|
3395
3377
|
blendWeights: [
|
|
@@ -3424,6 +3406,14 @@ var recipes = [
|
|
|
3424
3406
|
statIndex: 2
|
|
3425
3407
|
}
|
|
3426
3408
|
]
|
|
3409
|
+
},
|
|
3410
|
+
{
|
|
3411
|
+
sources: [
|
|
3412
|
+
{
|
|
3413
|
+
inputIndex: 0,
|
|
3414
|
+
statIndex: 0
|
|
3415
|
+
}
|
|
3416
|
+
]
|
|
3427
3417
|
}
|
|
3428
3418
|
],
|
|
3429
3419
|
blendWeights: [
|
|
@@ -3458,6 +3448,14 @@ var recipes = [
|
|
|
3458
3448
|
statIndex: 1
|
|
3459
3449
|
}
|
|
3460
3450
|
]
|
|
3451
|
+
},
|
|
3452
|
+
{
|
|
3453
|
+
sources: [
|
|
3454
|
+
{
|
|
3455
|
+
inputIndex: 0,
|
|
3456
|
+
statIndex: 2
|
|
3457
|
+
}
|
|
3458
|
+
]
|
|
3461
3459
|
}
|
|
3462
3460
|
],
|
|
3463
3461
|
blendWeights: [
|
|
@@ -3488,6 +3486,14 @@ var recipes = [
|
|
|
3488
3486
|
statIndex: 2
|
|
3489
3487
|
}
|
|
3490
3488
|
]
|
|
3489
|
+
},
|
|
3490
|
+
{
|
|
3491
|
+
sources: [
|
|
3492
|
+
{
|
|
3493
|
+
inputIndex: 0,
|
|
3494
|
+
statIndex: 1
|
|
3495
|
+
}
|
|
3496
|
+
]
|
|
3491
3497
|
}
|
|
3492
3498
|
],
|
|
3493
3499
|
blendWeights: [
|
|
@@ -3518,6 +3524,14 @@ var recipes = [
|
|
|
3518
3524
|
statIndex: 1
|
|
3519
3525
|
}
|
|
3520
3526
|
]
|
|
3527
|
+
},
|
|
3528
|
+
{
|
|
3529
|
+
sources: [
|
|
3530
|
+
{
|
|
3531
|
+
inputIndex: 0,
|
|
3532
|
+
statIndex: 2
|
|
3533
|
+
}
|
|
3534
|
+
]
|
|
3521
3535
|
}
|
|
3522
3536
|
],
|
|
3523
3537
|
blendWeights: [
|
|
@@ -3582,6 +3596,22 @@ var recipes = [
|
|
|
3582
3596
|
statIndex: 2
|
|
3583
3597
|
}
|
|
3584
3598
|
]
|
|
3599
|
+
},
|
|
3600
|
+
{
|
|
3601
|
+
sources: [
|
|
3602
|
+
{
|
|
3603
|
+
inputIndex: 1,
|
|
3604
|
+
statIndex: 2
|
|
3605
|
+
}
|
|
3606
|
+
]
|
|
3607
|
+
},
|
|
3608
|
+
{
|
|
3609
|
+
sources: [
|
|
3610
|
+
{
|
|
3611
|
+
inputIndex: 1,
|
|
3612
|
+
statIndex: 0
|
|
3613
|
+
}
|
|
3614
|
+
]
|
|
3585
3615
|
}
|
|
3586
3616
|
],
|
|
3587
3617
|
blendWeights: [
|
|
@@ -3616,6 +3646,14 @@ var recipes = [
|
|
|
3616
3646
|
statIndex: 0
|
|
3617
3647
|
}
|
|
3618
3648
|
]
|
|
3649
|
+
},
|
|
3650
|
+
{
|
|
3651
|
+
sources: [
|
|
3652
|
+
{
|
|
3653
|
+
inputIndex: 0,
|
|
3654
|
+
statIndex: 1
|
|
3655
|
+
}
|
|
3656
|
+
]
|
|
3619
3657
|
}
|
|
3620
3658
|
],
|
|
3621
3659
|
blendWeights: [
|
|
@@ -3636,6 +3674,10 @@ var recipes = [
|
|
|
3636
3674
|
{
|
|
3637
3675
|
inputIndex: 0,
|
|
3638
3676
|
statIndex: 0
|
|
3677
|
+
},
|
|
3678
|
+
{
|
|
3679
|
+
inputIndex: 0,
|
|
3680
|
+
statIndex: 2
|
|
3639
3681
|
}
|
|
3640
3682
|
]
|
|
3641
3683
|
},
|
|
@@ -3649,6 +3691,7 @@ var recipes = [
|
|
|
3649
3691
|
}
|
|
3650
3692
|
],
|
|
3651
3693
|
blendWeights: [
|
|
3694
|
+
1
|
|
3652
3695
|
]
|
|
3653
3696
|
},
|
|
3654
3697
|
{
|
|
@@ -3666,6 +3709,10 @@ var recipes = [
|
|
|
3666
3709
|
{
|
|
3667
3710
|
inputIndex: 0,
|
|
3668
3711
|
statIndex: 0
|
|
3712
|
+
},
|
|
3713
|
+
{
|
|
3714
|
+
inputIndex: 0,
|
|
3715
|
+
statIndex: 2
|
|
3669
3716
|
}
|
|
3670
3717
|
]
|
|
3671
3718
|
},
|
|
@@ -3679,6 +3726,7 @@ var recipes = [
|
|
|
3679
3726
|
}
|
|
3680
3727
|
],
|
|
3681
3728
|
blendWeights: [
|
|
3729
|
+
1
|
|
3682
3730
|
]
|
|
3683
3731
|
},
|
|
3684
3732
|
{
|
|
@@ -3690,7 +3738,7 @@ var recipes = [
|
|
|
3690
3738
|
quantity: 300
|
|
3691
3739
|
},
|
|
3692
3740
|
{
|
|
3693
|
-
itemId:
|
|
3741
|
+
itemId: 10002,
|
|
3694
3742
|
quantity: 300
|
|
3695
3743
|
}
|
|
3696
3744
|
],
|
|
@@ -3700,14 +3748,10 @@ var recipes = [
|
|
|
3700
3748
|
{
|
|
3701
3749
|
inputIndex: 0,
|
|
3702
3750
|
statIndex: 0
|
|
3703
|
-
}
|
|
3704
|
-
]
|
|
3705
|
-
},
|
|
3706
|
-
{
|
|
3707
|
-
sources: [
|
|
3751
|
+
},
|
|
3708
3752
|
{
|
|
3709
3753
|
inputIndex: 0,
|
|
3710
|
-
statIndex:
|
|
3754
|
+
statIndex: 2
|
|
3711
3755
|
}
|
|
3712
3756
|
]
|
|
3713
3757
|
},
|
|
@@ -3716,6 +3760,10 @@ var recipes = [
|
|
|
3716
3760
|
{
|
|
3717
3761
|
inputIndex: 1,
|
|
3718
3762
|
statIndex: 0
|
|
3763
|
+
},
|
|
3764
|
+
{
|
|
3765
|
+
inputIndex: 0,
|
|
3766
|
+
statIndex: 1
|
|
3719
3767
|
}
|
|
3720
3768
|
]
|
|
3721
3769
|
},
|
|
@@ -3723,12 +3771,14 @@ var recipes = [
|
|
|
3723
3771
|
sources: [
|
|
3724
3772
|
{
|
|
3725
3773
|
inputIndex: 1,
|
|
3726
|
-
statIndex:
|
|
3774
|
+
statIndex: 3
|
|
3727
3775
|
}
|
|
3728
3776
|
]
|
|
3729
3777
|
}
|
|
3730
3778
|
],
|
|
3731
3779
|
blendWeights: [
|
|
3780
|
+
1,
|
|
3781
|
+
1
|
|
3732
3782
|
]
|
|
3733
3783
|
},
|
|
3734
3784
|
{
|
|
@@ -3753,12 +3803,17 @@ var recipes = [
|
|
|
3753
3803
|
sources: [
|
|
3754
3804
|
{
|
|
3755
3805
|
inputIndex: 0,
|
|
3756
|
-
statIndex: 0
|
|
3806
|
+
statIndex: 0
|
|
3807
|
+
},
|
|
3808
|
+
{
|
|
3809
|
+
inputIndex: 0,
|
|
3810
|
+
statIndex: 2
|
|
3757
3811
|
}
|
|
3758
3812
|
]
|
|
3759
3813
|
}
|
|
3760
3814
|
],
|
|
3761
3815
|
blendWeights: [
|
|
3816
|
+
1
|
|
3762
3817
|
]
|
|
3763
3818
|
},
|
|
3764
3819
|
{
|
|
@@ -3779,7 +3834,11 @@ var recipes = [
|
|
|
3779
3834
|
sources: [
|
|
3780
3835
|
{
|
|
3781
3836
|
inputIndex: 0,
|
|
3782
|
-
statIndex:
|
|
3837
|
+
statIndex: 2
|
|
3838
|
+
},
|
|
3839
|
+
{
|
|
3840
|
+
inputIndex: 0,
|
|
3841
|
+
statIndex: 3
|
|
3783
3842
|
}
|
|
3784
3843
|
]
|
|
3785
3844
|
},
|
|
@@ -3793,6 +3852,8 @@ var recipes = [
|
|
|
3793
3852
|
}
|
|
3794
3853
|
],
|
|
3795
3854
|
blendWeights: [
|
|
3855
|
+
1,
|
|
3856
|
+
1
|
|
3796
3857
|
]
|
|
3797
3858
|
},
|
|
3798
3859
|
{
|
|
@@ -3864,6 +3925,10 @@ var recipes = [
|
|
|
3864
3925
|
{
|
|
3865
3926
|
inputIndex: 0,
|
|
3866
3927
|
statIndex: 0
|
|
3928
|
+
},
|
|
3929
|
+
{
|
|
3930
|
+
inputIndex: 0,
|
|
3931
|
+
statIndex: 1
|
|
3867
3932
|
}
|
|
3868
3933
|
]
|
|
3869
3934
|
},
|
|
@@ -3879,12 +3944,14 @@ var recipes = [
|
|
|
3879
3944
|
sources: [
|
|
3880
3945
|
{
|
|
3881
3946
|
inputIndex: 0,
|
|
3882
|
-
statIndex:
|
|
3947
|
+
statIndex: 2
|
|
3883
3948
|
}
|
|
3884
3949
|
]
|
|
3885
3950
|
}
|
|
3886
3951
|
],
|
|
3887
3952
|
blendWeights: [
|
|
3953
|
+
1,
|
|
3954
|
+
1
|
|
3888
3955
|
]
|
|
3889
3956
|
},
|
|
3890
3957
|
{
|
|
@@ -3905,11 +3972,11 @@ var recipes = [
|
|
|
3905
3972
|
sources: [
|
|
3906
3973
|
{
|
|
3907
3974
|
inputIndex: 0,
|
|
3908
|
-
statIndex:
|
|
3975
|
+
statIndex: 1
|
|
3909
3976
|
},
|
|
3910
3977
|
{
|
|
3911
|
-
inputIndex:
|
|
3912
|
-
statIndex:
|
|
3978
|
+
inputIndex: 0,
|
|
3979
|
+
statIndex: 2
|
|
3913
3980
|
}
|
|
3914
3981
|
]
|
|
3915
3982
|
}
|
|
@@ -4208,134 +4275,21 @@ var recipes = [
|
|
|
4208
4275
|
]
|
|
4209
4276
|
},
|
|
4210
4277
|
{
|
|
4211
|
-
outputItemId:
|
|
4212
|
-
outputMass:
|
|
4213
|
-
inputs: [
|
|
4214
|
-
{
|
|
4215
|
-
itemId: 10001,
|
|
4216
|
-
quantity: 200
|
|
4217
|
-
},
|
|
4218
|
-
{
|
|
4219
|
-
itemId: 102,
|
|
4220
|
-
quantity: 15
|
|
4221
|
-
}
|
|
4222
|
-
],
|
|
4223
|
-
statSlots: [
|
|
4224
|
-
{
|
|
4225
|
-
sources: [
|
|
4226
|
-
{
|
|
4227
|
-
inputIndex: 0,
|
|
4228
|
-
statIndex: 0
|
|
4229
|
-
},
|
|
4230
|
-
{
|
|
4231
|
-
inputIndex: 1,
|
|
4232
|
-
statIndex: 0
|
|
4233
|
-
}
|
|
4234
|
-
]
|
|
4235
|
-
},
|
|
4236
|
-
{
|
|
4237
|
-
sources: [
|
|
4238
|
-
{
|
|
4239
|
-
inputIndex: 0,
|
|
4240
|
-
statIndex: 1
|
|
4241
|
-
},
|
|
4242
|
-
{
|
|
4243
|
-
inputIndex: 1,
|
|
4244
|
-
statIndex: 2
|
|
4245
|
-
}
|
|
4246
|
-
]
|
|
4247
|
-
}
|
|
4248
|
-
],
|
|
4249
|
-
blendWeights: [
|
|
4250
|
-
1,
|
|
4251
|
-
1
|
|
4252
|
-
]
|
|
4253
|
-
},
|
|
4254
|
-
{
|
|
4255
|
-
outputItemId: 20002,
|
|
4256
|
-
outputMass: 300,
|
|
4278
|
+
outputItemId: 10207,
|
|
4279
|
+
outputMass: 2400000,
|
|
4257
4280
|
inputs: [
|
|
4258
4281
|
{
|
|
4259
|
-
itemId:
|
|
4282
|
+
itemId: 10005,
|
|
4260
4283
|
quantity: 200
|
|
4261
4284
|
},
|
|
4262
4285
|
{
|
|
4263
|
-
itemId:
|
|
4264
|
-
quantity: 10
|
|
4265
|
-
},
|
|
4266
|
-
{
|
|
4267
|
-
itemId: 502,
|
|
4268
|
-
quantity: 20
|
|
4269
|
-
}
|
|
4270
|
-
],
|
|
4271
|
-
statSlots: [
|
|
4272
|
-
{
|
|
4273
|
-
sources: [
|
|
4274
|
-
{
|
|
4275
|
-
inputIndex: 0,
|
|
4276
|
-
statIndex: 0
|
|
4277
|
-
},
|
|
4278
|
-
{
|
|
4279
|
-
inputIndex: 1,
|
|
4280
|
-
statIndex: 1
|
|
4281
|
-
}
|
|
4282
|
-
]
|
|
4283
|
-
},
|
|
4284
|
-
{
|
|
4285
|
-
sources: [
|
|
4286
|
-
{
|
|
4287
|
-
inputIndex: 0,
|
|
4288
|
-
statIndex: 1
|
|
4289
|
-
},
|
|
4290
|
-
{
|
|
4291
|
-
inputIndex: 2,
|
|
4292
|
-
statIndex: 2
|
|
4293
|
-
}
|
|
4294
|
-
]
|
|
4295
|
-
}
|
|
4296
|
-
],
|
|
4297
|
-
blendWeights: [
|
|
4298
|
-
1,
|
|
4299
|
-
1,
|
|
4300
|
-
1
|
|
4301
|
-
]
|
|
4302
|
-
},
|
|
4303
|
-
{
|
|
4304
|
-
outputItemId: 20200,
|
|
4305
|
-
outputMass: 80000,
|
|
4306
|
-
inputs: [
|
|
4307
|
-
{
|
|
4308
|
-
itemId: 20001,
|
|
4309
|
-
quantity: 600
|
|
4310
|
-
},
|
|
4311
|
-
{
|
|
4312
|
-
itemId: 20002,
|
|
4286
|
+
itemId: 10010,
|
|
4313
4287
|
quantity: 200
|
|
4314
4288
|
}
|
|
4315
4289
|
],
|
|
4316
4290
|
statSlots: [
|
|
4317
4291
|
{
|
|
4318
4292
|
sources: [
|
|
4319
|
-
{
|
|
4320
|
-
inputIndex: 0,
|
|
4321
|
-
statIndex: 0
|
|
4322
|
-
}
|
|
4323
|
-
]
|
|
4324
|
-
},
|
|
4325
|
-
{
|
|
4326
|
-
sources: [
|
|
4327
|
-
{
|
|
4328
|
-
inputIndex: 0,
|
|
4329
|
-
statIndex: 1
|
|
4330
|
-
}
|
|
4331
|
-
]
|
|
4332
|
-
},
|
|
4333
|
-
{
|
|
4334
|
-
sources: [
|
|
4335
|
-
{
|
|
4336
|
-
inputIndex: 1,
|
|
4337
|
-
statIndex: 0
|
|
4338
|
-
}
|
|
4339
4293
|
]
|
|
4340
4294
|
},
|
|
4341
4295
|
{
|
|
@@ -4464,6 +4418,11 @@ var entities = [
|
|
|
4464
4418
|
}
|
|
4465
4419
|
]
|
|
4466
4420
|
},
|
|
4421
|
+
{
|
|
4422
|
+
entityItemId: 10207,
|
|
4423
|
+
slots: [
|
|
4424
|
+
]
|
|
4425
|
+
},
|
|
4467
4426
|
{
|
|
4468
4427
|
entityItemId: 20200,
|
|
4469
4428
|
slots: [
|
|
@@ -5034,6 +4993,12 @@ var items = [
|
|
|
5034
4993
|
type: "entity",
|
|
5035
4994
|
tier: 1
|
|
5036
4995
|
},
|
|
4996
|
+
{
|
|
4997
|
+
id: 10207,
|
|
4998
|
+
mass: 2400000,
|
|
4999
|
+
type: "entity",
|
|
5000
|
+
tier: 1
|
|
5001
|
+
},
|
|
5037
5002
|
{
|
|
5038
5003
|
id: 20001,
|
|
5039
5004
|
mass: 500,
|
|
@@ -5197,43 +5162,43 @@ const itemMetadata = {
|
|
|
5197
5162
|
color: '#E86344',
|
|
5198
5163
|
},
|
|
5199
5164
|
10101: {
|
|
5200
|
-
name: '
|
|
5165
|
+
name: 'Reactor',
|
|
5201
5166
|
description: 'Basic energy system. Stores and recharges energy from resonant crystals.',
|
|
5202
5167
|
color: '#4ADBFF',
|
|
5203
5168
|
},
|
|
5204
5169
|
10102: {
|
|
5205
|
-
name: '
|
|
5170
|
+
name: 'Limpet Bay',
|
|
5206
5171
|
description: 'Basic gathering system. Probes and conduits for raw resources.',
|
|
5207
5172
|
color: '#7B8D9E',
|
|
5208
5173
|
},
|
|
5209
5174
|
10103: {
|
|
5210
|
-
name: '
|
|
5175
|
+
name: 'Shuttle Bay',
|
|
5211
5176
|
description: 'Basic cargo handling system. Loads and unloads cargo with articulated arms.',
|
|
5212
5177
|
color: '#5A8B3E',
|
|
5213
5178
|
},
|
|
5214
5179
|
10104: {
|
|
5215
|
-
name: '
|
|
5180
|
+
name: 'Fabricator',
|
|
5216
5181
|
description: 'Basic crafting system. Processes materials using reaction chambers and cutting tools.',
|
|
5217
5182
|
color: '#B877FF',
|
|
5218
5183
|
},
|
|
5219
5184
|
10105: {
|
|
5220
|
-
name: 'Cargo
|
|
5185
|
+
name: 'Cargo Hold',
|
|
5221
5186
|
description: 'Expanded cargo storage with reinforced internal holds.',
|
|
5222
5187
|
color: '#8B7355',
|
|
5223
5188
|
},
|
|
5224
5189
|
10106: {
|
|
5225
|
-
name: '
|
|
5190
|
+
name: 'Tractor Beam',
|
|
5226
5191
|
description: 'Projects a haul beam to lock onto and transport containers or warehouses through group travel.',
|
|
5227
5192
|
color: '#4ADBFF',
|
|
5228
5193
|
},
|
|
5229
5194
|
10107: {
|
|
5230
|
-
name: 'Warp',
|
|
5195
|
+
name: 'Warp Drive',
|
|
5231
5196
|
description: 'Folds local space-time around the hull, projecting the ship across vast distances in a single discharge of the entire energy reserve.',
|
|
5232
5197
|
color: '#9be4ff',
|
|
5233
5198
|
},
|
|
5234
5199
|
10108: {
|
|
5235
5200
|
name: 'Battery Bank',
|
|
5236
|
-
description: 'Stores additional charge produced by
|
|
5201
|
+
description: 'Stores additional charge produced by reactors.',
|
|
5237
5202
|
color: '#4ADBFF',
|
|
5238
5203
|
},
|
|
5239
5204
|
10109: {
|
|
@@ -5257,7 +5222,7 @@ const itemMetadata = {
|
|
|
5257
5222
|
color: '#EAB308',
|
|
5258
5223
|
},
|
|
5259
5224
|
10203: {
|
|
5260
|
-
name: '
|
|
5225
|
+
name: 'Mining Rig',
|
|
5261
5226
|
description: 'Planetary resource extraction facility with generator and gatherer module slots.',
|
|
5262
5227
|
color: '#D4726F',
|
|
5263
5228
|
},
|
|
@@ -5276,6 +5241,11 @@ const itemMetadata = {
|
|
|
5276
5241
|
description: 'Planetary receiving platform with storage module slots; catches launched payloads.',
|
|
5277
5242
|
color: '#4AE898',
|
|
5278
5243
|
},
|
|
5244
|
+
10207: {
|
|
5245
|
+
name: 'Station Hub',
|
|
5246
|
+
description: 'Orbital command structure. Anchors a player station cluster.',
|
|
5247
|
+
color: '#A0B8D0',
|
|
5248
|
+
},
|
|
5279
5249
|
20001: {
|
|
5280
5250
|
name: 'Plate',
|
|
5281
5251
|
description: 'Advanced structural plating reinforced with tier 2 ore.',
|
|
@@ -5293,12 +5263,14 @@ const itemMetadata = {
|
|
|
5293
5263
|
},
|
|
5294
5264
|
};
|
|
5295
5265
|
const entityMetadata = {
|
|
5296
|
-
10201: { moduleSlotLabels: ['Engine', '
|
|
5297
|
-
10202: {
|
|
5298
|
-
|
|
5299
|
-
|
|
5300
|
-
|
|
5301
|
-
|
|
5266
|
+
10201: { moduleSlotLabels: ['Engine', 'Reactor', 'Limpet Bay', 'Shuttle Bay', 'Cargo Hold'] },
|
|
5267
|
+
10202: {
|
|
5268
|
+
moduleSlotLabels: ['Shuttle Bay', 'Cargo Hold', 'Cargo Hold', 'Cargo Hold', 'Cargo Hold'],
|
|
5269
|
+
},
|
|
5270
|
+
10203: { moduleSlotLabels: ['Reactor', 'Limpet Bay'] },
|
|
5271
|
+
10204: { moduleSlotLabels: ['Reactor', 'Fabricator'] },
|
|
5272
|
+
10205: { moduleSlotLabels: ['Reactor', 'Drive Coil'] },
|
|
5273
|
+
10206: { moduleSlotLabels: ['Cargo Hold', 'Cargo Hold', 'Cargo Hold'] },
|
|
5302
5274
|
};
|
|
5303
5275
|
for (const item of items) {
|
|
5304
5276
|
if (!itemMetadata[item.id]) {
|
|
@@ -8129,35 +8101,35 @@ var kinds = [
|
|
|
8129
8101
|
},
|
|
8130
8102
|
{
|
|
8131
8103
|
kind: "warehouse",
|
|
8132
|
-
classification: "
|
|
8104
|
+
classification: "OrbitalStructure",
|
|
8133
8105
|
capabilityFlags: 20,
|
|
8134
8106
|
zCoord: 0,
|
|
8135
8107
|
defaultLabel: "Warehouse"
|
|
8136
8108
|
},
|
|
8137
8109
|
{
|
|
8138
8110
|
kind: "extractor",
|
|
8139
|
-
classification: "
|
|
8111
|
+
classification: "OrbitalStructure",
|
|
8140
8112
|
capabilityFlags: 20,
|
|
8141
8113
|
zCoord: 0,
|
|
8142
|
-
defaultLabel: "
|
|
8114
|
+
defaultLabel: "Mining Rig"
|
|
8143
8115
|
},
|
|
8144
8116
|
{
|
|
8145
8117
|
kind: "factory",
|
|
8146
|
-
classification: "
|
|
8118
|
+
classification: "OrbitalStructure",
|
|
8147
8119
|
capabilityFlags: 20,
|
|
8148
8120
|
zCoord: 0,
|
|
8149
8121
|
defaultLabel: "Factory"
|
|
8150
8122
|
},
|
|
8151
8123
|
{
|
|
8152
8124
|
kind: "mdriver",
|
|
8153
|
-
classification: "
|
|
8125
|
+
classification: "OrbitalStructure",
|
|
8154
8126
|
capabilityFlags: 20,
|
|
8155
8127
|
zCoord: 0,
|
|
8156
8128
|
defaultLabel: "Mass Driver"
|
|
8157
8129
|
},
|
|
8158
8130
|
{
|
|
8159
8131
|
kind: "mcatcher",
|
|
8160
|
-
classification: "
|
|
8132
|
+
classification: "OrbitalStructure",
|
|
8161
8133
|
capabilityFlags: 28,
|
|
8162
8134
|
zCoord: 0,
|
|
8163
8135
|
defaultLabel: "Mass Catcher"
|
|
@@ -8182,6 +8154,13 @@ var kinds = [
|
|
|
8182
8154
|
capabilityFlags: 0,
|
|
8183
8155
|
zCoord: 0,
|
|
8184
8156
|
defaultLabel: "Plot"
|
|
8157
|
+
},
|
|
8158
|
+
{
|
|
8159
|
+
kind: "hub",
|
|
8160
|
+
classification: "OrbitalStructure",
|
|
8161
|
+
capabilityFlags: 4,
|
|
8162
|
+
zCoord: 0,
|
|
8163
|
+
defaultLabel: "Station Hub"
|
|
8185
8164
|
}
|
|
8186
8165
|
];
|
|
8187
8166
|
var templates = [
|
|
@@ -8224,6 +8203,11 @@ var templates = [
|
|
|
8224
8203
|
itemId: 20200,
|
|
8225
8204
|
kind: "container",
|
|
8226
8205
|
displayLabel: ""
|
|
8206
|
+
},
|
|
8207
|
+
{
|
|
8208
|
+
itemId: 10207,
|
|
8209
|
+
kind: "hub",
|
|
8210
|
+
displayLabel: ""
|
|
8227
8211
|
}
|
|
8228
8212
|
];
|
|
8229
8213
|
var kindRegistryJson = {
|
|
@@ -8240,11 +8224,13 @@ exports.EntityClass = void 0;
|
|
|
8240
8224
|
EntityClass[EntityClass["OrbitalVessel"] = 0] = "OrbitalVessel";
|
|
8241
8225
|
EntityClass[EntityClass["PlanetaryStructure"] = 1] = "PlanetaryStructure";
|
|
8242
8226
|
EntityClass[EntityClass["Plot"] = 2] = "Plot";
|
|
8227
|
+
EntityClass[EntityClass["OrbitalStructure"] = 3] = "OrbitalStructure";
|
|
8243
8228
|
})(exports.EntityClass || (exports.EntityClass = {}));
|
|
8244
8229
|
const CLASSIFICATION_BY_NAME = {
|
|
8245
8230
|
OrbitalVessel: exports.EntityClass.OrbitalVessel,
|
|
8246
8231
|
PlanetaryStructure: exports.EntityClass.PlanetaryStructure,
|
|
8247
8232
|
Plot: exports.EntityClass.Plot,
|
|
8233
|
+
OrbitalStructure: exports.EntityClass.OrbitalStructure,
|
|
8248
8234
|
};
|
|
8249
8235
|
const KIND_META = (() => {
|
|
8250
8236
|
const m = new Map();
|
|
@@ -8310,6 +8296,7 @@ const ENTITY_NEXUS = antelope.Name.from('nexus');
|
|
|
8310
8296
|
const ENTITY_PLOT = antelope.Name.from('plot');
|
|
8311
8297
|
antelope.Name.from('mdriver');
|
|
8312
8298
|
antelope.Name.from('mcatcher');
|
|
8299
|
+
const ENTITY_HUB = antelope.Name.from('hub');
|
|
8313
8300
|
function isShip(entity) {
|
|
8314
8301
|
return entity.type?.equals(ENTITY_SHIP) ?? false;
|
|
8315
8302
|
}
|
|
@@ -8331,6 +8318,9 @@ function isNexus(entity) {
|
|
|
8331
8318
|
function isPlot(entity) {
|
|
8332
8319
|
return entity.type?.equals(ENTITY_PLOT) ?? false;
|
|
8333
8320
|
}
|
|
8321
|
+
function isHub(entity) {
|
|
8322
|
+
return entity.type?.equals(ENTITY_HUB) ?? false;
|
|
8323
|
+
}
|
|
8334
8324
|
|
|
8335
8325
|
class EntityInventory extends exports.ServerTypes.cargo_item {
|
|
8336
8326
|
get item() {
|
|
@@ -12501,17 +12491,27 @@ class ActionsManager extends BaseManager {
|
|
|
12501
12491
|
inputs,
|
|
12502
12492
|
});
|
|
12503
12493
|
}
|
|
12504
|
-
deploy(entityId, ref) {
|
|
12494
|
+
deploy(entityId, ref, slot) {
|
|
12505
12495
|
return this.server.action('deploy', {
|
|
12506
12496
|
id: antelope.UInt64.from(entityId),
|
|
12507
12497
|
ref,
|
|
12498
|
+
slot: slot ? { hub: antelope.UInt64.from(slot.hub), gx: slot.gx, gy: slot.gy } : undefined,
|
|
12508
12499
|
});
|
|
12509
12500
|
}
|
|
12510
|
-
claimplot(entityId, targetItemId,
|
|
12501
|
+
claimplot(entityId, targetItemId, slot) {
|
|
12511
12502
|
return this.server.action('claimplot', {
|
|
12512
12503
|
builder_id: antelope.UInt64.from(entityId),
|
|
12513
12504
|
target_item_id: antelope.UInt16.from(targetItemId),
|
|
12514
|
-
|
|
12505
|
+
slot: { hub: antelope.UInt64.from(slot.hub), gx: slot.gx, gy: slot.gy },
|
|
12506
|
+
});
|
|
12507
|
+
}
|
|
12508
|
+
movetile(hubId, fromGx, fromGy, toGx, toGy) {
|
|
12509
|
+
return this.server.action('movetile', {
|
|
12510
|
+
hub_id: antelope.UInt64.from(hubId),
|
|
12511
|
+
from_gx: fromGx,
|
|
12512
|
+
from_gy: fromGy,
|
|
12513
|
+
to_gx: toGx,
|
|
12514
|
+
to_gy: toGy,
|
|
12515
12515
|
});
|
|
12516
12516
|
}
|
|
12517
12517
|
buildplot(entityId, plotId) {
|
|
@@ -12612,6 +12612,19 @@ class ActionsManager extends BaseManager {
|
|
|
12612
12612
|
},
|
|
12613
12613
|
}, ATOMICASSETS_ABI);
|
|
12614
12614
|
}
|
|
12615
|
+
sendAsset(owner, recipient, assetId, memo = '') {
|
|
12616
|
+
return antelope.Action.from({
|
|
12617
|
+
account: this.atomicAssetsAccount,
|
|
12618
|
+
name: 'transfer',
|
|
12619
|
+
authorization: [{ actor: antelope.Name.from(owner), permission: 'active' }],
|
|
12620
|
+
data: {
|
|
12621
|
+
from: antelope.Name.from(owner),
|
|
12622
|
+
to: antelope.Name.from(recipient),
|
|
12623
|
+
asset_ids: [antelope.UInt64.from(assetId)],
|
|
12624
|
+
memo,
|
|
12625
|
+
},
|
|
12626
|
+
}, ATOMICASSETS_ABI);
|
|
12627
|
+
}
|
|
12615
12628
|
unwrapCargoTx(owner, assetId, hostId) {
|
|
12616
12629
|
return [this.transferForUnwrap(owner, assetId), this.placecargo(owner, hostId, assetId)];
|
|
12617
12630
|
}
|
|
@@ -12682,6 +12695,39 @@ class ActionsManager extends BaseManager {
|
|
|
12682
12695
|
}
|
|
12683
12696
|
}
|
|
12684
12697
|
|
|
12698
|
+
function computeFreeCells(footprint, occupied) {
|
|
12699
|
+
const taken = new Set(occupied.map((c) => `${c.gx},${c.gy}`));
|
|
12700
|
+
return footprint.filter((c) => !taken.has(`${c.gx},${c.gy}`));
|
|
12701
|
+
}
|
|
12702
|
+
class ClusterManager extends BaseManager {
|
|
12703
|
+
async getFootprint(itemId) {
|
|
12704
|
+
const res = (await this.server.readonly('getfootprint', {
|
|
12705
|
+
item_id: antelope.UInt16.from(itemId),
|
|
12706
|
+
}));
|
|
12707
|
+
return res.cells.map((c) => ({ gx: Number(c.gx), gy: Number(c.gy) }));
|
|
12708
|
+
}
|
|
12709
|
+
async getCluster(hubId) {
|
|
12710
|
+
const res = (await this.server.readonly('getcluster', {
|
|
12711
|
+
hub_id: antelope.UInt64.from(hubId),
|
|
12712
|
+
}));
|
|
12713
|
+
return {
|
|
12714
|
+
root: Number(res.root),
|
|
12715
|
+
cells: res.cells.map((c) => ({
|
|
12716
|
+
gx: Number(c.gx),
|
|
12717
|
+
gy: Number(c.gy),
|
|
12718
|
+
entity: Number(c.entity),
|
|
12719
|
+
})),
|
|
12720
|
+
};
|
|
12721
|
+
}
|
|
12722
|
+
async freeCells(hubId, hubItemId) {
|
|
12723
|
+
const [footprint, cluster] = await Promise.all([
|
|
12724
|
+
this.getFootprint(hubItemId),
|
|
12725
|
+
this.getCluster(hubId),
|
|
12726
|
+
]);
|
|
12727
|
+
return computeFreeCells(footprint, cluster.cells);
|
|
12728
|
+
}
|
|
12729
|
+
}
|
|
12730
|
+
|
|
12685
12731
|
function resolveLockedAmount(cost, feePctBasisPoints) {
|
|
12686
12732
|
const fee = (cost * BigInt(feePctBasisPoints)) / 10000n;
|
|
12687
12733
|
return cost - fee;
|
|
@@ -13069,6 +13115,9 @@ class SubscriptionsManager {
|
|
|
13069
13115
|
case 'entity_deleted':
|
|
13070
13116
|
this.handleEntityDeleted(msg);
|
|
13071
13117
|
break;
|
|
13118
|
+
case 'cluster':
|
|
13119
|
+
this.handleCluster(msg);
|
|
13120
|
+
break;
|
|
13072
13121
|
case 'error':
|
|
13073
13122
|
this.handleError(msg);
|
|
13074
13123
|
break;
|
|
@@ -13133,6 +13182,17 @@ class SubscriptionsManager {
|
|
|
13133
13182
|
}
|
|
13134
13183
|
sub.handlers.onDeleted?.(String(msg.entity_id), { seq: msg.seq });
|
|
13135
13184
|
}
|
|
13185
|
+
handleCluster(msg) {
|
|
13186
|
+
const sub = this.entitySubs.get(msg.sub_id);
|
|
13187
|
+
if (!sub)
|
|
13188
|
+
return;
|
|
13189
|
+
sub.handlers.onCluster?.({
|
|
13190
|
+
hubId: msg.hub_id,
|
|
13191
|
+
seq: msg.seq,
|
|
13192
|
+
cells: msg.erased ? null : (msg.cells ?? []),
|
|
13193
|
+
erased: msg.erased === true,
|
|
13194
|
+
});
|
|
13195
|
+
}
|
|
13136
13196
|
}
|
|
13137
13197
|
|
|
13138
13198
|
class GameContext {
|
|
@@ -13178,6 +13238,12 @@ class GameContext {
|
|
|
13178
13238
|
}
|
|
13179
13239
|
return this._actions;
|
|
13180
13240
|
}
|
|
13241
|
+
get clusters() {
|
|
13242
|
+
if (!this._clusters) {
|
|
13243
|
+
this._clusters = new ClusterManager(this);
|
|
13244
|
+
}
|
|
13245
|
+
return this._clusters;
|
|
13246
|
+
}
|
|
13181
13247
|
get nft() {
|
|
13182
13248
|
if (!this._nft) {
|
|
13183
13249
|
this._nft = new NftManager(this);
|
|
@@ -13295,6 +13361,9 @@ class Shipload {
|
|
|
13295
13361
|
get actions() {
|
|
13296
13362
|
return this._context.actions;
|
|
13297
13363
|
}
|
|
13364
|
+
get clusters() {
|
|
13365
|
+
return this._context.clusters;
|
|
13366
|
+
}
|
|
13298
13367
|
get nft() {
|
|
13299
13368
|
return this._context.nft;
|
|
13300
13369
|
}
|
|
@@ -13394,7 +13463,7 @@ function entityDisplayName(itemId) {
|
|
|
13394
13463
|
case ITEM_WAREHOUSE_T1_PACKED:
|
|
13395
13464
|
return 'Warehouse';
|
|
13396
13465
|
case ITEM_EXTRACTOR_T1_PACKED:
|
|
13397
|
-
return '
|
|
13466
|
+
return 'Mining Rig';
|
|
13398
13467
|
case ITEM_FACTORY_T1_PACKED:
|
|
13399
13468
|
return 'Factory';
|
|
13400
13469
|
case ITEM_CONTAINER_T1_PACKED:
|
|
@@ -13410,19 +13479,19 @@ function moduleDisplayName(itemId) {
|
|
|
13410
13479
|
case ITEM_ENGINE_T1:
|
|
13411
13480
|
return 'Engine';
|
|
13412
13481
|
case ITEM_GENERATOR_T1:
|
|
13413
|
-
return '
|
|
13482
|
+
return 'Reactor';
|
|
13414
13483
|
case ITEM_GATHERER_T1:
|
|
13415
|
-
return '
|
|
13484
|
+
return 'Limpet Bay';
|
|
13416
13485
|
case ITEM_LOADER_T1:
|
|
13417
|
-
return '
|
|
13486
|
+
return 'Shuttle Bay';
|
|
13418
13487
|
case ITEM_CRAFTER_T1:
|
|
13419
|
-
return '
|
|
13488
|
+
return 'Fabricator';
|
|
13420
13489
|
case ITEM_STORAGE_T1:
|
|
13421
|
-
return 'Cargo
|
|
13490
|
+
return 'Cargo Hold';
|
|
13422
13491
|
case ITEM_HAULER_T1:
|
|
13423
|
-
return '
|
|
13492
|
+
return 'Tractor Beam';
|
|
13424
13493
|
case ITEM_WARP_T1:
|
|
13425
|
-
return 'Warp';
|
|
13494
|
+
return 'Warp Drive';
|
|
13426
13495
|
case ITEM_BATTERY_T1:
|
|
13427
13496
|
return 'Battery Bank';
|
|
13428
13497
|
default:
|
|
@@ -13581,11 +13650,11 @@ function gathererDepthForTier(tol, tier) {
|
|
|
13581
13650
|
function computeGathererCapabilities(stats, tier) {
|
|
13582
13651
|
const str = stats.strength;
|
|
13583
13652
|
const con = stats.saturation;
|
|
13584
|
-
const
|
|
13653
|
+
const hrd = stats.hardness;
|
|
13585
13654
|
return {
|
|
13586
13655
|
yield: 200 + str,
|
|
13587
13656
|
drain: 2 * Math.max(250, 1250 - Math.floor((con * 25) / 20)),
|
|
13588
|
-
depth: gathererDepthForTier(
|
|
13657
|
+
depth: gathererDepthForTier(hrd, tier),
|
|
13589
13658
|
};
|
|
13590
13659
|
}
|
|
13591
13660
|
function computeLoaderCapabilities(stats) {
|
|
@@ -13598,21 +13667,21 @@ function computeLoaderCapabilities(stats) {
|
|
|
13598
13667
|
};
|
|
13599
13668
|
}
|
|
13600
13669
|
function computeCrafterCapabilities(stats) {
|
|
13601
|
-
const
|
|
13670
|
+
const fin = stats.fineness;
|
|
13602
13671
|
const con = stats.conductivity;
|
|
13603
13672
|
return {
|
|
13604
|
-
speed: 100 + Math.floor((
|
|
13673
|
+
speed: 100 + Math.floor((fin * 4) / 5),
|
|
13605
13674
|
drain: Math.max(5, 30 - Math.floor(con / 33)),
|
|
13606
13675
|
};
|
|
13607
13676
|
}
|
|
13608
13677
|
function computeHaulerCapabilities(stats) {
|
|
13609
13678
|
const resonance = stats.resonance;
|
|
13610
13679
|
const plasticity = stats.plasticity;
|
|
13611
|
-
const
|
|
13680
|
+
const conductivity = stats.conductivity;
|
|
13612
13681
|
return {
|
|
13613
13682
|
capacity: Math.max(1, 1 + Math.floor(resonance / 400)),
|
|
13614
13683
|
efficiency: 2000 + plasticity * 6,
|
|
13615
|
-
drain: Math.max(3, 15 - Math.floor(
|
|
13684
|
+
drain: Math.max(3, 15 - Math.floor(conductivity / 80)),
|
|
13616
13685
|
};
|
|
13617
13686
|
}
|
|
13618
13687
|
function computeLauncherCapabilities(stats, amp = 100) {
|
|
@@ -13657,8 +13726,8 @@ function computeBaseCapacity(itemId, stats) {
|
|
|
13657
13726
|
}
|
|
13658
13727
|
}
|
|
13659
13728
|
function computeWarpCapabilities(stats) {
|
|
13660
|
-
const
|
|
13661
|
-
return { range: 100 +
|
|
13729
|
+
const reflectivity = stats.reflectivity;
|
|
13730
|
+
return { range: 100 + reflectivity * 3 };
|
|
13662
13731
|
}
|
|
13663
13732
|
function computeWarehouseHullCapabilities(stats) {
|
|
13664
13733
|
const statSum = (stats.strength ?? 0) + (stats.hardness ?? 0);
|
|
@@ -15709,6 +15778,117 @@ function cancelEligibility(entity, laneKey, fromTaskIndex, input) {
|
|
|
15709
15778
|
return { ok: true, range, effects };
|
|
15710
15779
|
}
|
|
15711
15780
|
|
|
15781
|
+
const NFT_TRANSIT_THRUST = 400;
|
|
15782
|
+
function derivedLoaders(lanes) {
|
|
15783
|
+
if (!lanes || lanes.length === 0)
|
|
15784
|
+
return null;
|
|
15785
|
+
let totalMass = 0;
|
|
15786
|
+
let totalThrust = 0;
|
|
15787
|
+
for (const l of lanes) {
|
|
15788
|
+
totalMass += Number(l.mass);
|
|
15789
|
+
totalThrust += Number(l.thrust);
|
|
15790
|
+
}
|
|
15791
|
+
const count = lanes.length;
|
|
15792
|
+
return {
|
|
15793
|
+
mass: Math.floor(totalMass / count),
|
|
15794
|
+
thrust: Math.min(totalThrust, 65535),
|
|
15795
|
+
quantity: count,
|
|
15796
|
+
};
|
|
15797
|
+
}
|
|
15798
|
+
function acceleration(thrust, mass) {
|
|
15799
|
+
if (mass <= 0)
|
|
15800
|
+
return 0;
|
|
15801
|
+
return (thrust / mass) * PRECISION$1;
|
|
15802
|
+
}
|
|
15803
|
+
function flightTime(distance, accel) {
|
|
15804
|
+
if (accel <= 0 || distance <= 0)
|
|
15805
|
+
return 0;
|
|
15806
|
+
return Math.floor(2 * Math.sqrt(distance / accel));
|
|
15807
|
+
}
|
|
15808
|
+
function distance2d(ax, ay, bx, by) {
|
|
15809
|
+
const dx = ax - bx;
|
|
15810
|
+
const dy = ay - by;
|
|
15811
|
+
return Math.floor(Math.sqrt(dx * dx + dy * dy) * PRECISION$1);
|
|
15812
|
+
}
|
|
15813
|
+
function unwrapTransitDuration(itemMass, origin, dest) {
|
|
15814
|
+
if (itemMass <= 0)
|
|
15815
|
+
return 0;
|
|
15816
|
+
return flightTime(distance2d(origin.x, origin.y, dest.x, dest.y), acceleration(NFT_TRANSIT_THRUST, itemMass));
|
|
15817
|
+
}
|
|
15818
|
+
function unwrapLoadDuration(loaders, itemMass, destZ) {
|
|
15819
|
+
if (!loaders || itemMass <= 0)
|
|
15820
|
+
return 0;
|
|
15821
|
+
const total = itemMass + loaders.mass;
|
|
15822
|
+
const flight = flightTime(destZ, acceleration(loaders.thrust, total));
|
|
15823
|
+
return Math.floor(flight / loaders.quantity);
|
|
15824
|
+
}
|
|
15825
|
+
function estimateUnwrapDuration(dest, item) {
|
|
15826
|
+
const itemMass = Number(calcCargoItemMass({
|
|
15827
|
+
item_id: item.itemId,
|
|
15828
|
+
quantity: item.quantity,
|
|
15829
|
+
modules: item.modules,
|
|
15830
|
+
}));
|
|
15831
|
+
const loaders = derivedLoaders(dest.loader_lanes);
|
|
15832
|
+
const dz = Number(dest.coordinates.z ?? 0);
|
|
15833
|
+
const load = unwrapLoadDuration(loaders, itemMass, dz);
|
|
15834
|
+
const transit = unwrapTransitDuration(itemMass, { x: item.originX, y: item.originY }, {
|
|
15835
|
+
x: Number(dest.coordinates.x),
|
|
15836
|
+
y: Number(dest.coordinates.y),
|
|
15837
|
+
});
|
|
15838
|
+
return load + transit;
|
|
15839
|
+
}
|
|
15840
|
+
const INCOMING_HOLD_KINDS = new Set([2, 3, 5]);
|
|
15841
|
+
function incomingHoldMass(holds) {
|
|
15842
|
+
if (!holds)
|
|
15843
|
+
return 0;
|
|
15844
|
+
let total = 0;
|
|
15845
|
+
for (const h of holds) {
|
|
15846
|
+
if (INCOMING_HOLD_KINDS.has(Number(h.kind)))
|
|
15847
|
+
total += Number(h.incoming_mass);
|
|
15848
|
+
}
|
|
15849
|
+
return total;
|
|
15850
|
+
}
|
|
15851
|
+
function cargoListMass(items) {
|
|
15852
|
+
let m = 0;
|
|
15853
|
+
for (const it of items)
|
|
15854
|
+
m += Number(calcCargoItemMass(it));
|
|
15855
|
+
return m;
|
|
15856
|
+
}
|
|
15857
|
+
function projectedPeakCargomass(entity, at, addMass, removeMass = 0) {
|
|
15858
|
+
const events = [];
|
|
15859
|
+
for (const ordered of orderedTasks(entity)) {
|
|
15860
|
+
const eff = taskCargoEffect(ordered.task);
|
|
15861
|
+
const delta = cargoListMass(eff.added) - cargoListMass(eff.removed);
|
|
15862
|
+
events.push({ t: ordered.completesAt.getTime(), delta });
|
|
15863
|
+
}
|
|
15864
|
+
events.push({ t: at.getTime(), delta: addMass - removeMass });
|
|
15865
|
+
events.sort((a, b) => (a.t !== b.t ? a.t - b.t : b.delta - a.delta));
|
|
15866
|
+
let running = Number(entity.cargomass);
|
|
15867
|
+
let peak = running;
|
|
15868
|
+
for (const e of events) {
|
|
15869
|
+
running += e.delta;
|
|
15870
|
+
if (running < 0)
|
|
15871
|
+
running = 0;
|
|
15872
|
+
if (running > peak)
|
|
15873
|
+
peak = running;
|
|
15874
|
+
}
|
|
15875
|
+
return Math.min(peak, 4294967295);
|
|
15876
|
+
}
|
|
15877
|
+
function receiveFits(dest, item, now) {
|
|
15878
|
+
const capacity = Number(dest.capacity ?? 0);
|
|
15879
|
+
if (capacity <= 0)
|
|
15880
|
+
return false;
|
|
15881
|
+
const itemMass = Number(calcCargoItemMass({
|
|
15882
|
+
item_id: item.itemId,
|
|
15883
|
+
quantity: item.quantity,
|
|
15884
|
+
modules: item.modules,
|
|
15885
|
+
}));
|
|
15886
|
+
const duration = estimateUnwrapDuration(dest, item);
|
|
15887
|
+
const candidateCompletes = candidateLaneCompletesAt(dest, LANE_MOBILITY, duration, now);
|
|
15888
|
+
const peak = projectedPeakCargomass(dest, candidateCompletes, itemMass + incomingHoldMass(dest.holds));
|
|
15889
|
+
return peak <= capacity;
|
|
15890
|
+
}
|
|
15891
|
+
|
|
15712
15892
|
function maxCraftable(entity, recipe, crafterSpeed, now) {
|
|
15713
15893
|
if (recipe.inputs.length === 0)
|
|
15714
15894
|
return 0;
|
|
@@ -15988,32 +16168,32 @@ const capabilityNames = [
|
|
|
15988
16168
|
'Storage',
|
|
15989
16169
|
'Movement',
|
|
15990
16170
|
'Energy',
|
|
15991
|
-
'
|
|
16171
|
+
'Loading',
|
|
15992
16172
|
'Gathering',
|
|
15993
16173
|
'Warp',
|
|
15994
|
-
'
|
|
16174
|
+
'Crafting',
|
|
15995
16175
|
'Launch',
|
|
15996
|
-
'
|
|
16176
|
+
'Hauling',
|
|
15997
16177
|
];
|
|
15998
16178
|
const capabilityAttributes = [
|
|
15999
16179
|
{ capability: 'Hull', attribute: 'mass', description: 'Total mass of the hull' },
|
|
16000
16180
|
{
|
|
16001
16181
|
capability: 'Storage',
|
|
16002
16182
|
attribute: 'capacity',
|
|
16003
|
-
description: 'Cargo capacity added by hulls and installed Cargo
|
|
16183
|
+
description: 'Cargo capacity added by hulls and installed Cargo Hold modules',
|
|
16004
16184
|
},
|
|
16005
16185
|
{ capability: 'Movement', attribute: 'thrust', description: 'Propulsion force' },
|
|
16006
16186
|
{ capability: 'Movement', attribute: 'drain', description: 'Energy consumed per movement' },
|
|
16007
16187
|
{
|
|
16008
16188
|
capability: 'Energy',
|
|
16009
16189
|
attribute: 'capacity',
|
|
16010
|
-
description: 'Energy capacity from
|
|
16190
|
+
description: 'Energy capacity from Reactors and installed Battery Bank modules',
|
|
16011
16191
|
},
|
|
16012
16192
|
{ capability: 'Energy', attribute: 'recharge', description: 'Energy regeneration rate' },
|
|
16013
|
-
{ capability: '
|
|
16014
|
-
{ capability: '
|
|
16193
|
+
{ capability: 'Loading', attribute: 'mass', description: 'Weight of the loader unit itself' },
|
|
16194
|
+
{ capability: 'Loading', attribute: 'thrust', description: 'Loading speed/force' },
|
|
16015
16195
|
{
|
|
16016
|
-
capability: '
|
|
16196
|
+
capability: 'Loading',
|
|
16017
16197
|
attribute: 'quantity',
|
|
16018
16198
|
description: 'Number of cargo items moved per load operation',
|
|
16019
16199
|
},
|
|
@@ -16021,28 +16201,28 @@ const capabilityAttributes = [
|
|
|
16021
16201
|
{ capability: 'Gathering', attribute: 'drain', description: 'Energy consumed per gather' },
|
|
16022
16202
|
{ capability: 'Gathering', attribute: 'depth', description: 'Maximum gather depth' },
|
|
16023
16203
|
{ capability: 'Warp', attribute: 'range', description: 'Maximum warp distance' },
|
|
16024
|
-
{ capability: '
|
|
16204
|
+
{ capability: 'Crafting', attribute: 'speed', description: 'Crafting time per item' },
|
|
16025
16205
|
{
|
|
16026
|
-
capability: '
|
|
16206
|
+
capability: 'Crafting',
|
|
16027
16207
|
attribute: 'drain',
|
|
16028
16208
|
description: 'Energy consumed per second while crafting',
|
|
16029
16209
|
},
|
|
16030
|
-
{ capability: '
|
|
16210
|
+
{ capability: 'Crafting', attribute: 'quality', description: 'Modifier on output quality' },
|
|
16031
16211
|
{ capability: 'Launch', attribute: 'range', description: 'Maximum launch distance' },
|
|
16032
16212
|
{ capability: 'Launch', attribute: 'capacity', description: 'Maximum mass per launch' },
|
|
16033
16213
|
{ capability: 'Launch', attribute: 'drain', description: 'Energy consumed per launch' },
|
|
16034
16214
|
{
|
|
16035
|
-
capability: '
|
|
16215
|
+
capability: 'Hauling',
|
|
16036
16216
|
attribute: 'capacity',
|
|
16037
16217
|
description: 'Number of targets the haul beam can lock onto simultaneously',
|
|
16038
16218
|
},
|
|
16039
16219
|
{
|
|
16040
|
-
capability: '
|
|
16220
|
+
capability: 'Hauling',
|
|
16041
16221
|
attribute: 'efficiency',
|
|
16042
16222
|
description: 'Thrust penalty reduction per hauled target',
|
|
16043
16223
|
},
|
|
16044
16224
|
{
|
|
16045
|
-
capability: '
|
|
16225
|
+
capability: 'Hauling',
|
|
16046
16226
|
attribute: 'drain',
|
|
16047
16227
|
description: 'Energy consumed per target during haul-beam operation',
|
|
16048
16228
|
},
|
|
@@ -16078,12 +16258,12 @@ const SLOT_FORMULAS = {
|
|
|
16078
16258
|
2: { capability: 'Gathering', attribute: 'drain' },
|
|
16079
16259
|
},
|
|
16080
16260
|
loader: {
|
|
16081
|
-
0: { capability: '
|
|
16082
|
-
1: { capability: '
|
|
16261
|
+
0: { capability: 'Loading', attribute: 'mass' },
|
|
16262
|
+
1: { capability: 'Loading', attribute: 'thrust' },
|
|
16083
16263
|
},
|
|
16084
16264
|
crafter: {
|
|
16085
|
-
0: { capability: '
|
|
16086
|
-
1: { capability: '
|
|
16265
|
+
0: { capability: 'Crafting', attribute: 'speed' },
|
|
16266
|
+
1: { capability: 'Crafting', attribute: 'drain' },
|
|
16087
16267
|
},
|
|
16088
16268
|
storage: {
|
|
16089
16269
|
0: { capability: 'Storage', attribute: 'capacity' },
|
|
@@ -16092,9 +16272,9 @@ const SLOT_FORMULAS = {
|
|
|
16092
16272
|
3: { capability: 'Storage', attribute: 'capacity' },
|
|
16093
16273
|
},
|
|
16094
16274
|
hauler: {
|
|
16095
|
-
0: { capability: '
|
|
16096
|
-
1: { capability: '
|
|
16097
|
-
2: { capability: '
|
|
16275
|
+
0: { capability: 'Hauling', attribute: 'capacity' },
|
|
16276
|
+
1: { capability: 'Hauling', attribute: 'efficiency' },
|
|
16277
|
+
2: { capability: 'Hauling', attribute: 'drain' },
|
|
16098
16278
|
},
|
|
16099
16279
|
warp: {
|
|
16100
16280
|
0: { capability: 'Warp', attribute: 'range' },
|
|
@@ -16152,6 +16332,10 @@ function traceToRawCategoryStat(recipe, source, visited = new Set()) {
|
|
|
16152
16332
|
nextVisited.add(input.itemId);
|
|
16153
16333
|
return traceToRawCategoryStat(subRecipe, subSource, nextVisited);
|
|
16154
16334
|
}
|
|
16335
|
+
function sourceLabelForOutput(itemId) {
|
|
16336
|
+
const item = getItem(itemId);
|
|
16337
|
+
return item.type === 'entity' ? 'Hull' : item.name;
|
|
16338
|
+
}
|
|
16155
16339
|
let cached;
|
|
16156
16340
|
function deriveStatMappings() {
|
|
16157
16341
|
if (cached)
|
|
@@ -16163,16 +16347,17 @@ function deriveStatMappings() {
|
|
|
16163
16347
|
const recipe = getRecipe(itemId);
|
|
16164
16348
|
if (!recipe)
|
|
16165
16349
|
continue;
|
|
16350
|
+
const source = sourceLabelForOutput(itemId);
|
|
16166
16351
|
for (const [slotIdxStr, consumer] of Object.entries(slots)) {
|
|
16167
16352
|
const slotIdx = Number(slotIdxStr);
|
|
16168
16353
|
const slot = recipe.statSlots[slotIdx];
|
|
16169
16354
|
if (!slot)
|
|
16170
16355
|
continue;
|
|
16171
|
-
for (const
|
|
16172
|
-
const stat = traceToRawCategoryStat(recipe,
|
|
16356
|
+
for (const src of slot.sources) {
|
|
16357
|
+
const stat = traceToRawCategoryStat(recipe, src);
|
|
16173
16358
|
if (!stat)
|
|
16174
16359
|
continue;
|
|
16175
|
-
const key = `${stat.label}|${consumer.capability}|${consumer.attribute}`;
|
|
16360
|
+
const key = `${stat.label}|${consumer.capability}|${consumer.attribute}|${source}`;
|
|
16176
16361
|
if (seen.has(key))
|
|
16177
16362
|
continue;
|
|
16178
16363
|
seen.add(key);
|
|
@@ -16180,6 +16365,7 @@ function deriveStatMappings() {
|
|
|
16180
16365
|
stat: stat.label,
|
|
16181
16366
|
capability: consumer.capability,
|
|
16182
16367
|
attribute: consumer.attribute,
|
|
16368
|
+
source,
|
|
16183
16369
|
});
|
|
16184
16370
|
}
|
|
16185
16371
|
}
|
|
@@ -16196,6 +16382,42 @@ function getStatMappingsForStat(stat) {
|
|
|
16196
16382
|
function getStatMappingsForCapability(capability) {
|
|
16197
16383
|
return deriveStatMappings().filter((m) => m.capability === capability);
|
|
16198
16384
|
}
|
|
16385
|
+
function getProducersForAttribute(capability, attribute) {
|
|
16386
|
+
const seen = new Set();
|
|
16387
|
+
const out = [];
|
|
16388
|
+
for (const m of deriveStatMappings()) {
|
|
16389
|
+
if (m.capability !== capability || m.attribute !== attribute)
|
|
16390
|
+
continue;
|
|
16391
|
+
if (seen.has(m.source))
|
|
16392
|
+
continue;
|
|
16393
|
+
seen.add(m.source);
|
|
16394
|
+
out.push(m.source);
|
|
16395
|
+
}
|
|
16396
|
+
return out;
|
|
16397
|
+
}
|
|
16398
|
+
function getCapabilityAttributeRows() {
|
|
16399
|
+
const rows = [];
|
|
16400
|
+
for (const ca of capabilityAttributes) {
|
|
16401
|
+
const producers = getProducersForAttribute(ca.capability, ca.attribute);
|
|
16402
|
+
if (producers.length === 0) {
|
|
16403
|
+
rows.push({
|
|
16404
|
+
capability: ca.capability,
|
|
16405
|
+
attribute: ca.attribute,
|
|
16406
|
+
description: ca.description,
|
|
16407
|
+
});
|
|
16408
|
+
continue;
|
|
16409
|
+
}
|
|
16410
|
+
for (const source of producers) {
|
|
16411
|
+
rows.push({
|
|
16412
|
+
capability: ca.capability,
|
|
16413
|
+
attribute: ca.attribute,
|
|
16414
|
+
description: ca.description,
|
|
16415
|
+
source,
|
|
16416
|
+
});
|
|
16417
|
+
}
|
|
16418
|
+
}
|
|
16419
|
+
return rows;
|
|
16420
|
+
}
|
|
16199
16421
|
|
|
16200
16422
|
function getAllRecipes() {
|
|
16201
16423
|
return recipes;
|
|
@@ -16313,7 +16535,8 @@ function availableBuildMethods(itemId) {
|
|
|
16313
16535
|
const kindMeta = getKindMeta(template.kind);
|
|
16314
16536
|
if (!kindMeta)
|
|
16315
16537
|
return ['craft+deploy'];
|
|
16316
|
-
if (kindMeta.classification === exports.EntityClass.
|
|
16538
|
+
if (kindMeta.classification === exports.EntityClass.OrbitalStructure &&
|
|
16539
|
+
!kindMeta.kind.equals(ENTITY_HUB)) {
|
|
16317
16540
|
return ['craft+deploy', 'plot'];
|
|
16318
16541
|
}
|
|
16319
16542
|
return ['craft+deploy'];
|
|
@@ -16489,7 +16712,7 @@ function computeCapabilityGroup(moduleType, stats, tier, outputPct = 100) {
|
|
|
16489
16712
|
case MODULE_LOADER: {
|
|
16490
16713
|
const caps = computeLoaderCapabilities(stats);
|
|
16491
16714
|
return {
|
|
16492
|
-
capability: '
|
|
16715
|
+
capability: 'Loading',
|
|
16493
16716
|
attributes: [
|
|
16494
16717
|
{ label: 'Mass', value: caps.mass },
|
|
16495
16718
|
{ label: 'Thrust', value: caps.thrust },
|
|
@@ -16500,7 +16723,7 @@ function computeCapabilityGroup(moduleType, stats, tier, outputPct = 100) {
|
|
|
16500
16723
|
case MODULE_CRAFTER: {
|
|
16501
16724
|
const caps = computeCrafterCapabilities(stats);
|
|
16502
16725
|
return {
|
|
16503
|
-
capability: '
|
|
16726
|
+
capability: 'Crafting',
|
|
16504
16727
|
attributes: [
|
|
16505
16728
|
{ label: 'Speed', value: caps.speed },
|
|
16506
16729
|
{ label: 'Drain', value: caps.drain },
|
|
@@ -16510,7 +16733,7 @@ function computeCapabilityGroup(moduleType, stats, tier, outputPct = 100) {
|
|
|
16510
16733
|
case MODULE_HAULER: {
|
|
16511
16734
|
const caps = computeHaulerCapabilities(stats);
|
|
16512
16735
|
return {
|
|
16513
|
-
capability: '
|
|
16736
|
+
capability: 'Hauling',
|
|
16514
16737
|
attributes: [
|
|
16515
16738
|
{ label: 'Capacity', value: caps.capacity },
|
|
16516
16739
|
{ label: 'Efficiency', value: caps.efficiency },
|
|
@@ -16694,8 +16917,8 @@ const TEMPLATES = {
|
|
|
16694
16917
|
],
|
|
16695
16918
|
highlightKeys: ['yield', 'depth', 'drain'],
|
|
16696
16919
|
},
|
|
16697
|
-
|
|
16698
|
-
id: 'module.
|
|
16920
|
+
loading: {
|
|
16921
|
+
id: 'module.loading.description',
|
|
16699
16922
|
template: 'generates {thrust} thrust with a weight of {mass} per unit',
|
|
16700
16923
|
params: [
|
|
16701
16924
|
['thrust', 'Thrust'],
|
|
@@ -16703,8 +16926,8 @@ const TEMPLATES = {
|
|
|
16703
16926
|
],
|
|
16704
16927
|
highlightKeys: ['thrust', 'mass'],
|
|
16705
16928
|
},
|
|
16706
|
-
|
|
16707
|
-
id: 'module.
|
|
16929
|
+
crafting: {
|
|
16930
|
+
id: 'module.crafting.description',
|
|
16708
16931
|
template: 'manufactures items at {speed} speed while draining {drain} energy per second',
|
|
16709
16932
|
params: [
|
|
16710
16933
|
['speed', 'Speed'],
|
|
@@ -16724,8 +16947,8 @@ const TEMPLATES = {
|
|
|
16724
16947
|
params: [['capacity', 'Energy Capacity']],
|
|
16725
16948
|
highlightKeys: ['capacity'],
|
|
16726
16949
|
},
|
|
16727
|
-
|
|
16728
|
-
id: 'module.
|
|
16950
|
+
hauling: {
|
|
16951
|
+
id: 'module.hauling.description',
|
|
16729
16952
|
template: 'locks onto up to {capacity} targets at {efficiency} efficiency while draining {drain} energy per distance travelled per target',
|
|
16730
16953
|
params: [
|
|
16731
16954
|
['capacity', 'Capacity'],
|
|
@@ -16895,16 +17118,14 @@ function buildModuleImmutable(itemId, quantity, stats, originX, originY) {
|
|
|
16895
17118
|
}
|
|
16896
17119
|
case MODULE_GATHERER: {
|
|
16897
17120
|
const str = decodeStat(stats, 0);
|
|
16898
|
-
const
|
|
16899
|
-
const
|
|
16900
|
-
const ref = decodeStat(stats, 3);
|
|
17121
|
+
const hrd = decodeStat(stats, 1);
|
|
17122
|
+
const sat = decodeStat(stats, 2);
|
|
16901
17123
|
base.push({ first: 'strength', second: ['uint16', str] });
|
|
16902
|
-
base.push({ first: '
|
|
16903
|
-
base.push({ first: 'saturation', second: ['uint16',
|
|
16904
|
-
base.push({ first: 'plasticity', second: ['uint16', ref] });
|
|
17124
|
+
base.push({ first: 'hardness', second: ['uint16', hrd] });
|
|
17125
|
+
base.push({ first: 'saturation', second: ['uint16', sat] });
|
|
16905
17126
|
base.push({ first: 'yield', second: ['uint16', computeGathererYield(str)] });
|
|
16906
|
-
base.push({ first: 'drain', second: ['uint16', computeGathererDrain(
|
|
16907
|
-
base.push({ first: 'depth', second: ['uint16', computeGathererDepth(
|
|
17127
|
+
base.push({ first: 'drain', second: ['uint16', computeGathererDrain(sat)] });
|
|
17128
|
+
base.push({ first: 'depth', second: ['uint16', computeGathererDepth(hrd, item.tier)] });
|
|
16908
17129
|
break;
|
|
16909
17130
|
}
|
|
16910
17131
|
case MODULE_LOADER: {
|
|
@@ -16917,17 +17138,17 @@ function buildModuleImmutable(itemId, quantity, stats, originX, originY) {
|
|
|
16917
17138
|
break;
|
|
16918
17139
|
}
|
|
16919
17140
|
case MODULE_WARP: {
|
|
16920
|
-
const
|
|
16921
|
-
base.push({ first: '
|
|
16922
|
-
base.push({ first: 'range', second: ['uint32', computeWarpRange(
|
|
17141
|
+
const ref = decodeStat(stats, 0);
|
|
17142
|
+
base.push({ first: 'reflectivity', second: ['uint16', ref] });
|
|
17143
|
+
base.push({ first: 'range', second: ['uint32', computeWarpRange(ref)] });
|
|
16923
17144
|
break;
|
|
16924
17145
|
}
|
|
16925
17146
|
case MODULE_CRAFTER: {
|
|
16926
|
-
const
|
|
17147
|
+
const fin = decodeStat(stats, 0);
|
|
16927
17148
|
const con = decodeStat(stats, 1);
|
|
16928
|
-
base.push({ first: '
|
|
17149
|
+
base.push({ first: 'fineness', second: ['uint16', fin] });
|
|
16929
17150
|
base.push({ first: 'conductivity', second: ['uint16', con] });
|
|
16930
|
-
base.push({ first: 'speed', second: ['uint16', computeCrafterSpeed(
|
|
17151
|
+
base.push({ first: 'speed', second: ['uint16', computeCrafterSpeed(fin)] });
|
|
16931
17152
|
base.push({ first: 'drain', second: ['uint16', computeCrafterDrain(con)] });
|
|
16932
17153
|
break;
|
|
16933
17154
|
}
|
|
@@ -16964,13 +17185,13 @@ function buildModuleImmutable(itemId, quantity, stats, originX, originY) {
|
|
|
16964
17185
|
case MODULE_HAULER: {
|
|
16965
17186
|
const res = decodeStat(stats, 0);
|
|
16966
17187
|
const pla = decodeStat(stats, 1);
|
|
16967
|
-
const
|
|
17188
|
+
const con = decodeStat(stats, 2);
|
|
16968
17189
|
base.push({ first: 'resonance', second: ['uint16', res] });
|
|
16969
17190
|
base.push({ first: 'plasticity', second: ['uint16', pla] });
|
|
16970
|
-
base.push({ first: '
|
|
17191
|
+
base.push({ first: 'conductivity', second: ['uint16', con] });
|
|
16971
17192
|
base.push({ first: 'capacity', second: ['uint8', computeHaulerCapacity(res)] });
|
|
16972
17193
|
base.push({ first: 'efficiency', second: ['uint16', computeHaulerEfficiency(pla)] });
|
|
16973
|
-
base.push({ first: 'drain', second: ['uint16', computeHaulerDrain$1(
|
|
17194
|
+
base.push({ first: 'drain', second: ['uint16', computeHaulerDrain$1(con)] });
|
|
16974
17195
|
break;
|
|
16975
17196
|
}
|
|
16976
17197
|
}
|
|
@@ -17244,6 +17465,7 @@ exports.COORD_OFFSET = COORD_OFFSET;
|
|
|
17244
17465
|
exports.CRAFT_ENERGY_DIVISOR = CRAFT_ENERGY_DIVISOR;
|
|
17245
17466
|
exports.CRAFT_EXCEEDS_ENERGY_CAPACITY = CRAFT_EXCEEDS_ENERGY_CAPACITY;
|
|
17246
17467
|
exports.CRAFT_NOT_ENOUGH_ENERGY = CRAFT_NOT_ENOUGH_ENERGY;
|
|
17468
|
+
exports.ClusterManager = ClusterManager;
|
|
17247
17469
|
exports.ConstructionManager = ConstructionManager;
|
|
17248
17470
|
exports.Coordinates = Coordinates;
|
|
17249
17471
|
exports.DEPLOY_ENTITY_HAS_SCHEDULE = DEPLOY_ENTITY_HAS_SCHEDULE;
|
|
@@ -17263,6 +17485,7 @@ exports.ENTITY_CARGO_NOT_OWNED = ENTITY_CARGO_NOT_OWNED;
|
|
|
17263
17485
|
exports.ENTITY_CONTAINER = ENTITY_CONTAINER;
|
|
17264
17486
|
exports.ENTITY_EXTRACTOR = ENTITY_EXTRACTOR;
|
|
17265
17487
|
exports.ENTITY_FACTORY = ENTITY_FACTORY;
|
|
17488
|
+
exports.ENTITY_HUB = ENTITY_HUB;
|
|
17266
17489
|
exports.ENTITY_INVALID_CARGO = ENTITY_INVALID_CARGO;
|
|
17267
17490
|
exports.ENTITY_INVALID_DESTINATION = ENTITY_INVALID_DESTINATION;
|
|
17268
17491
|
exports.ENTITY_INVALID_TRAVEL_DURATION = ENTITY_INVALID_TRAVEL_DURATION;
|
|
@@ -17346,6 +17569,7 @@ exports.ITEM_GAS_T9 = ITEM_GAS_T9;
|
|
|
17346
17569
|
exports.ITEM_GATHERER_T1 = ITEM_GATHERER_T1;
|
|
17347
17570
|
exports.ITEM_GENERATOR_T1 = ITEM_GENERATOR_T1;
|
|
17348
17571
|
exports.ITEM_HAULER_T1 = ITEM_HAULER_T1;
|
|
17572
|
+
exports.ITEM_HUB_T1_PACKED = ITEM_HUB_T1_PACKED;
|
|
17349
17573
|
exports.ITEM_LAUNCHER_T1 = ITEM_LAUNCHER_T1;
|
|
17350
17574
|
exports.ITEM_LOADER_T1 = ITEM_LOADER_T1;
|
|
17351
17575
|
exports.ITEM_MASS_CATCHER_T1_PACKED = ITEM_MASS_CATCHER_T1_PACKED;
|
|
@@ -17575,6 +17799,7 @@ exports.computeEngineDrain = computeEngineDrain;
|
|
|
17575
17799
|
exports.computeEngineThrust = computeEngineThrust;
|
|
17576
17800
|
exports.computeEntityCapabilities = computeEntityCapabilities;
|
|
17577
17801
|
exports.computeEntityStats = computeEntityStats;
|
|
17802
|
+
exports.computeFreeCells = computeFreeCells;
|
|
17578
17803
|
exports.computeGathererCapabilities = computeGathererCapabilities;
|
|
17579
17804
|
exports.computeGathererDepth = computeGathererDepth;
|
|
17580
17805
|
exports.computeGathererDrain = computeGathererDrain;
|
|
@@ -17620,6 +17845,7 @@ exports.deriveResourceStats = deriveResourceStats;
|
|
|
17620
17845
|
exports.deriveStatMappings = deriveStatMappings;
|
|
17621
17846
|
exports.deriveStrata = deriveStrata;
|
|
17622
17847
|
exports.deriveStratum = deriveStratum;
|
|
17848
|
+
exports.derivedLoaders = derivedLoaders;
|
|
17623
17849
|
exports.describeItem = describeItem;
|
|
17624
17850
|
exports.describeModule = describeModule;
|
|
17625
17851
|
exports.describeModuleForItem = describeModuleForItem;
|
|
@@ -17645,6 +17871,7 @@ exports.energyPercent = energyPercent;
|
|
|
17645
17871
|
exports.entityDisplayName = entityDisplayName;
|
|
17646
17872
|
exports.estimateDealTravelTime = estimateDealTravelTime;
|
|
17647
17873
|
exports.estimateTravelTime = estimateTravelTime;
|
|
17874
|
+
exports.estimateUnwrapDuration = estimateUnwrapDuration;
|
|
17648
17875
|
exports.feistel = feistel;
|
|
17649
17876
|
exports.feistelInv = feistelInv;
|
|
17650
17877
|
exports.fetchAtomicAssetsForOwner = fetchAtomicAssetsForOwner;
|
|
@@ -17660,6 +17887,7 @@ exports.formatModuleLine = formatModuleLine;
|
|
|
17660
17887
|
exports.formatTier = formatTier;
|
|
17661
17888
|
exports.gathererDepthForTier = gathererDepthForTier;
|
|
17662
17889
|
exports.getAllRecipes = getAllRecipes;
|
|
17890
|
+
exports.getCapabilityAttributeRows = getCapabilityAttributeRows;
|
|
17663
17891
|
exports.getCapabilityAttributes = getCapabilityAttributes;
|
|
17664
17892
|
exports.getCategoryInfo = getCategoryInfo;
|
|
17665
17893
|
exports.getComponentDemand = getComponentDemand;
|
|
@@ -17689,6 +17917,7 @@ exports.getPackedEntityType = getPackedEntityType;
|
|
|
17689
17917
|
exports.getPlanetSubtype = getPlanetSubtype;
|
|
17690
17918
|
exports.getPlanetSubtypes = getPlanetSubtypes;
|
|
17691
17919
|
exports.getPositionAt = getPositionAt;
|
|
17920
|
+
exports.getProducersForAttribute = getProducersForAttribute;
|
|
17692
17921
|
exports.getRecipe = getRecipe;
|
|
17693
17922
|
exports.getRecipeConsumers = getRecipeConsumers;
|
|
17694
17923
|
exports.getResourceDemand = getResourceDemand;
|
|
@@ -17714,6 +17943,7 @@ exports.hasStorage = hasStorage;
|
|
|
17714
17943
|
exports.hasSystem = hasSystem;
|
|
17715
17944
|
exports.hash = hash;
|
|
17716
17945
|
exports.hash512 = hash512;
|
|
17946
|
+
exports.incomingHoldMass = incomingHoldMass;
|
|
17717
17947
|
exports.interpolateFlightPosition = interpolateFlightPosition;
|
|
17718
17948
|
exports.isBuildable = isBuildable;
|
|
17719
17949
|
exports.isContainer = isContainer;
|
|
@@ -17723,6 +17953,7 @@ exports.isFactory = isFactory;
|
|
|
17723
17953
|
exports.isFull = isFull;
|
|
17724
17954
|
exports.isFullFromMass = isFullFromMass;
|
|
17725
17955
|
exports.isGatherableLocation = isGatherableLocation;
|
|
17956
|
+
exports.isHub = isHub;
|
|
17726
17957
|
exports.isInvertedAttribute = isInvertedAttribute;
|
|
17727
17958
|
exports.isLocationBuildable = isLocationBuildable;
|
|
17728
17959
|
exports.isModuleItem = isModuleItem;
|
|
@@ -17752,6 +17983,7 @@ exports.moduleAccepts = moduleAccepts;
|
|
|
17752
17983
|
exports.moduleDisplayName = moduleDisplayName;
|
|
17753
17984
|
exports.moduleIcon = moduleIcon;
|
|
17754
17985
|
exports.moduleSlotTypeToCode = moduleSlotTypeToCode;
|
|
17986
|
+
exports.nearbyWormholes = nearbyWormholes;
|
|
17755
17987
|
exports.needsRecharge = needsRecharge;
|
|
17756
17988
|
exports.normalizeDisplayName = normalizeDisplayName;
|
|
17757
17989
|
exports.parseWireEntity = parseWireEntity;
|
|
@@ -17763,8 +17995,10 @@ exports.projectEntity = projectEntity;
|
|
|
17763
17995
|
exports.projectEntityAt = projectEntityAt;
|
|
17764
17996
|
exports.projectRemainingAt = projectRemainingAt;
|
|
17765
17997
|
exports.projectedCargoAvailableAt = projectedCargoAvailableAt;
|
|
17998
|
+
exports.projectedPeakCargomass = projectedPeakCargomass;
|
|
17766
17999
|
exports.rawScheduleEnd = rawScheduleEnd;
|
|
17767
18000
|
exports.readCommonBase = readCommonBase;
|
|
18001
|
+
exports.receiveFits = receiveFits;
|
|
17768
18002
|
exports.regionOf = regionOf;
|
|
17769
18003
|
exports.removeFromStacks = removeFromStacks;
|
|
17770
18004
|
exports.renderDescription = renderDescription;
|
|
@@ -17786,6 +18020,7 @@ exports.sdkSystemGraph = sdkSystemGraph;
|
|
|
17786
18020
|
exports.selectGatherLane = selectGatherLane;
|
|
17787
18021
|
exports.setScanProvider = setScanProvider;
|
|
17788
18022
|
exports.setSubscriptionsDebug = setSubscriptionsDebug;
|
|
18023
|
+
exports.sourceLabelForOutput = sourceLabelForOutput;
|
|
17789
18024
|
exports.stackKey = stackKey;
|
|
17790
18025
|
exports.stackToCargoItem = stackToCargoItem;
|
|
17791
18026
|
exports.stacksEqual = stacksEqual;
|
|
@@ -17800,6 +18035,8 @@ exports.tierColors = tierColors;
|
|
|
17800
18035
|
exports.tierOfReserve = tierOfReserve;
|
|
17801
18036
|
exports.toLocation = toLocation;
|
|
17802
18037
|
exports.typeLabel = typeLabel;
|
|
18038
|
+
exports.unwrapLoadDuration = unwrapLoadDuration;
|
|
18039
|
+
exports.unwrapTransitDuration = unwrapTransitDuration;
|
|
17803
18040
|
exports.validateDisplayName = validateDisplayName;
|
|
17804
18041
|
exports.validateSchedule = validateSchedule;
|
|
17805
18042
|
exports.workerLaneKey = workerLaneKey;
|