@elite-dangerous-almanac/core 0.2.4 → 0.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/PROVENANCE/i18n/SOURCES.md +118 -94
  2. package/PROVENANCE/materials/SOURCES.md +22 -0
  3. package/PROVENANCE/ships/SOURCES.md +33 -6
  4. package/README.md +14 -8
  5. package/assets/ships/LakonMiner/schematic-bottom.svg +5 -3
  6. package/assets/ships/LakonMiner/schematic-top.svg +2 -4
  7. package/dist/chunk-3CKWT2F3.js +1 -0
  8. package/dist/{chunk-7ZERP4TB.js.map → chunk-3CKWT2F3.js.map} +1 -1
  9. package/dist/{chunk-A7KNIFRU.js → chunk-3P455LF4.js} +1 -1
  10. package/dist/{chunk-A7KNIFRU.js.map → chunk-3P455LF4.js.map} +1 -1
  11. package/dist/chunk-5QSCLEEB.js +1 -0
  12. package/dist/chunk-5QSCLEEB.js.map +1 -0
  13. package/dist/{chunk-4TFAZX73.js → chunk-773VO2GK.js} +1 -1
  14. package/dist/{chunk-7EWZGDWY.js → chunk-7S7ZTZZY.js} +1 -1
  15. package/dist/chunk-A5TCT2AJ.js +1 -0
  16. package/dist/{chunk-AIEC3LBT.js.map → chunk-A5TCT2AJ.js.map} +1 -1
  17. package/dist/chunk-AAU7OM47.js +1 -0
  18. package/dist/chunk-AAU7OM47.js.map +1 -0
  19. package/dist/{chunk-3LZXB2MC.js → chunk-ABSDZINM.js} +1 -1
  20. package/dist/{chunk-DSMLYA2M.js → chunk-BMQM4JBL.js} +1 -1
  21. package/dist/{chunk-DSMLYA2M.js.map → chunk-BMQM4JBL.js.map} +1 -1
  22. package/dist/chunk-E3AUKPSQ.js +1 -0
  23. package/dist/{chunk-G2VSQFD6.js.map → chunk-E3AUKPSQ.js.map} +1 -1
  24. package/dist/chunk-EFQOUATZ.js +1 -0
  25. package/dist/chunk-EFQOUATZ.js.map +1 -0
  26. package/dist/chunk-GISL7YML.js +1 -0
  27. package/dist/chunk-GISL7YML.js.map +1 -0
  28. package/dist/chunk-IZIIGK3W.js +1 -0
  29. package/dist/{chunk-TW7LUBHD.js.map → chunk-IZIIGK3W.js.map} +1 -1
  30. package/dist/chunk-KBCA4GEZ.js +1 -0
  31. package/dist/chunk-KLC5XT6F.js +1 -0
  32. package/dist/chunk-KLC5XT6F.js.map +1 -0
  33. package/dist/chunk-LOWDDWDT.js +1 -0
  34. package/dist/{chunk-GLWPSVFV.js.map → chunk-LOWDDWDT.js.map} +1 -1
  35. package/dist/chunk-MRLUWHGI.js +1 -0
  36. package/dist/{chunk-FF2X4K5P.js.map → chunk-MRLUWHGI.js.map} +1 -1
  37. package/dist/chunk-NBLLW7TH.js +1 -0
  38. package/dist/chunk-NBLLW7TH.js.map +1 -0
  39. package/dist/{chunk-IWFQ4ZKF.js → chunk-OFZGNWBT.js} +1 -1
  40. package/dist/chunk-PF3HZ73R.js +1 -0
  41. package/dist/{chunk-ITKZKREP.js.map → chunk-PF3HZ73R.js.map} +1 -1
  42. package/dist/{chunk-KGJCTSVV.js → chunk-S3MONE55.js} +1 -1
  43. package/dist/chunk-S3MONE55.js.map +1 -0
  44. package/dist/{chunk-OLKNYGGT.js → chunk-SDXUPP4P.js} +1 -1
  45. package/dist/chunk-XFDMCPDW.js +1 -0
  46. package/dist/{chunk-GRSNX36B.js.map → chunk-XFDMCPDW.js.map} +1 -1
  47. package/dist/chunk-XSN53F7W.js +1 -0
  48. package/dist/{chunk-DBGXZF7O.js.map → chunk-XSN53F7W.js.map} +1 -1
  49. package/dist/{chunk-MTJ4MS7W.js → chunk-YCGISPDR.js} +1 -1
  50. package/dist/i18n/experimental-effect-descriptions.d.ts +21 -6
  51. package/dist/i18n/experimental-effect-descriptions.js +1 -1
  52. package/dist/i18n/experimental-effects.js +1 -1
  53. package/dist/i18n/index.d.ts +0 -2
  54. package/dist/i18n/index.js +1 -1
  55. package/dist/i18n/materials.d.ts +7 -6
  56. package/dist/i18n/materials.js +1 -1
  57. package/dist/i18n/micro-resources.d.ts +7 -6
  58. package/dist/i18n/micro-resources.js +1 -1
  59. package/dist/i18n/pre-engineered.js +1 -1
  60. package/dist/materials/index.js +1 -1
  61. package/dist/materials/materials-all.js +1 -1
  62. package/dist/materials/materials-encoded.js +1 -1
  63. package/dist/materials/materials-manufactured.js +1 -1
  64. package/dist/materials/materials.js +1 -1
  65. package/dist/materials/micro-resources-all.js +1 -1
  66. package/dist/materials/micro-resources.js +1 -1
  67. package/dist/ships/blueprint-costs.js +1 -1
  68. package/dist/ships/blueprint-journal.js +1 -1
  69. package/dist/ships/build-metrics.js +1 -1
  70. package/dist/ships/engineering-options.d.ts +10 -4
  71. package/dist/ships/engineering-options.js +1 -1
  72. package/dist/ships/engineering.js +1 -1
  73. package/dist/ships/gunsights.d.ts +2 -2
  74. package/dist/ships/gunsights.js +1 -1
  75. package/dist/ships/index.js +1 -1
  76. package/dist/ships/modules-all.js +1 -1
  77. package/dist/ships/modules-hardpoint.js +1 -1
  78. package/dist/ships/modules.js +1 -1
  79. package/dist/ships/pre-engineered-stats.d.ts +5 -0
  80. package/dist/ships/pre-engineered-stats.js +1 -1
  81. package/dist/ships/ship-loadout.d.ts +4 -1
  82. package/dist/ships/ship-loadout.js +1 -1
  83. package/dist/ships/weapons.d.ts +14 -4
  84. package/dist/ships/weapons.js +1 -1
  85. package/package.json +1 -9
  86. package/dist/chunk-37JIMWLK.js +0 -1
  87. package/dist/chunk-37JIMWLK.js.map +0 -1
  88. package/dist/chunk-5ZVYRX6Z.js +0 -1
  89. package/dist/chunk-5ZVYRX6Z.js.map +0 -1
  90. package/dist/chunk-7ZERP4TB.js +0 -1
  91. package/dist/chunk-AIEC3LBT.js +0 -1
  92. package/dist/chunk-CJQ37JII.js +0 -1
  93. package/dist/chunk-CJQ37JII.js.map +0 -1
  94. package/dist/chunk-DAQ3PJ4R.js +0 -1
  95. package/dist/chunk-DAQ3PJ4R.js.map +0 -1
  96. package/dist/chunk-DBGXZF7O.js +0 -1
  97. package/dist/chunk-FD74K27A.js +0 -1
  98. package/dist/chunk-FD74K27A.js.map +0 -1
  99. package/dist/chunk-FF2X4K5P.js +0 -1
  100. package/dist/chunk-G2VSQFD6.js +0 -1
  101. package/dist/chunk-GLWPSVFV.js +0 -1
  102. package/dist/chunk-GRSNX36B.js +0 -1
  103. package/dist/chunk-ITKZKREP.js +0 -1
  104. package/dist/chunk-JO52LYO3.js +0 -1
  105. package/dist/chunk-KGJCTSVV.js.map +0 -1
  106. package/dist/chunk-KJFUNIIY.js +0 -1
  107. package/dist/chunk-KJFUNIIY.js.map +0 -1
  108. package/dist/chunk-SC6Z2TV7.js +0 -1
  109. package/dist/chunk-SC6Z2TV7.js.map +0 -1
  110. package/dist/chunk-TW7LUBHD.js +0 -1
  111. package/dist/i18n/engineering-groups.d.ts +0 -21
  112. package/dist/i18n/engineering-groups.js +0 -1
  113. package/dist/i18n/engineering-groups.js.map +0 -1
  114. package/dist/i18n/ships.d.ts +0 -36
  115. package/dist/i18n/ships.js +0 -1
  116. package/dist/i18n/ships.js.map +0 -1
  117. /package/dist/{chunk-4TFAZX73.js.map → chunk-773VO2GK.js.map} +0 -0
  118. /package/dist/{chunk-7EWZGDWY.js.map → chunk-7S7ZTZZY.js.map} +0 -0
  119. /package/dist/{chunk-3LZXB2MC.js.map → chunk-ABSDZINM.js.map} +0 -0
  120. /package/dist/{chunk-JO52LYO3.js.map → chunk-KBCA4GEZ.js.map} +0 -0
  121. /package/dist/{chunk-IWFQ4ZKF.js.map → chunk-OFZGNWBT.js.map} +0 -0
  122. /package/dist/{chunk-OLKNYGGT.js.map → chunk-SDXUPP4P.js.map} +0 -0
  123. /package/dist/{chunk-MTJ4MS7W.js.map → chunk-YCGISPDR.js.map} +0 -0
@@ -1 +0,0 @@
1
- import{shieldMetrics}from"./chunk-5VWACBTN.js";import{getShipBySymbol,getShipByName,getShipSlots}from"./chunk-6UNAD74Z.js";import{getLoadoutModifier}from"./chunk-T4MKUKYS.js";import{sourcePurchaseFromLoadout}from"./chunk-NIURLW2F.js";import{identifyPreEngineeredVariant,unrollableFixedArticle,cloneLoadoutModule,isNonOutfittingSlot,isBuiltInHullModule,matchingKeyIn,ownKeyIn,getPreEngineeredStats,getPreEngineeredModifiers,cloneModuleStats,isFinalGuardianWeaponEngineering,scaleDamageComponents}from"./chunk-SC6Z2TV7.js";import{weaponMetrics,combinedRateOfFire}from"./chunk-37JIMWLK.js";import{builtInModuleBySymbol,getBulkheadsForShip}from"./chunk-3LZXB2MC.js";import{getPreEngineeredVariants}from"./chunk-KPJ77VPS.js";import{CORE_MODULES}from"./chunk-FA5JVXVG.js";import{getExperimentalEffect}from"./chunk-77I24V6B.js";import{getDefaultLoadout}from"./chunk-GRIK3EDH.js";import{fieldForLabel,scaleForLabel,labelsForField,capabilityValueForLabel,damageTypeForLabel}from"./chunk-CJQ37JII.js";import{ammunitionCapacity}from"./chunk-AA3K5XUE.js";import{parseSlotName,SLOT_RESTRICTION_LABELS,enumerateSlots}from"./chunk-RAO35XDF.js";import{normalizeKey}from"./chunk-BKWLI44T.js";import{truncate,requireString,describeValue,requireStringIfPresent}from"./chunk-PKWVG2JY.js";import{deepFreeze}from"./chunk-DURKO7JU.js";var MILITARY_PREFIXES=["int_hullreinforcement","int_metaalloyhullreinforcement","int_modulereinforcement","int_shieldcellbank","int_guardianhullreinforcement","int_guardianmodulereinforcement","int_guardianshieldreinforcement"];var MINING_PREFIXES=["hpt_mininglaser","hpt_mining_abrblstr","hpt_mining_seismchrgwarhd","hpt_mining_subsurfdispmisle","hpt_human_extraction","hpt_miningtoolv2"];var CARGO_PREFIXES=["int_cargorack","int_largecargorack","int_corrosionproofcargorack","int_fueltank"];var RESTRICTED_SLOT_PREFIXES={mining:MINING_PREFIXES,military:MILITARY_PREFIXES,cargo:CARGO_PREFIXES,limpetController:["int_dronecontrol","int_multidronecontrol"],vesselHangar:["int_fighterbay"],passenger:["int_passengercabin","int_mkii_passengercabin"],planetaryApproachSuite:["int_planetapproachsuite"]};var problem=(constraint,message,params)=>({constraint:constraint,message:message,...params===void 0?{}:{params:params}});function restrictionProblem(slot,symbol){const restriction=slot.restriction;if(!restriction)return null;if(RESTRICTED_SLOT_PREFIXES[restriction].some(prefix=>symbol.startsWith(prefix))){return null}return problem("restrictedMount",`slot only takes ${SLOT_RESTRICTION_LABELS[restriction]}`,{restriction:restriction})}function moduleSlotProblem(slot,module){const required=module.restrictedToSlot;if(!required||slot.restriction===required)return null;return problem("restrictedMount",`module only fits a mount that takes ${SLOT_RESTRICTION_LABELS[required]}`,{restriction:required})}function moduleFitProblem(shipSymbol,slot,module){if(slot.kind==="cargoHatch"){return problem("immutableSlot","the cargoHatch slot cannot be changed")}if(slot.kind==="armour"){const hull=getShipBySymbol(shipSymbol);if(module.slot!=="armour"||module.ship===void 0){return problem("armourRequired","not a ship armour module")}if(!hull||module.ship.toLowerCase()!==hull.name.toLowerCase()){const armourHull=getShipByName(module.ship);return problem("wrongHullArmour",`armour belongs to ${truncate(module.ship)}, not ${truncate(hull?.name??shipSymbol)}`,{armourShipName:module.ship,...armourHull===null?{}:{armourShipSymbol:armourHull.symbol},shipSymbol:shipSymbol,...hull===null?{}:{shipName:hull.name}})}return null}const restricted=module.restrictedToShips;if(restricted&&!restricted.some(symbol2=>symbol2.toLowerCase()===shipSymbol.toLowerCase())){const allowedShipNames=restricted.map(symbol2=>{const hull=getShipBySymbol(symbol2);return hull?.name??symbol2});const labels=restricted.map((symbol2,index)=>{const name=allowedShipNames[index];return name===symbol2?symbol2:`${name} (${symbol2})`});return problem("restrictedHull",`module is restricted to ${truncate(labels.join(", "))}`,{allowedShipNames:allowedShipNames,allowedShipSymbols:[...restricted],shipSymbol:shipSymbol})}const wrongMount=moduleSlotProblem(slot,module);if(wrongMount)return wrongMount;const symbol=module.symbol.toLowerCase();const moduleSlot=module.slot;switch(slot.kind){case"core":if(moduleSlot!==slot.core){return problem("wrongCoreType",`not a ${slot.core} module`,{requiredCore:slot.core,moduleSlot:moduleSlot??"none"})}break;case"hardpoint":{if(module.category!=="hardpoint"){return problem("hardpointRequired","not a hardpoint weapon")}const restricted2=restrictionProblem(slot,symbol);if(restricted2)return restricted2;break}case"utility":if(module.category!=="utility"){return problem("utilityRequired","not a utility module")}return null;case"optional":{const isFuelTank=moduleSlot==="fuelTank";if(module.category!=="internal"&&!isFuelTank){return problem("optionalInternalRequired","not an optional-internal module")}if(moduleSlot&&!isFuelTank){return problem("coreModuleInOptionalSlot","a core module only fits its core slot")}const restricted2=restrictionProblem(slot,symbol);if(restricted2)return restricted2;break}}return module.class>slot.size?problem("oversized",`module size ${truncate(module.class)} exceeds slot size ${slot.size}`,{moduleClass:module.class,slotSize:slot.size}):null}function moduleFitError(shipSymbol,slot,module){return moduleFitProblem(shipSymbol,slot,module)?.message??null}function preEngineeredVariantFor(module){return identifyPreEngineeredVariant(module)??(module.Engineering?unrollableFixedArticle(module.Item,module.Engineering):null)}function captureLoadoutEvent(event){const modules=event.Modules;const shipName=event.ShipName;const shipIdent=event.ShipIdent;const hullValue=event.HullValue;const modulesValue=event.ModulesValue;const rebuy=event.Rebuy;const unladenMass=event.UnladenMass;const cargoCapacity=event.CargoCapacity;const fuelCapacity=event.FuelCapacity;return{Ship:event.Ship,Modules:Array.isArray(modules)?captureEach(modules,captureModule):modules,...shipName===void 0?{}:{ShipName:shipName},...shipIdent===void 0?{}:{ShipIdent:shipIdent},...hullValue===void 0?{}:{HullValue:hullValue},...modulesValue===void 0?{}:{ModulesValue:modulesValue},...rebuy===void 0?{}:{Rebuy:rebuy},...unladenMass===void 0?{}:{UnladenMass:unladenMass},...cargoCapacity===void 0?{}:{CargoCapacity:cargoCapacity},...fuelCapacity===void 0?{}:{FuelCapacity:{...fuelCapacity}}}}function captureEach(values,capture){const captured=[];const{length:length}=values;for(let index=0;index<length;index++)captured.push(capture(values[index]));return captured}function captureModule(module){if(module===null||typeof module!=="object")return module;const on=module.On;const priority=module.Priority;const health=module.Health;const value=module.Value;const engineering=module.Engineering;return{Slot:module.Slot,Item:module.Item,...on===void 0?{}:{On:on},...priority===void 0?{}:{Priority:priority},...health===void 0?{}:{Health:health},...value===void 0?{}:{Value:value},...engineering===void 0?{}:{Engineering:captureEngineering(engineering)}}}function captureEngineering(engineering){if(engineering===null||typeof engineering!=="object")return engineering;const experimental=engineering.ExperimentalEffect;const experimentalLocalised=engineering.ExperimentalEffect_Localised;const modifiers=engineering.Modifiers;return{BlueprintName:engineering.BlueprintName,Level:engineering.Level,Quality:engineering.Quality,...experimental===void 0?{}:{ExperimentalEffect:experimental},...experimentalLocalised===void 0?{}:{ExperimentalEffect_Localised:experimentalLocalised},...modifiers===void 0?{}:{Modifiers:Array.isArray(modifiers)?captureEach(modifiers,modifier=>modifier!==null&&typeof modifier==="object"?{...modifier}:modifier):modifiers}}}function hullLayout(shipSymbol){const slots=getShipSlots(shipSymbol);return slots?enumerateSlots(slots):[]}function fixedMountRejects(shipSymbol,layout,slot,stats){const mount=layout.find(candidate=>candidate.key.toLowerCase()===slot.toLowerCase());return mount!==void 0&&moduleFitProblem(shipSymbol,mount,stats)!==null}function normalizeLoadoutEvent(rawEvent){const event=captureLoadoutEvent(rawEvent);requireString(event.Ship,"ShipLoadout.fromLoadout: event.Ship");if(!Array.isArray(event.Modules)){throw new TypeError(`ShipLoadout.fromLoadout: event.Modules must be an array, received ${describeValue(event.Modules)}`)}const modules=/* @__PURE__ */new Map;const slots=/* @__PURE__ */new Set;for(const module of event.Modules){if(module===null||typeof module!=="object"){throw new TypeError(`ShipLoadout.fromLoadout: event.Modules[] must hold module objects, received ${describeValue(module)}`)}requireString(module.Slot,"ShipLoadout.fromLoadout: module.Slot");requireString(module.Item,"ShipLoadout.fromLoadout: module.Item");if(module.Engineering!==void 0){if(module.Engineering===null||typeof module.Engineering!=="object"){throw new TypeError(`ShipLoadout.fromLoadout: module.Engineering must be an object, received ${describeValue(module.Engineering)}`)}requireStringIfPresent(module.Engineering.BlueprintName,"ShipLoadout.fromLoadout: module.Engineering.BlueprintName");requireStringIfPresent(module.Engineering.ExperimentalEffect,"ShipLoadout.fromLoadout: module.Engineering.ExperimentalEffect");if(module.Engineering.Modifiers!==void 0&&!Array.isArray(module.Engineering.Modifiers)){throw new TypeError(`ShipLoadout.fromLoadout: module.Engineering.Modifiers must be an array, received ${describeValue(module.Engineering.Modifiers)}`)}for(const[index,modifier]of(module.Engineering.Modifiers??[]).entries()){if(modifier===null||typeof modifier!=="object"){throw new TypeError(`ShipLoadout.fromLoadout: module.Engineering.Modifiers[${index}] must be an object, received ${describeValue(modifier)}`)}requireString(modifier.Label,`ShipLoadout.fromLoadout: module.Engineering.Modifiers[${index}].Label`)}}const normalizedSlot=module.Slot.toLowerCase();if(slots.has(normalizedSlot)){throw new TypeError(`ShipLoadout.fromLoadout: duplicate slot "${truncate(module.Slot)}"`)}slots.add(normalizedSlot);modules.set(module.Slot,cloneLoadoutModule(module))}const top={};if(event.ShipName!==void 0)top.ShipName=event.ShipName;if(event.ShipIdent!==void 0)top.ShipIdent=event.ShipIdent;if(event.HullValue!==void 0)top.HullValue=event.HullValue;if(event.ModulesValue!==void 0)top.ModulesValue=event.ModulesValue;if(event.Rebuy!==void 0)top.Rebuy=event.Rebuy;if(event.UnladenMass!==void 0)top.UnladenMass=event.UnladenMass;if(event.CargoCapacity!==void 0)top.CargoCapacity=event.CargoCapacity;if(event.FuelCapacity!==void 0)top.FuelCapacity={...event.FuelCapacity};let invalidatesAggregates=false;const outcomes=[];const defaults=getDefaultLoadout(event.Ship)?.modules??[];let layout;for(const[slot,module]of modules){if(isNonOutfittingSlot(slot)||isBuiltInHullModule(module))continue;const stats=builtInModuleBySymbol(module.Item,"ShipLoadout.fromLoadout: module.Item");const slotKind=parseSlotName(slot)?.kind;const fallback=slotKind==="core"||slotKind==="armour"||slotKind==="cargoHatch"?defaults.find(candidate=>candidate.slot.toLowerCase()===slot.toLowerCase()):void 0;const rejected=fallback!==void 0&&(stats===null||slotKind==="cargoHatch"||fixedMountRejects(event.Ship,layout??=hullLayout(event.Ship),slot,stats));if(stats!==null&&!rejected)continue;if(fallback){modules.set(slot,{Slot:slot,Item:fallback.symbol,...module.On===void 0?{}:{On:module.On},...module.Priority===void 0?{}:{Priority:module.Priority},...module.Health===void 0?{}:{Health:module.Health}});outcomes.push({action:"defaulted",slot:slot,sourceSymbol:module.Item,replacementSymbol:fallback.symbol})}else{modules.delete(slot);outcomes.push({action:"emptied",slot:slot,sourceSymbol:module.Item})}invalidatesAggregates=true}for(const fallback of defaults){const slotKind=parseSlotName(fallback.slot)?.kind;if(slotKind!=="core"&&slotKind!=="armour"&&slotKind!=="cargoHatch"||matchingKeyIn(modules,fallback.slot)!==null){continue}const slot=ownKeyIn(modules,fallback.slot);modules.set(slot,{Slot:slot,Item:fallback.symbol});outcomes.push({action:"defaulted",slot:slot,sourceSymbol:null,replacementSymbol:fallback.symbol});if(slotKind==="core")invalidatesAggregates=true}if(invalidatesAggregates){delete top.ModulesValue;delete top.Rebuy;delete top.UnladenMass;delete top.CargoCapacity;delete top.FuelCapacity}const moduleStats=/* @__PURE__ */new Map;const primitiveModifiers=/* @__PURE__ */new Map;for(const module of modules.values()){const engineering=module.Engineering;const variant=preEngineeredVariantFor(module);const catalogueVariantStats=variant?getPreEngineeredStats(variant):null;let variantStats=catalogueVariantStats;const retainsBakedExperimental=variant?.experimentalEffectSymbol!==void 0&&typeof engineering?.ExperimentalEffect==="string"&&variant.experimentalEffectSymbol.trim().toLowerCase()===engineering.ExperimentalEffect.trim().toLowerCase();if(variant&&catalogueVariantStats&&!catalogueVariantStats.engineeringLocked&&!retainsBakedExperimental){const{experimentalEffectSymbol:originalExperimental,...withoutExperimental}=variant;const currentExperimental=engineering?.ExperimentalEffect;const currentVariant=typeof currentExperimental==="string"?{...withoutExperimental,experimentalEffectSymbol:currentExperimental}:withoutExperimental;variantStats=getPreEngineeredStats(withoutExperimental);primitiveModifiers.set(module.Slot,[...engineering?.Modifiers??[],...getPreEngineeredModifiers(currentVariant)])}if(variantStats)moduleStats.set(module.Slot,cloneModuleStats(variantStats));const guardianFinal=typeof engineering?.BlueprintName==="string"&&isFinalGuardianWeaponEngineering(module.Item,engineering.BlueprintName);if(variantStats?.engineeringLocked||typeof engineering?.BlueprintName!=="string"||!guardianFinal){continue}const normalizedBlueprint=normalizeKey(engineering.BlueprintName,"ShipLoadout.fromLoadout: module.Engineering.BlueprintName");const normalizedExperimental=normalizeKey(engineering.ExperimentalEffect,"ShipLoadout.fromLoadout: module.Engineering.ExperimentalEffect");const variants=getPreEngineeredVariants(module.Item);const exact=variants.find(candidate=>candidate.engineeringLocked===true&&candidate.blueprintSymbol.toLowerCase()===normalizedBlueprint&&candidate.grade===engineering.Level&&candidate.experimentalEffectSymbol?.toLowerCase()===normalizedExperimental);const guardianBase=variants.find(candidate=>candidate.engineeringLocked===true&&candidate.blueprintSymbol.toLowerCase()===normalizedBlueprint&&candidate.grade===engineering.Level&&candidate.experimentalEffectSymbol===void 0);const stats=exact?getPreEngineeredStats(exact):guardianBase&&engineering.ExperimentalEffect!==void 0?getPreEngineeredStats({...guardianBase,experimentalEffectSymbol:engineering.ExperimentalEffect}):builtInModuleBySymbol(module.Item,"ShipLoadout.fromLoadout: module.Item");if(stats){moduleStats.set(module.Slot,cloneModuleStats({...stats,engineeringLocked:true}))}}return{shipSymbol:event.Ship,modules:modules,moduleStats:moduleStats,primitiveModifiers:primitiveModifiers,top:top,sourcePurchase:sourcePurchaseFromLoadout(event),outcomes:deepFreeze(outcomes)}}var NO_ISSUES=Object.freeze([]);function completeResult(value){return Object.freeze({value:value,complete:true,issues:NO_ISSUES})}function incompleteResult(issues){return Object.freeze({value:null,complete:false,issues:Object.freeze(issues.map(issue=>Object.freeze({...issue,...issue.params?{params:Object.freeze({...issue.params})}:{}})))})}var PREFIX={powerPlant:["int_powerplant","int_guardianpowerplant"],thrusters:["int_engine","int_mkiiagileboost_engine"],frameShiftDrive:["int_hyperdrive"],powerDistributor:["int_powerdistributor","int_guardianpowerdistributor"],shieldGenerator:["int_shieldgenerator"],shieldCellBank:["int_shieldcellbank"],shieldBooster:["hpt_shieldbooster"],shieldReinforcement:["int_guardianshieldreinforcement"],hullReinforcement:["int_hullreinforcement","int_guardianhullreinforcement","int_metaalloyhullreinforcement"],moduleReinforcement:["int_modulereinforcement","int_guardianmodulereinforcement"]};var startsWithAny=(symbol,prefixes)=>prefixes.some(prefix=>symbol.toLowerCase().startsWith(prefix));function isPowerDistributor(module,stats){return stats?.slot?stats.slot==="powerDistributor":startsWithAny(module.Item,PREFIX.powerDistributor)}function isPowerPlant(module,stats){const parsed=parseSlotName(module.Slot);if(parsed?.kind==="core"&&parsed.core==="powerPlant")return true;return stats?.slot?stats.slot==="powerPlant":startsWithAny(module.Item,PREFIX.powerPlant)}function isThruster(module,stats){const parsed=parseSlotName(module.Slot);if(parsed?.kind==="core"&&parsed.core==="thrusters")return true;return stats?.slot?stats.slot==="thrusters":startsWithAny(module.Item,PREFIX.thrusters)}function isFrameShiftDrive(module,stats){const parsed=parseSlotName(module.Slot);if(parsed?.kind==="core"&&parsed.core==="frameShiftDrive")return true;return stats?.slot?stats.slot==="frameShiftDrive":startsWithAny(module.Item,PREFIX.frameShiftDrive)}function isEnabled(module){return module.On!==false}function priorityOf(module){return(module.Priority??0)+1}function effectiveStat(module,field,stats){const stated=statedModifier(module,field);if(stated!==void 0)return stated;const base=stats?.[field];return typeof base==="number"?base:void 0}function statedModifier(module,field){for(const label of labelsForField(field)){if(capabilityValueForLabel(label)!==null)continue;const modified=getLoadoutModifier(module,label);if(modified!==null)return modified/scaleForLabel(label)}return void 0}function effectiveCapability(module,field,stats){for(const label of labelsForField(field)){if(capabilityValueForLabel(label)===null)continue;if(module.Engineering?.Modifiers?.some(modifier=>modifier.Label.toLowerCase()===label.toLowerCase())){return true}}const base=stats[field];return typeof base==="boolean"?base:void 0}function effectiveDamageDistribution(module,stats){const fromEffect=module.Engineering?.ExperimentalEffect?getExperimentalEffect(module.Engineering.ExperimentalEffect)?.damageDistribution:void 0;const distribution={...fromEffect??stats.damageDistribution};let resolved=fromEffect!==void 0||stats.damageDistribution!==void 0;const seen=/* @__PURE__ */new Set;for(const modifier of module.Engineering?.Modifiers??[]){const type=damageTypeForLabel(modifier.Label);if(type===null||seen.has(type))continue;seen.add(type);if(modifier.Value===void 0)continue;distribution[type]=modifier.Value/scaleForLabel(modifier.Label);resolved=true}return resolved?distribution:void 0}function convertsDamage(module){if(module.Engineering?.ExperimentalEffect&&getExperimentalEffect(module.Engineering.ExperimentalEffect)?.damageDistribution){return true}return(module.Engineering?.Modifiers??[]).some(modifier=>damageTypeForLabel(modifier.Label)!==null)}function modifierRatio(module,stats,field){const base=stats?.[field];if(typeof base!=="number"||base===0)return 1;const effective=effectiveStat(module,field,stats);return effective===void 0?1:effective/base}function relatedStat(module,stats,field,ratio){const stated=statedModifier(module,field);if(stated!==void 0)return stated;const base=stats?.[field];return typeof base==="number"?base*ratio:void 0}function effectiveModule(module,stats){if(!stats||!module.Engineering)return stats;const merged={...stats};const fields=new Set(Object.keys(stats));for(const modifier of module.Engineering.Modifiers??[]){const field=fieldForLabel(modifier.Label,stats);if(field)fields.add(field)}for(const key of fields){const capability=effectiveCapability(module,key,stats);if(capability!==void 0){merged[key]=capability;continue}const value=effectiveStat(module,key,stats);if(value!==void 0)merged[key]=value}if(stats.engineeringGroup==="thrusters"){const massRatio=modifierRatio(module,stats,"optMass");const minMass=relatedStat(module,stats,"minMass",massRatio);const maxMass=relatedStat(module,stats,"maxMass",massRatio);if(minMass!==void 0)merged.minMass=minMass;if(maxMass!==void 0)merged.maxMass=maxMass}if(stats.engineeringGroup==="thrusters"||stats.engineeringGroup==="shieldGenerators"){const performanceRatio=modifierRatio(module,stats,"optMultiplier");const minMultiplier=relatedStat(module,stats,"minMultiplier",performanceRatio);const maxMultiplier=relatedStat(module,stats,"maxMultiplier",performanceRatio);if(minMultiplier!==void 0)merged.minMultiplier=minMultiplier;if(maxMultiplier!==void 0)merged.maxMultiplier=maxMultiplier;if(stats.engineeringGroup==="thrusters"){for(const field of["minSpeedMultiplier","optSpeedMultiplier","maxSpeedMultiplier","minRotationMultiplier","optRotationMultiplier","maxRotationMultiplier"]){const value=stats[field];if(value!==void 0)merged[field]=value*performanceRatio}}}const damageDistribution=effectiveDamageDistribution(module,stats);if(damageDistribution)merged.damageDistribution=damageDistribution;if(stats.category==="hardpoint")normalizeEffectiveWeapon(module,merged);if(convertsDamage(module)){delete merged.damageComponents}else if(stats.damageComponents){merged.damageComponents=scaleDamageComponents(stats.damageComponents,stats.damage,typeof merged.damage==="number"?merged.damage:void 0)}return merged}function powerConsumerFor(module,stats){const draw=effectiveStat(module,"powerDraw",stats);if(draw===void 0||draw===0)return null;const mounted=stats?.category==="hardpoint"||stats?.category==="utility";return{draw:draw,priority:priorityOf(module),enabled:isEnabled(module),deployedOnly:mounted&&stats?.alwaysPowered!==true,label:module.Slot,symbol:module.Item}}function powerAvailable(modules,statsFor){for(const module of modules){const stats=statsFor(module);if(!isPowerPlant(module,stats))continue;if(!isEnabled(module))return 0;return effectiveStat(module,"powerCapacity",stats)??0}return 0}var DEFAULT_SLOT={powerCapacity:"PowerPlant",heatEfficiency:"PowerPlant",thrusters:"MainEngines",powerDistributor:"PowerDistributor"};var UNRESOLVED_FACT={thrusters:"thruster stats",shieldGenerator:"shield-generator stats",powerCapacity:"power capacity",heatEfficiency:"heat efficiency",powerDistributor:"power-distributor stats"};var NOTHING_FITTED={powerCapacity:"PowerPlant: no power plant is fitted",heatEfficiency:"PowerPlant: no power plant is fitted",thrusters:"MainEngines: no thrusters are fitted",powerDistributor:"PowerDistributor: no power distributor is fitted"};function metricIssue(field,reason,module){const defaultSlot=DEFAULT_SLOT[field];const slot=module?.Slot??defaultSlot;const symbol=module?.Item;const params={field:field,reason:reason,...slot===void 0?{}:{slot:slot},...symbol===void 0?{}:{symbol:symbol}};let message;if(reason==="missing"){message=NOTHING_FITTED[field]??"no shield generator is fitted"}else if(reason==="unresolved"){const unavailable=UNRESOLVED_FACT[field]??field;message=`${truncate(slot??field)}: ${unavailable} unavailable for ${truncate(symbol??field)}`}else if(reason==="disabled"){message=`${truncate(slot??field)}: ${truncate(symbol??field)} is switched off`}else if(reason==="invalid"){message=`${truncate(slot??field)}: ${truncate(symbol??field)} has invalid ${field}`}else{message=`${truncate(slot??field)}: ${truncate(symbol??field)} is not powered with hardpoints retracted`}return{field:field,reason:reason,...slot===void 0?{}:{slot:slot},...symbol===void 0?{}:{symbol:symbol},message:message,params:params}}function powerPlantIssueFor(modules,statsFor){for(const module of modules){const stats=statsFor(module);if(!isPowerPlant(module,stats))continue;if(!isEnabled(module))return metricIssue("powerCapacity","disabled",module);const capacity=effectiveStat(module,"powerCapacity",stats);if(capacity===void 0)return metricIssue("powerCapacity","unresolved",module);return!Number.isFinite(capacity)||capacity<=0?metricIssue("powerCapacity","invalid",module):null}return metricIssue("powerCapacity","missing")}function powerDrawIssueFor(modules,statsFor){for(const module of modules){const consumer=powerConsumerFor(module,statsFor(module));if(consumer&&(!Number.isFinite(consumer.draw)||consumer.draw<0)){return metricIssue("powerDraw","invalid",module)}}return null}function poweredMetricBudgetFor(field,module,stats,modules,getBudget,statsFor){if(!isEnabled(module))return incompleteResult([metricIssue(field,"disabled",module)]);const plantIssue=powerPlantIssueFor(modules,statsFor);if(plantIssue)return incompleteResult([plantIssue]);const drawIssue=powerDrawIssueFor(modules,statsFor);if(drawIssue)return incompleteResult([drawIssue]);const budget=getBudget();return budget.available>0&&poweredStates(module,stats,budget).retracted?completeResult(budget):incompleteResult([metricIssue(field,"shed",module)])}function poweredShieldGeneratorResultFor(modules,getBudget,statsFor){for(const module of modules){if(!startsWithAny(module.Item,PREFIX.shieldGenerator))continue;const stats=statsFor(module);const powered=poweredMetricBudgetFor("shieldGenerator",module,stats,modules,getBudget,statsFor);if(!powered.complete)return powered;return stats===null?incompleteResult([metricIssue("shieldGenerator","unresolved",module)]):completeResult({module:module,budget:powered.value})}return incompleteResult([metricIssue("shieldGenerator","missing")])}function mapResistanceFields(read){return{kineticResistance:read("kineticResistance")??0,thermalResistance:read("thermalResistance")??0,explosiveResistance:read("explosiveResistance")??0,causticResistance:read("causticResistance")??0}}function resistancesOf(module,stats){return mapResistanceFields(field=>effectiveStat(module,field,stats))}function shieldInputFor(ship,modules,budget,statsFor){let generator=null;const boosters=[];let reinforcement=0;for(const module of modules){if(!isEnabled(module))continue;const stats=statsFor(module);if(!(budget.available>0&&poweredStates(module,stats,budget).retracted))continue;if(!generator&&startsWithAny(module.Item,PREFIX.shieldGenerator)){const massRatio=modifierRatio(module,stats,"optMass");const strengthRatio=modifierRatio(module,stats,"optMultiplier");const optMass=effectiveStat(module,"optMass",stats);const minMass=relatedStat(module,stats,"minMass",massRatio);const maxMass=relatedStat(module,stats,"maxMass",Math.max(1,massRatio));const optMultiplier=effectiveStat(module,"optMultiplier",stats);const minMultiplier=relatedStat(module,stats,"minMultiplier",strengthRatio);const maxMultiplier=relatedStat(module,stats,"maxMultiplier",strengthRatio);generator={...optMass===void 0?{}:{optMass:optMass},...minMass===void 0?{}:{minMass:minMass},...maxMass===void 0?{}:{maxMass:maxMass},...optMultiplier===void 0?{}:{optMultiplier:optMultiplier},...minMultiplier===void 0?{}:{minMultiplier:minMultiplier},...maxMultiplier===void 0?{}:{maxMultiplier:maxMultiplier},...resistancesOf(module,stats)}}else if(startsWithAny(module.Item,PREFIX.shieldBooster)){boosters.push({shieldBoost:effectiveStat(module,"shieldBoost",stats)??0,...resistancesOf(module,stats)})}else if(startsWithAny(module.Item,PREFIX.shieldReinforcement)){reinforcement+=effectiveStat(module,"shieldAddition",stats)??0}}return{hullMass:ship.hullMass,baseShieldStrength:ship.baseShieldStrength,generator:generator,boosters:boosters,reinforcement:reinforcement}}function shieldInputResultFor(ship,modules,getBudget,statsFor){const fitted=poweredShieldGeneratorResultFor(modules,getBudget,statsFor);if(!fitted.complete)return fitted;return completeResult(shieldInputFor(ship,modules,fitted.value.budget,statsFor))}function shieldCapacitorInputResultFor(ship,modules,getBudget,systemsPips,statsFor){const fitted=poweredShieldGeneratorResultFor(modules,getBudget,statsFor);if(!fitted.complete)return fitted;const budget=fitted.value.budget;const capacitor=systemsCapacitorResultFor(modules,budget,statsFor);if(!capacitor.complete)return capacitor;const shields=shieldMetrics(shieldInputFor(ship,modules,budget,statsFor));return completeResult({strength:shields.strength,resistances:shields.resistances,systemsCapacity:capacitor.value.systemsCapacity,systemsRecharge:capacitor.value.systemsRecharge,systemsPips:systemsPips})}function systemsCapacitorResultFor(modules,budget,statsFor){let distributor=null;for(const module of modules){const stats2=statsFor(module);if(isPowerDistributor(module,stats2)&&isEnabled(module)&&budget.available>0&&poweredStates(module,stats2,budget).retracted)distributor=module}if(!distributor)return completeResult({systemsCapacity:0,systemsRecharge:0});const stats=statsFor(distributor);const systemsCapacity=effectiveStat(distributor,"systemsCapacity",stats);const systemsRecharge=effectiveStat(distributor,"systemsRecharge",stats);return systemsCapacity===void 0||systemsRecharge===void 0?incompleteResult([metricIssue("powerDistributor","unresolved",distributor)]):completeResult({systemsCapacity:systemsCapacity,systemsRecharge:systemsRecharge})}function thrusterCurveFor(module,stats){const effective=effectiveModule(module,stats);const minMass=effective?.minMass;const optMass=effective?.optMass;const maxMass=effective?.maxMass;const minMultiplier=effective?.minMultiplier;const optMultiplier=effective?.optMultiplier;const maxMultiplier=effective?.maxMultiplier;if(minMass===void 0||optMass===void 0||maxMass===void 0||minMultiplier===void 0||optMultiplier===void 0||maxMultiplier===void 0){return null}return{minMass:minMass,optMass:optMass,maxMass:maxMass,minMultiplier:minMultiplier,optMultiplier:optMultiplier,maxMultiplier:maxMultiplier,...effective?.optSpeedMultiplier===void 0?{}:{speedCurve:{minMass:minMass,optMass:optMass,maxMass:maxMass,minMultiplier:effective.minSpeedMultiplier??minMultiplier,optMultiplier:effective.optSpeedMultiplier,maxMultiplier:effective.maxSpeedMultiplier??maxMultiplier}},...effective?.optRotationMultiplier===void 0?{}:{rotationCurve:{minMass:minMass,optMass:optMass,maxMass:maxMass,minMultiplier:effective.minRotationMultiplier??minMultiplier,optMultiplier:effective.optRotationMultiplier,maxMultiplier:effective.maxRotationMultiplier??maxMultiplier}}}}function fittedThrusterParamsFor(modules,statsFor){for(const module of modules){const stats=statsFor(module);if(isThruster(module,stats))return thrusterCurveFor(module,stats)}return null}function mobilityInputResultFor(ship,modules,getBudget,mass,statsFor){let thrusters=null;for(const module of modules){const stats=statsFor(module);if(!isThruster(module,stats))continue;const powered=poweredMetricBudgetFor("thrusters",module,stats,modules,getBudget,statsFor);if(!powered.complete)return powered;thrusters=thrusterCurveFor(module,stats);if(!thrusters)return incompleteResult([metricIssue("thrusters","unresolved",module)]);break}if(!thrusters)return incompleteResult([metricIssue("thrusters","missing")]);return completeResult({minimumSpeed:ship.minimumSpeed,maximumSpeed:ship.maximumSpeed,boost:ship.boost,minPitch:ship.minPitch,pitch:ship.pitch,minRoll:ship.minRoll,roll:ship.roll,minYaw:ship.minYaw,yaw:ship.yaw,mass:typeof mass==="function"?mass():mass,thrusters:thrusters})}function shieldRecoveryInputResultFor(ship,modules,getBudget,systemsPips,statsFor){const generator=poweredShieldGeneratorResultFor(modules,getBudget,statsFor);if(!generator.complete)return generator;const{module:generatorModule,budget:budget}=generator.value;const generatorStats=statsFor(generatorModule);const distributorDraw=effectiveStat(generatorModule,"distributorDraw",generatorStats);const regenRate=effectiveStat(generatorModule,"shieldRegenRate",generatorStats);const brokenRegenRate=effectiveStat(generatorModule,"shieldBrokenRegenRate",generatorStats);if(distributorDraw===void 0||regenRate===void 0||brokenRegenRate===void 0){return incompleteResult([metricIssue("shieldGenerator","unresolved",generatorModule)])}const capacitor=systemsCapacitorResultFor(modules,budget,statsFor);if(!capacitor.complete)return capacitor;const strength=shieldMetrics(shieldInputFor(ship,modules,budget,statsFor)).strength;return completeResult({strength:strength,regenRate:regenRate,brokenRegenRate:brokenRegenRate,distributorDraw:distributorDraw,systemsCapacity:capacitor.value.systemsCapacity,systemsRecharge:capacitor.value.systemsRecharge,systemsPips:systemsPips})}function weaponsCapacitorInputFor(modules,weaponsPips,budget,statsFor){let weaponsCapacity=0;let weaponsRecharge=0;let sustainedEnergyPerSecond=0;for(const module of modules){if(!isEnabled(module))continue;const stats=statsFor(module);if(!poweredStates(module,stats,budget).deployed)continue;if(isPowerDistributor(module,stats)){weaponsCapacity=effectiveStat(module,"weaponsCapacity",stats)??0;weaponsRecharge=effectiveStat(module,"weaponsRecharge",stats)??0}const weapon=weaponStatsFor(module,stats);if(weapon){sustainedEnergyPerSecond+=weaponMetrics(weapon).sustainedEnergyPerSecond}}return{weaponsCapacity:weaponsCapacity,weaponsRecharge:weaponsRecharge,sustainedEnergyPerSecond:sustainedEnergyPerSecond,weaponsPips:weaponsPips}}function distributorInputResultFor(modules,pips,budget,statsFor){let disabled=null;for(const module of modules){const stats=statsFor(module);if(!isPowerDistributor(module,stats))continue;if(!isEnabled(module)){disabled??=module;continue}if(!poweredStates(module,stats,budget).retracted){return incompleteResult([metricIssue("powerDistributor","shed",module)])}const systemsCapacity=effectiveStat(module,"systemsCapacity",stats);const systemsRecharge=effectiveStat(module,"systemsRecharge",stats);const enginesCapacity=effectiveStat(module,"enginesCapacity",stats);const enginesRecharge=effectiveStat(module,"enginesRecharge",stats);const weaponsCapacity=effectiveStat(module,"weaponsCapacity",stats);const weaponsRecharge=effectiveStat(module,"weaponsRecharge",stats);if(systemsCapacity===void 0||systemsRecharge===void 0||enginesCapacity===void 0||enginesRecharge===void 0||weaponsCapacity===void 0||weaponsRecharge===void 0){return incompleteResult([metricIssue("powerDistributor","unresolved",module)])}return completeResult({systemsCapacity:systemsCapacity,systemsRecharge:systemsRecharge,enginesCapacity:enginesCapacity,enginesRecharge:enginesRecharge,weaponsCapacity:weaponsCapacity,weaponsRecharge:weaponsRecharge,...pips})}return incompleteResult([disabled===null?metricIssue("powerDistributor","missing"):metricIssue("powerDistributor","disabled",disabled)])}function heatInputResultFor(ship,modules,budget,statsFor){let plant=null;let heatEfficiency;let thrusterHeatRate=0;let deployedThrusterHeatRate=0;let fsdHeatRate=0;let weaponsCapacity=0;const weapons=[];for(const module of modules){const stats=statsFor(module);if(isPowerPlant(module,stats)){if(!isEnabled(module)){return incompleteResult([metricIssue("powerCapacity","disabled",module)])}plant=module;heatEfficiency=effectiveStat(module,"heatEfficiency",stats);continue}if(!isEnabled(module))continue;const running=poweredStates(module,stats,budget);if(isThruster(module,stats)){const heat=effectiveStat(module,"engineHeatRate",stats)??0;if(running.retracted)thrusterHeatRate+=heat;if(running.deployed)deployedThrusterHeatRate+=heat}else if(isFrameShiftDrive(module,stats)){if(running.retracted)fsdHeatRate+=effectiveStat(module,"fsdHeatRate",stats)??0}else if(isPowerDistributor(module,stats)){if(running.deployed){weaponsCapacity=effectiveStat(module,"weaponsCapacity",stats)??0}}const weapon=weaponStatsFor(module,stats);if(!running.deployed)continue;if(!weapon)continue;weapons.push({heatPerSecond:weaponMetrics(weapon).sustainedHeatPerSecond,distributorDraw:weapon.distributorDraw??0})}if(heatEfficiency===void 0){return incompleteResult([plant===null?metricIssue("powerCapacity","missing"):metricIssue("heatEfficiency","unresolved",plant)])}return completeResult({heatCapacity:ship.heatCapacity,heatDissipation:ship.heatDissipation,heatEfficiency:heatEfficiency,retractedPowerDraw:poweredDraw(budget,"retracted"),deployedPowerDraw:poweredDraw(budget,"deployed"),thrusterHeatRate:thrusterHeatRate,deployedThrusterHeatRate:deployedThrusterHeatRate,fsdHeatRate:fsdHeatRate,weaponsCapacity:weaponsCapacity,weapons:weapons})}function poweredDraw(budget,state){const powered=state==="retracted"?"poweredRetracted":"poweredDeployed";return budget.bands.reduce((total,band)=>band[powered]?total+band[state]:total,0)}function poweredStates(module,stats,budget){const draw=effectiveStat(module,"powerDraw",stats);if(draw===void 0||draw===0)return{retracted:true,deployed:true};const band=budget.bands[Math.min(budget.bands.length,Math.max(1,priorityOf(module)))-1];if(!band)return{retracted:true,deployed:true};return{retracted:band.poweredRetracted,deployed:band.poweredDeployed}}function cellBankInputsFor(modules,budget,statsFor){const banks=[];for(const module of modules){if(!startsWithAny(module.Item,PREFIX.shieldCellBank))continue;const stats=statsFor(module);const effective=effectiveModule(module,stats);const ammunition=effective?ammunitionCapacity(effective):null;banks.push({slot:module.Slot,symbol:module.Item,reinforcementRate:effective?.shieldBankReinforcement??0,cells:ammunition?.total??0,spinUp:effective?.shieldBankSpinUp??0,duration:effective?.shieldBankDuration??0,heat:effective?.shieldBankHeat??0,powered:budget.available>0&&isEnabled(module)&&poweredStates(module,stats,budget).deployed})}return banks}function stockBulkhead(ship){const variants=getBulkheadsForShip(ship.name,CORE_MODULES);return variants.find(v=>v.symbol.toLowerCase().endsWith("_default"))??variants.find(v=>v.mass===0)??variants[0]??null}function armourInputFor(ship,modules,statsFor){const reinforcements=[];const moduleReinforcements=[];let bulkhead=null;for(const module of modules){if(!isEnabled(module))continue;const stats=statsFor(module);if(module.Slot.toLowerCase()==="armour"){bulkhead={hullBoost:effectiveStat(module,"hullBoost",stats)??0,...resistancesOf(module,stats)}}else if(startsWithAny(module.Item,PREFIX.hullReinforcement)){const boost=getLoadoutModifier(module,"DefenceModifierHealthMultiplier");reinforcements.push({hullReinforcement:effectiveStat(module,"hullReinforcement",stats)??0,hullBoost:boost===null?0:boost/scaleForLabel("DefenceModifierHealthMultiplier"),...resistancesOf(module,stats)})}else if(startsWithAny(module.Item,PREFIX.moduleReinforcement)){moduleReinforcements.push({moduleProtection:effectiveStat(module,"moduleProtection",stats)??0,integrity:effectiveStat(module,"integrity",stats)??0})}}if(!bulkhead){const stock=stockBulkhead(ship);bulkhead=stock?{hullBoost:stock.hullBoost??0,...mapResistanceFields(field=>stock[field])}:null}return{baseArmour:ship.baseArmour,bulkhead:bulkhead,reinforcements:reinforcements,moduleReinforcements:moduleReinforcements}}var WEAPON_FIELDS=["damage","roundsPerShot","rateOfFire","burstInterval","burstRounds","burstRateOfFire","chargeTime","clipSize","ammoMaximum","reloadTime","distributorDraw","thermalLoad","powerDraw","maximumRange","falloffRange","armourPiercing"];function weaponStatsFor(module,stats){if(!stats||stats.category!=="hardpoint")return null;const weapon={};for(const field of WEAPON_FIELDS){const value=effectiveStat(module,field,stats);if(value!==void 0)weapon[field]=value}normalizeEffectiveWeapon(module,weapon);const damageDistribution=effectiveDamageDistribution(module,stats);if(damageDistribution)weapon.damageDistribution=damageDistribution;if(stats.damageComponents&&!convertsDamage(module)){weapon.damageComponents=scaleDamageComponents(stats.damageComponents,stats.damage,typeof weapon.damage==="number"?weapon.damage:void 0)}if(stats.projectileRange)weapon.projectileRange={...stats.projectileRange};return weapon}function burstAdjustedRateOfFire(module,weapon){if(getLoadoutModifier(module,"RateOfFire")!==null)return void 0;const touched=["BurstSize","BurstRateOfFire","BurstInterval"].some(label=>getLoadoutModifier(module,label)!==null);if(!touched)return void 0;return combinedRateOfFire(weapon)}var FIRING_RATE_LABELS=["RateOfFire","BurstRateOfFire","BurstSize","BurstInterval","RoundsPerShot","Rounds"];function readsDamageFromPerSecond(module){return getLoadoutModifier(module,"Damage")===null&&FIRING_RATE_LABELS.every(label=>getLoadoutModifier(module,label)===null)}function normalizeEffectiveWeapon(module,weapon){const rate=burstAdjustedRateOfFire(module,weapon);if(rate!==void 0)weapon.rateOfFire=rate;if(readsDamageFromPerSecond(module)){const statedDamagePerSecond=getLoadoutModifier(module,"DamagePerSecond");const firingFactor=Number(weapon.roundsPerShot??1)*Number(weapon.rateOfFire??1);if(statedDamagePerSecond!==null&&firingFactor>0){weapon.damage=statedDamagePerSecond/firingFactor}}const{maximumRange:maximumRange,falloffRange:falloffRange}=weapon;if(maximumRange!==void 0&&falloffRange!==void 0&&falloffRange>maximumRange){weapon.falloffRange=maximumRange}}var INTERNALS=/* @__PURE__ */new WeakMap;function publishLoadoutInternals(build,internals){INTERNALS.set(build,internals)}function loadoutInternals(build,label){const internals=typeof build==="object"&&build!==null?INTERNALS.get(build):void 0;if(internals===void 0){throw new TypeError(`${label} must be a ShipLoadout, received ${describeValue(build)}`)}return internals}export{armourInputFor,cellBankInputsFor,completeResult,distributorInputResultFor,effectiveModule,fittedThrusterParamsFor,heatInputResultFor,incompleteResult,loadoutInternals,mobilityInputResultFor,moduleFitError,moduleFitProblem,normalizeLoadoutEvent,powerAvailable,powerConsumerFor,preEngineeredVariantFor,publishLoadoutInternals,shieldCapacitorInputResultFor,shieldInputResultFor,shieldRecoveryInputResultFor,weaponStatsFor,weaponsCapacitorInputFor};//# sourceMappingURL=chunk-FD74K27A.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/ships/internal/loadout-fitting.ts","../src/ships/internal/loadout-import.ts","../src/ships/internal/calculation-result.ts","../src/ships/internal/loadout-metrics.ts","../src/ships/internal/loadout-internals.ts"],"names":["shieldMetrics","getShipBySymbol","getShipByName","getShipSlots","getLoadoutModifier","sourcePurchaseFromLoadout","identifyPreEngineeredVariant","unrollableFixedArticle","cloneLoadoutModule","isNonOutfittingSlot","isBuiltInHullModule","matchingKeyIn","ownKeyIn","getPreEngineeredStats","getPreEngineeredModifiers","cloneModuleStats","isFinalGuardianWeaponEngineering","scaleDamageComponents","weaponMetrics","combinedRateOfFire","builtInModuleBySymbol","getBulkheadsForShip","getPreEngineeredVariants","CORE_MODULES","getExperimentalEffect","getDefaultLoadout","fieldForLabel","scaleForLabel","labelsForField","capabilityValueForLabel","damageTypeForLabel","ammunitionCapacity","parseSlotName","SLOT_RESTRICTION_LABELS","enumerateSlots","normalizeKey","truncate","requireString","describeValue","requireStringIfPresent","deepFreeze","MILITARY_PREFIXES","MINING_PREFIXES","CARGO_PREFIXES","RESTRICTED_SLOT_PREFIXES","mining","military","cargo","limpetController","vesselHangar","passenger","planetaryApproachSuite","problem","constraint","message","params","restrictionProblem","slot","symbol","restriction","some","prefix","startsWith","moduleSlotProblem","module","required","restrictedToSlot","moduleFitProblem","shipSymbol","kind","hull","ship","toLowerCase","name","armourHull","armourShipName","armourShipSymbol","shipName","restricted","restrictedToShips","allowedShipNames","map","labels","index","join","allowedShipSymbols","wrongMount","moduleSlot","core","requiredCore","category","isFuelTank","class","size","moduleClass","slotSize","moduleFitError","preEngineeredVariantFor","Engineering","Item","captureLoadoutEvent","event","modules","Modules","ShipName","shipIdent","ShipIdent","hullValue","HullValue","modulesValue","ModulesValue","rebuy","Rebuy","unladenMass","UnladenMass","cargoCapacity","CargoCapacity","fuelCapacity","FuelCapacity","Ship","Array","isArray","captureEach","captureModule","values","capture","captured","length","push","on","On","priority","Priority","health","Health","value","Value","engineering","Slot","captureEngineering","experimental","ExperimentalEffect","experimentalLocalised","ExperimentalEffect_Localised","modifiers","Modifiers","BlueprintName","Level","Quality","modifier","hullLayout","slots","fixedMountRejects","layout","stats","mount","find","candidate","key","normalizeLoadoutEvent","rawEvent","TypeError","Map","Set","entries","Label","normalizedSlot","has","add","set","top","invalidatesAggregates","outcomes","defaults","slotKind","fallback","rejected","action","sourceSymbol","replacementSymbol","delete","moduleStats","primitiveModifiers","variant","catalogueVariantStats","variantStats","retainsBakedExperimental","experimentalEffectSymbol","trim","engineeringLocked","originalExperimental","withoutExperimental","currentExperimental","currentVariant","guardianFinal","normalizedBlueprint","normalizedExperimental","variants","exact","blueprintSymbol","grade","guardianBase","sourcePurchase","NO_ISSUES","Object","freeze","completeResult","complete","issues","incompleteResult","issue","PREFIX","powerPlant","thrusters","frameShiftDrive","powerDistributor","shieldGenerator","shieldCellBank","shieldBooster","shieldReinforcement","hullReinforcement","moduleReinforcement","startsWithAny","prefixes","isPowerDistributor","isPowerPlant","parsed","isThruster","isFrameShiftDrive","isEnabled","priorityOf","effectiveStat","field","stated","statedModifier","base","label","modified","effectiveCapability","effectiveDamageDistribution","fromEffect","damageDistribution","distribution","resolved","seen","type","convertsDamage","modifierRatio","effective","relatedStat","ratio","effectiveModule","merged","fields","keys","capability","engineeringGroup","massRatio","minMass","maxMass","performanceRatio","minMultiplier","maxMultiplier","normalizeEffectiveWeapon","damageComponents","damage","powerConsumerFor","draw","mounted","enabled","deployedOnly","alwaysPowered","powerAvailable","statsFor","DEFAULT_SLOT","powerCapacity","heatEfficiency","UNRESOLVED_FACT","NOTHING_FITTED","metricIssue","reason","defaultSlot","unavailable","powerPlantIssueFor","capacity","Number","isFinite","powerDrawIssueFor","consumer","poweredMetricBudgetFor","getBudget","plantIssue","drawIssue","budget","available","poweredStates","retracted","poweredShieldGeneratorResultFor","powered","mapResistanceFields","read","kineticResistance","thermalResistance","explosiveResistance","causticResistance","resistancesOf","shieldInputFor","generator","boosters","reinforcement","strengthRatio","optMass","Math","max","optMultiplier","shieldBoost","hullMass","baseShieldStrength","shieldInputResultFor","fitted","shieldCapacitorInputResultFor","systemsPips","capacitor","systemsCapacitorResultFor","shields","strength","resistances","systemsCapacity","systemsRecharge","distributor","thrusterCurveFor","optSpeedMultiplier","speedCurve","minSpeedMultiplier","maxSpeedMultiplier","optRotationMultiplier","rotationCurve","minRotationMultiplier","maxRotationMultiplier","fittedThrusterParamsFor","mobilityInputResultFor","mass","minimumSpeed","maximumSpeed","boost","minPitch","pitch","minRoll","roll","minYaw","yaw","shieldRecoveryInputResultFor","generatorModule","generatorStats","distributorDraw","regenRate","brokenRegenRate","weaponsCapacitorInputFor","weaponsPips","weaponsCapacity","weaponsRecharge","sustainedEnergyPerSecond","deployed","weapon","weaponStatsFor","distributorInputResultFor","pips","disabled","enginesCapacity","enginesRecharge","heatInputResultFor","plant","thrusterHeatRate","deployedThrusterHeatRate","fsdHeatRate","weapons","running","heat","heatPerSecond","sustainedHeatPerSecond","heatCapacity","heatDissipation","retractedPowerDraw","poweredDraw","deployedPowerDraw","state","bands","reduce","total","band","min","poweredRetracted","poweredDeployed","cellBankInputsFor","banks","ammunition","reinforcementRate","shieldBankReinforcement","cells","spinUp","shieldBankSpinUp","duration","shieldBankDuration","shieldBankHeat","stockBulkhead","v","endsWith","armourInputFor","reinforcements","moduleReinforcements","bulkhead","hullBoost","moduleProtection","integrity","stock","baseArmour","WEAPON_FIELDS","projectileRange","burstAdjustedRateOfFire","touched","FIRING_RATE_LABELS","readsDamageFromPerSecond","every","rate","rateOfFire","statedDamagePerSecond","firingFactor","roundsPerShot","maximumRange","falloffRange","INTERNALS","WeakMap","publishLoadoutInternals","build","internals","loadoutInternals","get"],"mappings":"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"}
@@ -1 +0,0 @@
1
- import{getLocalizedName,createLocalizedNameIndex}from"./chunk-RVIYOHYF.js";var experimental_effect_descriptions_default={special_auto_loader:{en:"Reloads the weapon while it continues firing."},special_corrosive_shell:{en:"Reduces the target armour hardness; costs 20% maximum ammo."},special_blinding_shell:{en:"Reduces the target's sensor acuity."},special_dispersal_field:{en:"Reduces the target's gimbal and turret tracking."},special_drag_munitions:{en:"Reduces the target's speed and prevents it from boosting engine thrust."},special_force_shell:{en:"Pushes the target off course."},special_fsd_interrupt:{en:"Reboots the target's frame shift drive."},special_high_yield_shell:{en:"Deals 50/50 kinetic/explosive damage with module splash damage."},special_distortion_field:{en:"Deals 50/50 kinetic/thermal damage."},special_choke_canister:{en:"Reboots the target's thrusters."},special_mass_lock:{en:"Inhibits the target's frame shift drive."},special_overload_munitions:{en:"Converts damage to 50/50 explosive/thermal."},special_penetrator_munitions:{en:"Deals damage to the target's modules."},special_deep_cut_payload:{en:"Deals damage to the target's modules."},special_phasing_sequence:{en:"10% of damage bypasses shields."},special_plasma_slug:{en:"Reloads from ship fuel instead of ammunition."},special_radiant_canister:{en:"Emits an area of heat and sensor disruption."},special_regeneration_sequence:{en:"Regenerates wingmates’ shields on hits."},special_reverberating_cascade:{en:"Damages the target's shield generator."},special_scramble_spectrum:{en:"Causes the target's modules to malfunction."},special_screening_shell:{en:"Effective against munitions (e.g. missiles)."},special_shiftlock_canister:{en:"Reboots the frame shift drives of ships in the area."},special_smart_rounds:{en:"Deals no damage to ships that are not the current target."},special_super_penetrator:{en:"Deals damage to the target's modules."},special_lock_breaker:{en:"Causes the target to lose its lock."},special_thermal_cascade:{en:"Increases heat on a shielded target."},special_thermal_conduit:{en:"Damage scales with the attacker's heat level."},special_thermalshock:{en:"Increases the target's heat."},special_thermal_vent:{en:"Reduces the attacker's heat when hitting a target."}};var DESCRIPTIONS=/* @__PURE__ */createLocalizedNameIndex(experimental_effect_descriptions_default);function getExperimentalEffectDescription(experimentalEffectSymbol,locale){return getLocalizedName(DESCRIPTIONS,experimentalEffectSymbol,locale,"getExperimentalEffectDescription","experimentalEffectSymbol")}export{getExperimentalEffectDescription};//# sourceMappingURL=chunk-FF2X4K5P.js.map
@@ -1 +0,0 @@
1
- import{getLocalizedName,createDeduplicatedLocalizedNameIndex}from"./chunk-RVIYOHYF.js";import{requireObject,requireString,requireStringIfPresent}from"./chunk-PKWVG2JY.js";var pre_engineered_variant_names_default={nameKeys:{"Hpt_Mining_AbrBlstr_Fixed_Small|AbrasionBlaster_FarReaching||mercenary":"Far-Reaching Abrasion Blaster","Hpt_CausticMissile_Fixed_Medium|EnzymeMissileRack_HighYield||mercenary":"High-Yield Enzyme Missile Rack","Hpt_Slugshot_Gimbal_Small|FragmentCannonSmall_DoubleScreaming|special_screening_shell|mercenary":"Double Screaming Fragment Cannon","Hpt_Slugshot_Gimbal_Large|FragmentCannonLarge_DoubleScreaming|special_screening_shell|mercenary":"Double Screaming Fragment Cannon","Hpt_MiningLaser_Fixed_Small|MiningLaser_LongRange|special_incendiary_rounds|mercenary":"Long Range Mining Laser","Hpt_MultiCannon_Fixed_Medium|MultiCannon_Rapid|special_phasing_sequence|mercenary":"Rapid Phase Multi-Cannon","Hpt_Railgun_Fixed_Medium|RailGun_LongShot|special_feedback_cascade_cooled|mercenary":"Enduring Feedback Rail Gun","Hpt_BasicMissileRack_Fixed_Medium|SeekerMissileRack_Drag|special_drag_munitions|mercenary":"Drag Seeker Missile Rack","Hpt_BasicMissileRack_Fixed_Large|SeekerMissileRack_Drag|special_drag_munitions|mercenary":"Drag Seeker Missile Rack","Hpt_BasicMissileRack_Fixed_Medium|SeekerMissileRack_LightWeightThermal|special_thermal_cascade|mercenary":"Lightweight Thermal Seeker Missile Rack","Hpt_BasicMissileRack_Fixed_Medium|SeekerMissileRackMedium_Lockdown|special_fsd_interrupt|mercenary":"Lockdown Seeker Missile Rack","Hpt_BasicMissileRack_Fixed_Large|SeekerMissileRackLarge_Lockdown|special_fsd_interrupt|mercenary":"Lockdown Seeker Missile Rack","Int_CargoRack_Size5_Class1|CargoRackS5C1_Extended||mercenary":"Extended Cargo Rack","Int_CargoRack_Size6_Class1|CargoRackS6C1_Extended||mercenary":"Extended Cargo Rack","Int_DetailedSurfaceScanner_Tiny|DetailedSurfaceScanner_LongRange||mercenary":"Long Range Detailed Surface Scanner","Int_ModuleReinforcement_Size5_Class2|ModuleReinforcement_HeavyDuty||mercenary":"Heavy Duty Module Reinforcement Package","Int_PowerDistributor_Size3_Class2|PowerDistributorS3C2_SupportFocused||mercenary":"Support Focused Power Distributor","Int_PowerDistributor_Size3_Class5|PowerDistributorS3C5_SupportFocused||mercenary":"Support Focused Power Distributor","Int_PowerDistributor_Size4_Class2|PowerDistributorS4C2_SupportFocused||mercenary":"Support Focused Power Distributor","Int_PowerDistributor_Size4_Class5|PowerDistributorS4C5_SupportFocused||mercenary":"Support Focused Power Distributor","Int_PowerDistributor_Size5_Class5|PowerDistributor_Balanced||mercenary":"Balanced Power Distributor","Int_PowerDistributor_Size6_Class5|PowerDistributorS6C5_SupportFocused||mercenary":"Support Focused Power Distributor","Hpt_Mining_AbrBlstr_Fixed_Small|Weapon_LongRange||communityGoal":"Abrasion Blaster","Hpt_CausticMissile_Fixed_Medium|Weapon_HighCapacity||communityGoal":"Enzyme Missile Rack","Hpt_Slugshot_Gimbal_Small|Weapon_DoubleShot|special_screening_shell|communityGoal":"Fragment Cannon","Hpt_Slugshot_Gimbal_Large|Weapon_DoubleShot|special_screening_shell|communityGoal":"Fragment Cannon","Hpt_Guardian_ShardCannon_Fixed_Medium|Weapon_LongRange||communityGoal":"Guardian Shard Cannon","Hpt_MultiCannon_Fixed_Medium|Weapon_RapidFire|special_phasing_sequence|communityGoal":"Multi-Cannon","Hpt_Railgun_Fixed_Medium|Weapon_HighCapacity|special_feedback_cascade_cooled|communityGoal":"Rail Gun","Hpt_Railgun_Fixed_Medium_Burst|Weapon_HighCapacity|special_super_penetrator|communityGoal":"Imperial Hammer Rail Gun","Hpt_BasicMissileRack_Fixed_Medium|Weapon_HighCapacity|special_drag_munitions|communityGoal":"Seeker Missile Rack","Hpt_BasicMissileRack_Fixed_Medium|Weapon_HighCapacity|special_fsd_interrupt|communityGoal":"Seeker Missile Rack","Hpt_BasicMissileRack_Fixed_Large|Weapon_HighCapacity|special_fsd_interrupt|communityGoal":"Seeker Missile Rack","Hpt_ElectronicCountermeasure_Tiny|Misc_LightWeight||communityGoal":"Electronic Countermeasure","Hpt_CrimeScanner_Size0_Class5|Sensor_FastScan||communityGoal":"Kill Warrant Scanner","Hpt_CrimeScanner_Size0_Class3|Sensor_FastScan||communityGoal":"Kill Warrant Scanner","Hpt_PlasmaPointDefence_Turret_Tiny|Misc_LightWeight||communityGoal":"Point Defence","Int_PowerDistributor_Size3_Class5|PowerDistributor_PrioritySystems||communityGoal":"Power Distributor","Int_PowerDistributor_Size3_Class2|PowerDistributor_PrioritySystems||communityGoal":"Power Distributor","Int_PowerDistributor_Size4_Class5|PowerDistributor_PrioritySystems||communityGoal":"Power Distributor","Int_PowerDistributor_Size4_Class2|PowerDistributor_PrioritySystems||communityGoal":"Power Distributor","Int_PowerDistributor_Size6_Class5|PowerDistributor_PrioritySystems||communityGoal":"Power Distributor","Int_Powerplant_Size3_Class5|PowerPlant_Armoured||communityGoal":"Power Plant","Int_Powerplant_Size3_Class5|PowerPlant_Boosted||communityGoal":"Power Plant","Int_Powerplant_Size4_Class5|PowerPlant_Boosted||communityGoal":"Power Plant","Int_Powerplant_Size5_Class5|PowerPlant_Boosted||communityGoal":"Power Plant","Int_Hyperdrive_Size3_Class5|FSD_LongRange||communityGoal":"Frame Shift Drive","Int_Hyperdrive_Size4_Class5|FSD_LongRange||communityGoal":"Frame Shift Drive","Int_Hyperdrive_Size6_Class5|FSD_LongRange||communityGoal":"Frame Shift Drive","Int_CargoRack_Size5_Class1|CargoRack_IncreasedCapacity||communityGoal":"Cargo Rack","Int_CargoRack_Size6_Class1|CargoRack_IncreasedCapacity||communityGoal":"Cargo Rack","Int_ShieldGenerator_Size3_Class5|ShieldGenerator_Kinetic||communityGoal":"Shield Generator","Hpt_ATDumbfireMissile_Fixed_Medium|Weapon_HighCapacity||techBroker":"AX Missile Rack","Hpt_ATDumbfireMissile_Fixed_Large|Weapon_HighCapacity||techBroker":"AX Missile Rack","Hpt_ATMultiCannon_Gimbal_Medium|Weapon_Overcharged|special_auto_loader|techBroker":"Enhanced AX Multi-Cannon","Hpt_ATMultiCannon_Gimbal_Large|Weapon_Overcharged|special_auto_loader|techBroker":"Enhanced AX Multi-Cannon","Hpt_Guardian_GaussCannon_Fixed_Small|Weapon_RapidFire||techBroker":"Guardian Gauss Cannon","Hpt_Guardian_GaussCannon_Fixed_Medium|Weapon_RapidFire||techBroker":"Guardian Gauss Cannon","Hpt_Guardian_PlasmaLauncher_Fixed_Small|Weapon_Overcharged||techBroker":"Guardian Plasma Charger","Hpt_Guardian_PlasmaLauncher_Fixed_Medium|Weapon_Overcharged||techBroker":"Guardian Plasma Charger","Hpt_Guardian_ShardCannon_Fixed_Small|Weapon_LongRange||techBroker":"Guardian Shard Cannon","Hpt_Guardian_ShardCannon_Fixed_Medium|Weapon_LongRange||techBroker":"Guardian Shard Cannon","Hpt_MiningLaser_Fixed_Small|Weapon_LongRange|special_incendiary_rounds|techBroker":"Mining Laser","Hpt_BasicMissileRack_Fixed_Medium|Weapon_HighCapacity|special_thermal_cascade|techBroker":"Seeker Missile Rack","Hpt_HeatSinkLauncher_Turret_Tiny|Misc_HeatSinkCapacity||techBroker":"Heat Sink Launcher","Int_Hyperdrive_Size5_Class5|FSD_LongRange||techBroker":"Frame Shift Drive","Int_Hyperdrive_Overcharge_Size2_Class5|FSD_LongRange||techBroker":"Frame Shift Drive (SCO)","Int_Hyperdrive_Overcharge_Size3_Class5|FSD_LongRange||techBroker":"Frame Shift Drive (SCO)","Int_Hyperdrive_Overcharge_Size4_Class5|FSD_LongRange||techBroker":"Frame Shift Drive (SCO)","Int_Hyperdrive_Overcharge_Size5_Class5|FSD_LongRange||techBroker":"Frame Shift Drive (SCO)","Int_Hyperdrive_Overcharge_Size6_Class5|FSD_LongRange||techBroker":"Frame Shift Drive (SCO)","Int_Hyperdrive_Overcharge_Size7_Class5|FSD_LongRange||techBroker":"Frame Shift Drive (SCO)","Int_DetailedSurfaceScanner_Tiny|Sensor_Expanded||techBroker":"Detailed Surface Scanner","Hpt_FlakMortar_Turret_Medium|Decorative_Green||eventReward":"Festive Green Remote Release Flak Launcher","Hpt_FlakMortar_Turret_Medium|Decorative_Red||eventReward":"Festive Red Remote Release Flak Launcher","Hpt_FlakMortar_Turret_Medium|Decorative_Yellow||eventReward":"Festive Yellow Remote Release Flak Launcher"},names:{"Far-Reaching Abrasion Blaster":{en:"Far-Reaching Abrasion Blaster",de:"Abrasionsblaster mit großer Reichweite",es:"Destructor de abrasión de largo alcance",fr:"Surfaceur abrasif longue portée",ru:"Абразивный бластер с увеличенной дальностью"},"High-Yield Enzyme Missile Rack":{en:"High-Yield Enzyme Missile Rack",de:"Enzymraketenrampe mit hohen Erträgen",es:"Lanzamisiles de enzimas de alto rendimiento",fr:"Batterie de missiles enzymatiques à hauts rendements",ru:"Блок энзимных ракет высокой мощности"},"Double Screaming Fragment Cannon":{en:"Double Screaming Fragment Cannon",de:"Doppelschrei-Splitterkanone",es:"Cañón de fragmentación doble con proyectil de pantalla",fr:"Double canon à fragmentation Screaming",ru:"Залповое орудие «Двойной вой»"},"Long Range Mining Laser":{en:"Long Range Mining Laser",de:"Ferndistanz-Abbaulaser",es:"Láser de minería de largo alcance",fr:"Laser minier longue portée",ru:"Проходочный лазер с увеличенной дальностью"},"Rapid Phase Multi-Cannon":{en:"Rapid Phase Multi-Cannon",de:"Schnellfeuer-Mehrfachgeschütz",es:"Multicañón de fase con disparo rápido",fr:"Multi-canon à phase rapide",ru:"Скорострельное фазовое многоствольное орудие"},"Enduring Feedback Rail Gun":{en:"Enduring Feedback Rail Gun",de:"Robuste Feedback-Schienenkanone",es:"Cañón de riel Retroalimentación Soportable",fr:"Canon électrique énergétique résistant",ru:"Электромагнитная пушка с постоянным откликом"},"Drag Seeker Missile Rack":{en:"Drag Seeker Missile Rack",de:"Suchraketenrampe ziehen",es:"Lanzamisiles guiado con lastre",fr:"Batterie de missiles TC à inertie",ru:"Блок ракет с самонаведением и замедляющими боеприпасами"},"Lightweight Thermal Seeker Missile Rack":{en:"Lightweight Thermal Seeker Missile Rack",de:"Leichte thermische Suchraketenrampe",es:"Lanzamisiles guiado térmico ligero",fr:"Batterie de missiles TC thermiques légers",ru:"Легкий блок тепловых ракет с самонаведением"},"Lockdown Seeker Missile Rack":{en:"Lockdown Seeker Missile Rack",de:"Abriegelung-Suchraketenrampe",es:"Lanzamisiles guiado con bloqueo",fr:"Batterie de missiles TC à verrouillage",ru:"Блок ракет с самонаведением и блокировкой"},"Extended Cargo Rack":{en:"Extended Cargo Rack",de:"Erweitertes Frachtgestell",es:"Bodega de carga extendida",fr:"Compartiment soute agrandi",ru:"Увеличенный грузовой стеллаж"},"Long Range Detailed Surface Scanner":{en:"Long Range Detailed Surface Scanner",de:"Ferndistanz-Detail-Oberflächenscanner",es:"Escáner de análisis de superficie detallado de largo alcance",fr:"Détecteur de surface détaillé longue portée",ru:"Подробный сканер поверхностей с увеличенной дальностью"},"Heavy Duty Module Reinforcement Package":{en:"Heavy Duty Module Reinforcement Package",de:"Schwere Modulverstärkung (Paket)",es:"Paquete de refuerzo de módulo de alta resistencia",fr:"Pack de renforcement de modules lourds",ru:"Укрепленный набор для усиления модуля"},"Support Focused Power Distributor":{en:"Support Focused Power Distributor",de:"Unterstützungsfokussierter Energieverteiler",es:"Distribuidor de energía orientado al apoyo",fr:"Répartiteur de puissance optimisé Survie",ru:"Вспомогательный распределитель питания"},"Balanced Power Distributor":{en:"Balanced Power Distributor",de:"Abgeglichener Energieverteiler",es:"Distribuidor de energía equilibrado",fr:"Répartiteur de puissance équilibré",ru:"Сбалансированный распределитель энергии"},"Abrasion Blaster":{en:"Abrasion Blaster",de:"Abrasionsblaster",es:"Destructor de abrasión",fr:"Surfaceur abrasif",pt:"Detonador de Abrasão",ru:"Шлифовальный бластер"},"Enzyme Missile Rack":{en:"Enzyme Missile Rack",de:"Enzymraketenwerfer",es:"Lanzamisiles de Enzimas",fr:"Batterie de missile enzymatique",pt:"Estante de Míssel Enzimático",ru:"Пусковая энзимных ракет"},"Fragment Cannon":{en:"Fragment Cannon",de:"Splitterkanone",es:"Cañón de fragmentación",fr:"Canon à fragmentation",pt:"Canhão de Fragmentação",ru:"Залповое орудие"},"Mining Laser":{en:"Mining Laser",de:"Abbaulaser",es:"Láser de minería",fr:"Laser Minier",pt:"Laser de Mineração",ru:"Проходочный лазер"},"Multi-Cannon":{en:"Multi-Cannon",de:"Mehrfachgeschütz",es:"Multicañón",fr:"Multi-canon",pt:"Canhão de Repetição",ru:"Многоствольное орудие"},"Rail Gun":{en:"Rail Gun",de:"Schienenkanone",es:"Cañón de riel",fr:"Canon électrique",pt:"Canhão Elétrico",ru:"Электромагнитная пушка"},"Seeker Missile Rack":{en:"Seeker Missile Rack",de:"Suchraketenrampe",es:"Lanzamisiles guiados",fr:"Missiles TC",pt:"Estante de Míssil Guiado",ru:"Блок ракет с самонаведением"},"Cargo Rack":{en:"Cargo Rack",de:"Frachtgestell",es:"Bodega de carga",fr:"Compartiment de soute",pt:"Estante de Carga",ru:"Грузовой стеллаж"},"Detailed Surface Scanner":{en:"Detailed Surface Scanner",de:"Detail-Oberflächenscanner",es:"Escáner de superficie detallado",fr:"Détecteur de surface détaillé",pt:"Scanner de Superfície",ru:"Сканер поверхностей"},"Power Distributor":{en:"Power Distributor",de:"Energieverteiler",es:"Distribuidor de energía",fr:"Répartiteur de puissance",pt:"Distribuidor de Energia",ru:"Распределитель питания"},"Guardian Shard Cannon":{en:"Guardian Shard Cannon",de:"Fragmentkanone",es:"Cañón de esquirlas",fr:"Canon à éclats",pt:"Canhão de fragmentos",ru:"Осколочное орудие"},"Imperial Hammer Rail Gun":{en:"Imperial Hammer Rail Gun",de:"Hammer",es:"Martillo",fr:"Marteleur",pt:"Martelo",ru:"«Молот»"},"Electronic Countermeasure":{en:"Electronic Countermeasure",de:"Elektronische Gegenmaßnahme",es:"Contramedidas electrónicas",fr:"Contre-mesures électroniques",pt:"Contramedida Eletrônica",ru:"Электр. противодействие"},"Kill Warrant Scanner":{en:"Kill Warrant Scanner",de:"Tötungsbefehl-Scanner",es:"Escáner de recompensas",fr:"Détecteur d'avis de recherche",pt:"Scanner de Registro Criminal",ru:"Сканер преступников"},"Point Defence":{en:"Point Defence",de:"Punktverteidigung",es:"Defensa de punto",fr:"Défense ponctuelle",pt:"Defesa de Ponto",ru:"Точечная оборона"},"Power Plant":{en:"Power Plant",de:"Kraftwerk",es:"Núcleo de energía",fr:"Générateur",pt:"Gerador de Energia",ru:"Силовая установка"},"Frame Shift Drive":{en:"Frame Shift Drive",de:"Frameshiftantrieb",es:"Motor de salto",fr:"Réacteur FSD",pt:"Motor de Distorção de Fase",ru:"Рамочно Сместительный двигатель"},"Shield Generator":{en:"Shield Generator",de:"Schildgenerator",es:"Generador de escudos",fr:"Générateur de bouclier",pt:"Gerador de Escudo",ru:"Щитогенератор"},"AX Missile Rack":{en:"AX Missile Rack",de:"AX-Raketenrampe",es:"Lanzamisiles AX",fr:"Batterie de missiles AX",pt:"Estante de Mísseis AX",ru:"Блок ракет АИ"},"Enhanced AX Multi-Cannon":{en:"Enhanced AX Multi-Cannon",de:"Fortschrittliches AX Mehrfachgeschütz",pt:"Canhão de Repetição AX Melhorado",ru:"Улучш. многоствольное орудие АИ"},"Guardian Gauss Cannon":{en:"Guardian Gauss Cannon",de:"Guardian-Gausskanone",es:"Cañón Gauss Guardián",fr:"Canon de Gauss - Guardians",pt:"Canhão Gauss Guardian",ru:"Пушка Гаусса"},"Guardian Plasma Charger":{en:"Guardian Plasma Charger",de:"Guardian-Plasmalader",es:"Cargador de Plasma Guardián",fr:"Chargeur à Plasma - Guardians",pt:"Carregador de Plasma Guardian",ru:"Плазменная пушка"},"Heat Sink Launcher":{en:"Heat Sink Launcher",de:"Kühlkörperabwurf",es:"Eyector térmico",fr:"Éjecteur de dissipateur thermique",pt:"Lançador de Dissipador Térmico",ru:"Теплоотводная катапульта"},"Frame Shift Drive (SCO)":{en:"Frame Shift Drive (SCO)",pt:"Motor de Distorção de Fase (SSV)",ru:"Двигатель FSD (ПГР)"},"Festive Green Remote Release Flak Launcher":{en:"Festive Green Remote Release Flak Launcher"},"Festive Red Remote Release Flak Launcher":{en:"Festive Red Remote Release Flak Launcher"},"Festive Yellow Remote Release Flak Launcher":{en:"Festive Yellow Remote Release Flak Launcher"}}};var NAMES=/* @__PURE__ */createDeduplicatedLocalizedNameIndex(pre_engineered_variant_names_default);function identityKey(identity){const prefix="getPreEngineeredVariantName: variant";requireObject(identity,prefix);const symbol=requireString(identity.symbol,`${prefix}.symbol`).trim();const blueprint=requireString(identity.blueprintSymbol,`${prefix}.blueprintSymbol`).trim();requireStringIfPresent(identity.experimentalEffectSymbol,`${prefix}.experimentalEffectSymbol`);const experimental=identity.experimentalEffectSymbol?.trim()??"";const acquisition=requireString(identity.acquisition,`${prefix}.acquisition`).trim();return`${symbol}|${blueprint}|${experimental}|${acquisition}`}function getPreEngineeredVariantName(variant,locale){return getLocalizedName(NAMES,identityKey(variant),locale,"getPreEngineeredVariantName","variant")}export{getPreEngineeredVariantName};//# sourceMappingURL=chunk-G2VSQFD6.js.map
@@ -1 +0,0 @@
1
- import{normalizeKey}from"./chunk-BKWLI44T.js";import{requireStringIfPresent}from"./chunk-PKWVG2JY.js";import{deepFreeze}from"./chunk-DURKO7JU.js";var engineering_options_default={groups:{powerPlants:{name:"Power Plants",blueprints:["PowerPlant_Armoured","PowerPlant_Boosted","PowerPlant_Stealth"],experimentals:["special_powerplant_cooled","special_powerplant_highcharge","special_powerplant_lightweight","special_powerplant_toughened"]},guardianPowerPlants:{name:"Guardian Power Plants",blueprints:["GuardianModule_Sturdy"],experimentals:[]},thrusters:{name:"Thrusters",blueprints:["Engine_Dirty","Engine_Reinforced","Engine_Tuned"],experimentals:["special_engine_cooled","special_engine_haulage","special_engine_lightweight","special_engine_overloaded","special_engine_toughened"]},frameShiftDrives:{name:"Frame Shift Drives",blueprints:["FSD_FastBoot","FSD_LongRange","FSD_Shielded"],experimentals:["special_fsd_cooled","special_fsd_fuelcapacity","special_fsd_heavy","special_fsd_lightweight","special_fsd_toughened"]},powerDistributors:{name:"Power Distributors",blueprints:["PowerDistributor_HighCapacity","PowerDistributor_HighFrequency","PowerDistributor_PriorityEngines","PowerDistributor_PrioritySystems","PowerDistributor_PriorityWeapons","PowerDistributor_Shielded"],experimentals:["special_powerdistributor_capacity","special_powerdistributor_efficient","special_powerdistributor_fast","special_powerdistributor_lightweight","special_powerdistributor_toughened"]},guardianPowerDistributors:{name:"Guardian Power Distributors",blueprints:["GuardianModule_Sturdy"],experimentals:[]},frameShiftDrivesSCO:{name:"Frame Shift Drives (SCO)",blueprints:["FSD_FastBoot","FSD_LongRange","FSD_Shielded"],experimentals:["special_fsd_cooled","special_fsd_fuelcapacity","special_fsd_heavy","special_fsd_lightweight","special_fsd_toughened"]},shieldGenerators:{name:"Shield Generators",blueprints:["ShieldGenerator_Kinetic","ShieldGenerator_Optimised","ShieldGenerator_Reinforced","ShieldGenerator_Thermic"],experimentals:["special_shield_efficient","special_shield_health","special_shield_kinetic","special_shield_lightweight","special_shield_regenerative","special_shield_resistive","special_shield_thermic","special_shield_toughened"]},shieldCellBanks:{name:"Shield Cell Banks",blueprints:["ShieldCellBank_Rapid","ShieldCellBank_Specialised"],experimentals:["special_shieldcell_efficient","special_shieldcell_gradual","special_shieldcell_lightweight","special_shieldcell_oversized","special_shieldcell_toughened"]},hullReinforcements:{name:"Hull Reinforcements",blueprints:["HullReinforcement_Advanced","HullReinforcement_Explosive","HullReinforcement_HeavyDuty","HullReinforcement_Kinetic","HullReinforcement_Thermic"],experimentals:["special_hullreinforcement_chunky","special_hullreinforcement_explosive","special_hullreinforcement_kinetic","special_hullreinforcement_thermic"]},guardianHullReinforcements:{name:"Guardian Hull Reinforcements",blueprints:["GuardianModule_Sturdy"],experimentals:[]},pulseLasers:{name:"Pulse Lasers",blueprints:["PulseLaser_ThermalPlasmaConversion","Weapon_Efficient","Weapon_Focused","Weapon_LightWeight","Weapon_LongRange","Weapon_Overcharged","Weapon_RapidFire","Weapon_ShortRange","Weapon_Sturdy"],experimentals:["special_concordant_sequence","special_emissive_munitions","special_phasing_sequence","special_scramble_spectrum","special_thermalshock","special_weapon_damage","special_weapon_efficient","special_weapon_lightweight","special_weapon_rateoffire","special_weapon_toughened"]},burstLasers:{name:"Burst Lasers",blueprints:["BurstLaser_ThermalPlasmaConversion","Weapon_Efficient","Weapon_Focused","Weapon_LightWeight","Weapon_LongRange","Weapon_Overcharged","Weapon_RapidFire","Weapon_ShortRange","Weapon_Sturdy"],experimentals:["special_concordant_sequence","special_distortion_field","special_phasing_sequence","special_scramble_spectrum","special_thermalshock","special_weapon_damage","special_weapon_efficient","special_weapon_lightweight","special_weapon_rateoffire","special_weapon_toughened"]},beamLasers:{name:"Beam Lasers",blueprints:["BeamLaser_ThermalPlasmaConversion","Weapon_Efficient","Weapon_LightWeight","Weapon_LongRange","Weapon_Overcharged","Weapon_ShortRange","Weapon_Sturdy"],experimentals:["special_concordant_sequence","special_regeneration_sequence","special_thermal_conduit","special_thermal_vent","special_thermalshock","special_weapon_damage","special_weapon_efficient","special_weapon_lightweight","special_weapon_toughened"]},cannons:{name:"Cannons",blueprints:["Weapon_Efficient","Weapon_HighCapacity","Weapon_LightWeight","Weapon_LongRange","Weapon_Overcharged","Weapon_RapidFire","Weapon_ShortRange","Weapon_Sturdy"],experimentals:["special_auto_loader","special_dispersal_field","special_force_shell","special_high_yield_shell","special_smart_rounds","special_thermal_cascade","special_weapon_damage","special_weapon_efficient","special_weapon_lightweight","special_weapon_rateoffire","special_weapon_toughened"]},fragmentCannons:{name:"Fragment Cannons",blueprints:["Weapon_DoubleShot","Weapon_Efficient","Weapon_HighCapacity","Weapon_LightWeight","Weapon_Overcharged","Weapon_RapidFire","Weapon_Sturdy"],experimentals:["special_blinding_shell","special_corrosive_shell","special_drag_munitions","special_incendiary_rounds","special_screening_shell","special_weapon_damage","special_weapon_efficient","special_weapon_lightweight","special_weapon_rateoffire","special_weapon_toughened"]},multiCannons:{name:"Multi-Cannons",blueprints:["MC_Overcharged","Weapon_Efficient","Weapon_HighCapacity","Weapon_LightWeight","Weapon_LongRange","Weapon_RapidFire","Weapon_ShortRange","Weapon_Sturdy"],experimentals:["special_auto_loader","special_corrosive_shell","special_emissive_munitions","special_incendiary_rounds","special_phasing_sequence","special_smart_rounds","special_thermalshock","special_weapon_damage","special_weapon_efficient","special_weapon_lightweight","special_weapon_rateoffire","special_weapon_toughened"]},plasmaAccelerators:{name:"Plasma Accelerators",blueprints:["Weapon_Efficient","Weapon_Focused","Weapon_LightWeight","Weapon_LongRange","Weapon_Overcharged","Weapon_RapidFire","Weapon_ShortRange","Weapon_Sturdy"],experimentals:["special_blinding_shell","special_dispersal_field","special_lock_breaker","special_phasing_sequence","special_plasma_slug","special_thermal_conduit","special_weapon_damage","special_weapon_efficient","special_weapon_lightweight","special_weapon_rateoffire","special_weapon_toughened"]},railGuns:{name:"Rail Guns",blueprints:["Weapon_HighCapacity","Weapon_LightWeight","Weapon_LongRange","Weapon_ShortRange","Weapon_Sturdy"],experimentals:["special_feedback_cascade_cooled","special_plasma_slug_cooled","special_super_penetrator","special_super_penetrator_cooled","special_weapon_damage","special_weapon_efficient","special_weapon_lightweight","special_weapon_rateoffire","special_weapon_toughened"]},missiles:{name:"Missiles",blueprints:["Weapon_HighCapacity","Weapon_LightWeight","Weapon_RapidFire","Weapon_Sturdy"],experimentals:["special_drag_munitions","special_emissive_munitions","special_fsd_interrupt","special_overload_munitions","special_penetrator_munitions","special_thermal_cascade","special_weapon_damage","special_weapon_efficient","special_weapon_lightweight","special_weapon_rateoffire","special_weapon_toughened"]},mines:{name:"Mines",blueprints:["Weapon_HighCapacity","Weapon_LightWeight","Weapon_RapidFire","Weapon_Sturdy"],experimentals:["special_choke_canister","special_emissive_munitions","special_overload_munitions","special_radiant_canister","special_reverberating_cascade","special_shiftlock_canister","special_weapon_damage","special_weapon_efficient","special_weapon_lightweight","special_weapon_toughened"]},torpedoes:{name:"Torpedoes",blueprints:["Weapon_LightWeight","Weapon_Sturdy"],experimentals:["special_deep_cut_payload","special_mass_lock","special_reverberating_cascade","special_weapon_damage","special_weapon_efficient","special_weapon_lightweight","special_weapon_toughened"]},shieldBoosters:{name:"Shield Boosters",blueprints:["ShieldBooster_Explosive","ShieldBooster_HeavyDuty","ShieldBooster_Kinetic","ShieldBooster_Resistive","ShieldBooster_Thermic"],experimentals:["special_shieldbooster_chunky","special_shieldbooster_efficient","special_shieldbooster_explosive","special_shieldbooster_kinetic","special_shieldbooster_thermic","special_shieldbooster_toughened"]},bulkheads:{name:"Bulkheads",blueprints:["Armour_Advanced","Armour_Explosive","Armour_HeavyDuty","Armour_Kinetic","Armour_Thermic"],experimentals:["special_armour_chunky","special_armour_explosive","special_armour_kinetic","special_armour_thermic"]},lifeSupports:{name:"Life Supports",blueprints:["LifeSupport_LightWeight","LifeSupport_Reinforced","LifeSupport_Shielded"],experimentals:[]},sensors:{name:"Sensors",blueprints:["Sensor_LightWeight","Sensor_LongRange","Sensor_WideAngle"],experimentals:[]},autoFieldMaintenanceUnits:{name:"Auto Field-Maintenance Units",blueprints:["AFM_Shielded"],experimentals:[]},collectionLimpets:{name:"Collection Limpets",blueprints:["CollectionLimpet_LightWeight","CollectionLimpet_Reinforced","CollectionLimpet_Shielded"],experimentals:[]},fsdBoosters:{name:"FSD Boosters",blueprints:["GuardianModule_Sturdy"],experimentals:[]},fsdInterdictors:{name:"FSD Interdictors",blueprints:["FSDinterdictor_Expanded","FSDinterdictor_LongRange"],experimentals:[]},fuelScoops:{name:"Fuel Scoops",blueprints:["FuelScoop_Efficiency","FuelScoop_Shielded"],experimentals:[]},fuelTransferLimpets:{name:"Fuel Transfer Limpets",blueprints:["FuelTransferLimpet_LightWeight","FuelTransferLimpet_Reinforced","FuelTransferLimpet_Shielded"],experimentals:[]},hatchBreakerLimpets:{name:"Hatch Breaker Limpets",blueprints:["HatchBreakerLimpet_LightWeight","HatchBreakerLimpet_Reinforced","HatchBreakerLimpet_Shielded"],experimentals:[]},moduleReinforcements:{name:"Module Reinforcements",blueprints:["GuardianModule_Sturdy"],experimentals:[]},prospectingLimpets:{name:"Prospecting Limpets",blueprints:["ProspectingLimpet_LightWeight","ProspectingLimpet_Reinforced","ProspectingLimpet_Shielded"],experimentals:[]},refineries:{name:"Refineries",blueprints:["Refineries_Shielded"],experimentals:[]},shieldReinforcements:{name:"Shield Reinforcements",blueprints:["GuardianModule_Sturdy"],experimentals:[]},surfaceScanners:{name:"Surface Scanners",blueprints:["Sensor_Expanded"],experimentals:[]},chaffLaunchers:{name:"Chaff Launchers",blueprints:["Misc_ChaffCapacity","Misc_LightWeight","Misc_Reinforced","Misc_Shielded"],experimentals:[]},ecms:{name:"ECMs",blueprints:["Misc_LightWeight","Misc_Reinforced","Misc_Shielded"],experimentals:[]},heatSinkLaunchers:{name:"Heat Sink Launchers",blueprints:["Misc_HeatSinkCapacity","Misc_LightWeight","Misc_Reinforced","Misc_Shielded"],experimentals:[]},killWarrantScanners:{name:"Kill Warrant Scanners",blueprints:["Misc_LightWeight","Misc_Reinforced","Misc_Shielded","Scanner_LongRange","Scanner_WideAngle","Sensor_FastScan"],experimentals:[]},manifestScanners:{name:"Manifest Scanners",blueprints:["Misc_LightWeight","Misc_Reinforced","Misc_Shielded","Scanner_LongRange","Scanner_WideAngle","Sensor_FastScan"],experimentals:[]},pointDefence:{name:"Point Defence",blueprints:["Misc_LightWeight","Misc_PointDefenseCapacity","Misc_Reinforced","Misc_Shielded"],experimentals:[]},wakeScanners:{name:"Wake Scanners",blueprints:["Misc_LightWeight","Misc_Reinforced","Misc_Shielded","Scanner_LongRange","Scanner_WideAngle","Sensor_FastScan"],experimentals:[]},guardianGauss:{name:"Exp - Guardian Gauss",blueprints:["GuardianModule_Sturdy"],experimentals:[]},guardianPlasma:{name:"Exp - Guardian Plasma",blueprints:["GuardianModule_Sturdy"],experimentals:[]},guardianShard:{name:"Exp - Guardian Shard",blueprints:["GuardianModule_Sturdy"],experimentals:[]}},modules:{Int_Powerplant_Size2_Class1:"powerPlants",Int_Powerplant_Size2_Class2:"powerPlants",Int_Powerplant_Size2_Class3:"powerPlants",Int_Powerplant_Size2_Class4:"powerPlants",Int_Powerplant_Size2_Class5:"powerPlants",Int_Powerplant_Size3_Class1:"powerPlants",Int_Powerplant_Size3_Class2:"powerPlants",Int_Powerplant_Size3_Class3:"powerPlants",Int_Powerplant_Size3_Class4:"powerPlants",Int_Powerplant_Size3_Class5:"powerPlants",Int_Powerplant_Size4_Class1:"powerPlants",Int_Powerplant_Size4_Class2:"powerPlants",Int_Powerplant_Size4_Class3:"powerPlants",Int_Powerplant_Size4_Class4:"powerPlants",Int_Powerplant_Size4_Class5:"powerPlants",Int_Powerplant_Size5_Class1:"powerPlants",Int_Powerplant_Size5_Class2:"powerPlants",Int_Powerplant_Size5_Class3:"powerPlants",Int_Powerplant_Size5_Class4:"powerPlants",Int_Powerplant_Size5_Class5:"powerPlants",Int_Powerplant_Size6_Class1:"powerPlants",Int_Powerplant_Size6_Class2:"powerPlants",Int_Powerplant_Size6_Class3:"powerPlants",Int_Powerplant_Size6_Class4:"powerPlants",Int_Powerplant_Size6_Class5:"powerPlants",Int_Powerplant_Size7_Class1:"powerPlants",Int_Powerplant_Size7_Class2:"powerPlants",Int_Powerplant_Size7_Class3:"powerPlants",Int_Powerplant_Size7_Class4:"powerPlants",Int_Powerplant_Size7_Class5:"powerPlants",Int_Powerplant_Size8_Class1:"powerPlants",Int_Powerplant_Size8_Class2:"powerPlants",Int_Powerplant_Size8_Class3:"powerPlants",Int_Powerplant_Size8_Class4:"powerPlants",Int_Powerplant_Size8_Class5:"powerPlants",Int_PowerPlant_Size2_Class1_free:"powerPlants",Int_GuardianPowerplant_Size2:"guardianPowerPlants",Int_GuardianPowerplant_Size3:"guardianPowerPlants",Int_GuardianPowerplant_Size4:"guardianPowerPlants",Int_GuardianPowerplant_Size5:"guardianPowerPlants",Int_GuardianPowerplant_Size6:"guardianPowerPlants",Int_GuardianPowerplant_Size7:"guardianPowerPlants",Int_GuardianPowerplant_Size8:"guardianPowerPlants",Int_Engine_Size2_Class1:"thrusters",Int_Engine_Size2_Class2:"thrusters",Int_Engine_Size2_Class3:"thrusters",Int_Engine_Size2_Class4:"thrusters",Int_Engine_Size2_Class5:"thrusters",Int_Engine_Size3_Class1:"thrusters",Int_Engine_Size3_Class2:"thrusters",Int_Engine_Size3_Class3:"thrusters",Int_Engine_Size3_Class4:"thrusters",Int_Engine_Size3_Class5:"thrusters",Int_Engine_Size4_Class1:"thrusters",Int_Engine_Size4_Class2:"thrusters",Int_Engine_Size4_Class3:"thrusters",Int_Engine_Size4_Class4:"thrusters",Int_Engine_Size4_Class5:"thrusters",Int_Engine_Size5_Class1:"thrusters",Int_Engine_Size5_Class2:"thrusters",Int_Engine_Size5_Class3:"thrusters",Int_Engine_Size5_Class4:"thrusters",Int_Engine_Size5_Class5:"thrusters",Int_Engine_Size6_Class1:"thrusters",Int_Engine_Size6_Class2:"thrusters",Int_Engine_Size6_Class3:"thrusters",Int_Engine_Size6_Class4:"thrusters",Int_Engine_Size6_Class5:"thrusters",Int_Engine_Size7_Class1:"thrusters",Int_Engine_Size7_Class2:"thrusters",Int_Engine_Size7_Class3:"thrusters",Int_Engine_Size7_Class4:"thrusters",Int_Engine_Size7_Class5:"thrusters",Int_Engine_Size8_Class1:"thrusters",Int_Engine_Size8_Class2:"thrusters",Int_Engine_Size8_Class3:"thrusters",Int_Engine_Size8_Class4:"thrusters",Int_Engine_Size8_Class5:"thrusters",Int_Engine_Size2_Class1_free:"thrusters",Int_Engine_Size3_Class5_Fast:"thrusters",Int_Engine_Size2_Class5_Fast:"thrusters",Int_Engine_Size7_Class5_GravityOptimised_MkII:"thrusters",Int_MkIIAgileBoost_Engine_Size5_Class5:"thrusters",Int_Hyperdrive_Size2_Class1:"frameShiftDrives",Int_Hyperdrive_Size2_Class2:"frameShiftDrives",Int_Hyperdrive_Size2_Class3:"frameShiftDrives",Int_Hyperdrive_Size2_Class4:"frameShiftDrives",Int_Hyperdrive_Size2_Class5:"frameShiftDrives",Int_Hyperdrive_Size3_Class1:"frameShiftDrives",Int_Hyperdrive_Size3_Class2:"frameShiftDrives",Int_Hyperdrive_Size3_Class3:"frameShiftDrives",Int_Hyperdrive_Size3_Class4:"frameShiftDrives",Int_Hyperdrive_Size3_Class5:"frameShiftDrives",Int_Hyperdrive_Size4_Class1:"frameShiftDrives",Int_Hyperdrive_Size4_Class2:"frameShiftDrives",Int_Hyperdrive_Size4_Class3:"frameShiftDrives",Int_Hyperdrive_Size4_Class4:"frameShiftDrives",Int_Hyperdrive_Size4_Class5:"frameShiftDrives",Int_Hyperdrive_Size5_Class1:"frameShiftDrives",Int_Hyperdrive_Size5_Class2:"frameShiftDrives",Int_Hyperdrive_Size5_Class3:"frameShiftDrives",Int_Hyperdrive_Size5_Class4:"frameShiftDrives",Int_Hyperdrive_Size5_Class5:"frameShiftDrives",Int_Hyperdrive_Size6_Class1:"frameShiftDrives",Int_Hyperdrive_Size6_Class2:"frameShiftDrives",Int_Hyperdrive_Size6_Class3:"frameShiftDrives",Int_Hyperdrive_Size6_Class4:"frameShiftDrives",Int_Hyperdrive_Size6_Class5:"frameShiftDrives",Int_Hyperdrive_Size7_Class1:"frameShiftDrives",Int_Hyperdrive_Size7_Class2:"frameShiftDrives",Int_Hyperdrive_Size7_Class3:"frameShiftDrives",Int_Hyperdrive_Size7_Class4:"frameShiftDrives",Int_Hyperdrive_Size7_Class5:"frameShiftDrives",Int_Hyperdrive_Size8_Class1:"frameShiftDrives",Int_Hyperdrive_Size8_Class2:"frameShiftDrives",Int_Hyperdrive_Size8_Class3:"frameShiftDrives",Int_Hyperdrive_Size8_Class4:"frameShiftDrives",Int_Hyperdrive_Size8_Class5:"frameShiftDrives",Int_Hyperdrive_Size2_Class1_free:"frameShiftDrives",Int_PowerDistributor_Size1_Class1:"powerDistributors",Int_PowerDistributor_Size1_Class2:"powerDistributors",Int_PowerDistributor_Size1_Class3:"powerDistributors",Int_PowerDistributor_Size1_Class4:"powerDistributors",Int_PowerDistributor_Size1_Class5:"powerDistributors",Int_PowerDistributor_Size2_Class1:"powerDistributors",Int_PowerDistributor_Size2_Class2:"powerDistributors",Int_PowerDistributor_Size2_Class3:"powerDistributors",Int_PowerDistributor_Size2_Class4:"powerDistributors",Int_PowerDistributor_Size2_Class5:"powerDistributors",Int_PowerDistributor_Size3_Class1:"powerDistributors",Int_PowerDistributor_Size3_Class2:"powerDistributors",Int_PowerDistributor_Size3_Class3:"powerDistributors",Int_PowerDistributor_Size3_Class4:"powerDistributors",Int_PowerDistributor_Size3_Class5:"powerDistributors",Int_PowerDistributor_Size4_Class1:"powerDistributors",Int_PowerDistributor_Size4_Class2:"powerDistributors",Int_PowerDistributor_Size4_Class3:"powerDistributors",Int_PowerDistributor_Size4_Class4:"powerDistributors",Int_PowerDistributor_Size4_Class5:"powerDistributors",Int_PowerDistributor_Size5_Class1:"powerDistributors",Int_PowerDistributor_Size5_Class2:"powerDistributors",Int_PowerDistributor_Size5_Class3:"powerDistributors",Int_PowerDistributor_Size5_Class4:"powerDistributors",Int_PowerDistributor_Size5_Class5:"powerDistributors",Int_PowerDistributor_Size6_Class1:"powerDistributors",Int_PowerDistributor_Size6_Class2:"powerDistributors",Int_PowerDistributor_Size6_Class3:"powerDistributors",Int_PowerDistributor_Size6_Class4:"powerDistributors",Int_PowerDistributor_Size6_Class5:"powerDistributors",Int_PowerDistributor_Size7_Class1:"powerDistributors",Int_PowerDistributor_Size7_Class2:"powerDistributors",Int_PowerDistributor_Size7_Class3:"powerDistributors",Int_PowerDistributor_Size7_Class4:"powerDistributors",Int_PowerDistributor_Size7_Class5:"powerDistributors",Int_PowerDistributor_Size8_Class1:"powerDistributors",Int_PowerDistributor_Size8_Class2:"powerDistributors",Int_PowerDistributor_Size8_Class3:"powerDistributors",Int_PowerDistributor_Size8_Class4:"powerDistributors",Int_PowerDistributor_Size8_Class5:"powerDistributors",Int_PowerDistributor_Size1_Class1_free:"powerDistributors",Int_GuardianPowerDistributor_Size1:"guardianPowerDistributors",Int_GuardianPowerDistributor_Size2:"guardianPowerDistributors",Int_GuardianPowerDistributor_Size3:"guardianPowerDistributors",Int_GuardianPowerDistributor_Size4:"guardianPowerDistributors",Int_GuardianPowerDistributor_Size5:"guardianPowerDistributors",Int_GuardianPowerDistributor_Size6:"guardianPowerDistributors",Int_GuardianPowerDistributor_Size7:"guardianPowerDistributors",Int_GuardianPowerDistributor_Size8:"guardianPowerDistributors",Int_Hyperdrive_Overcharge_Size5_Class3:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size7_Class3:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size6_Class3:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size4_Class3:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size3_Class3:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size2_Class3:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size2_Class1:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size2_Class2:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size2_Class4:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size2_Class5:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size3_Class1:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size3_Class2:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size3_Class4:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size3_Class5:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size4_Class1:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size4_Class2:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size4_Class4:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size4_Class5:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size5_Class1:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size5_Class2:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size5_Class4:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size5_Class5:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size6_Class1:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size6_Class2:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size6_Class4:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size6_Class5:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size7_Class1:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size7_Class2:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size7_Class4:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size7_Class5:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size8_Class1:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size8_Class2:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size8_Class3:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size8_Class4:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size8_Class5:"frameShiftDrivesSCO",Int_Hyperdrive_Overcharge_Size8_Class5_OverchargeBooster_MkII:"frameShiftDrivesSCO",Int_ShieldGenerator_Size1_Class1:"shieldGenerators",Int_ShieldGenerator_Size1_Class2:"shieldGenerators",Int_ShieldGenerator_Size1_Class3:"shieldGenerators",Int_ShieldGenerator_Size1_Class4:"shieldGenerators",Int_ShieldGenerator_Size1_Class5:"shieldGenerators",Int_ShieldGenerator_Size2_Class1:"shieldGenerators",Int_ShieldGenerator_Size2_Class2:"shieldGenerators",Int_ShieldGenerator_Size2_Class3:"shieldGenerators",Int_ShieldGenerator_Size2_Class4:"shieldGenerators",Int_ShieldGenerator_Size2_Class5:"shieldGenerators",Int_ShieldGenerator_Size3_Class1:"shieldGenerators",Int_ShieldGenerator_Size3_Class2:"shieldGenerators",Int_ShieldGenerator_Size3_Class3:"shieldGenerators",Int_ShieldGenerator_Size3_Class4:"shieldGenerators",Int_ShieldGenerator_Size3_Class5:"shieldGenerators",Int_ShieldGenerator_Size4_Class1:"shieldGenerators",Int_ShieldGenerator_Size4_Class2:"shieldGenerators",Int_ShieldGenerator_Size4_Class3:"shieldGenerators",Int_ShieldGenerator_Size4_Class4:"shieldGenerators",Int_ShieldGenerator_Size4_Class5:"shieldGenerators",Int_ShieldGenerator_Size5_Class1:"shieldGenerators",Int_ShieldGenerator_Size5_Class2:"shieldGenerators",Int_ShieldGenerator_Size5_Class3:"shieldGenerators",Int_ShieldGenerator_Size5_Class4:"shieldGenerators",Int_ShieldGenerator_Size5_Class5:"shieldGenerators",Int_ShieldGenerator_Size6_Class1:"shieldGenerators",Int_ShieldGenerator_Size6_Class2:"shieldGenerators",Int_ShieldGenerator_Size6_Class3:"shieldGenerators",Int_ShieldGenerator_Size6_Class4:"shieldGenerators",Int_ShieldGenerator_Size6_Class5:"shieldGenerators",Int_ShieldGenerator_Size7_Class1:"shieldGenerators",Int_ShieldGenerator_Size7_Class2:"shieldGenerators",Int_ShieldGenerator_Size7_Class3:"shieldGenerators",Int_ShieldGenerator_Size7_Class4:"shieldGenerators",Int_ShieldGenerator_Size7_Class5:"shieldGenerators",Int_ShieldGenerator_Size8_Class1:"shieldGenerators",Int_ShieldGenerator_Size8_Class2:"shieldGenerators",Int_ShieldGenerator_Size8_Class3:"shieldGenerators",Int_ShieldGenerator_Size8_Class4:"shieldGenerators",Int_ShieldGenerator_Size8_Class5:"shieldGenerators",Int_ShieldGenerator_Size2_Class1_free:"shieldGenerators",Int_ShieldGenerator_Size1_Class5_Strong:"shieldGenerators",Int_ShieldGenerator_Size2_Class5_Strong:"shieldGenerators",Int_ShieldGenerator_Size3_Class5_Strong:"shieldGenerators",Int_ShieldGenerator_Size4_Class5_Strong:"shieldGenerators",Int_ShieldGenerator_Size5_Class5_Strong:"shieldGenerators",Int_ShieldGenerator_Size6_Class5_Strong:"shieldGenerators",Int_ShieldGenerator_Size7_Class5_Strong:"shieldGenerators",Int_ShieldGenerator_Size8_Class5_Strong:"shieldGenerators",Int_ShieldGenerator_Size1_Class3_Fast:"shieldGenerators",Int_ShieldGenerator_Size2_Class3_Fast:"shieldGenerators",Int_ShieldGenerator_Size3_Class3_Fast:"shieldGenerators",Int_ShieldGenerator_Size4_Class3_Fast:"shieldGenerators",Int_ShieldGenerator_Size5_Class3_Fast:"shieldGenerators",Int_ShieldGenerator_Size6_Class3_Fast:"shieldGenerators",Int_ShieldGenerator_Size7_Class3_Fast:"shieldGenerators",Int_ShieldGenerator_Size8_Class3_Fast:"shieldGenerators",Int_ShieldCellBank_Size1_Class1:"shieldCellBanks",Int_ShieldCellBank_Size1_Class2:"shieldCellBanks",Int_ShieldCellBank_Size1_Class3:"shieldCellBanks",Int_ShieldCellBank_Size1_Class4:"shieldCellBanks",Int_ShieldCellBank_Size1_Class5:"shieldCellBanks",Int_ShieldCellBank_Size2_Class1:"shieldCellBanks",Int_ShieldCellBank_Size2_Class2:"shieldCellBanks",Int_ShieldCellBank_Size2_Class3:"shieldCellBanks",Int_ShieldCellBank_Size2_Class4:"shieldCellBanks",Int_ShieldCellBank_Size2_Class5:"shieldCellBanks",Int_ShieldCellBank_Size3_Class1:"shieldCellBanks",Int_ShieldCellBank_Size3_Class2:"shieldCellBanks",Int_ShieldCellBank_Size3_Class3:"shieldCellBanks",Int_ShieldCellBank_Size3_Class4:"shieldCellBanks",Int_ShieldCellBank_Size3_Class5:"shieldCellBanks",Int_ShieldCellBank_Size4_Class1:"shieldCellBanks",Int_ShieldCellBank_Size4_Class2:"shieldCellBanks",Int_ShieldCellBank_Size4_Class3:"shieldCellBanks",Int_ShieldCellBank_Size4_Class4:"shieldCellBanks",Int_ShieldCellBank_Size4_Class5:"shieldCellBanks",Int_ShieldCellBank_Size5_Class1:"shieldCellBanks",Int_ShieldCellBank_Size5_Class2:"shieldCellBanks",Int_ShieldCellBank_Size5_Class3:"shieldCellBanks",Int_ShieldCellBank_Size5_Class4:"shieldCellBanks",Int_ShieldCellBank_Size5_Class5:"shieldCellBanks",Int_ShieldCellBank_Size6_Class1:"shieldCellBanks",Int_ShieldCellBank_Size6_Class2:"shieldCellBanks",Int_ShieldCellBank_Size6_Class3:"shieldCellBanks",Int_ShieldCellBank_Size6_Class4:"shieldCellBanks",Int_ShieldCellBank_Size6_Class5:"shieldCellBanks",Int_ShieldCellBank_Size7_Class1:"shieldCellBanks",Int_ShieldCellBank_Size7_Class2:"shieldCellBanks",Int_ShieldCellBank_Size7_Class3:"shieldCellBanks",Int_ShieldCellBank_Size7_Class4:"shieldCellBanks",Int_ShieldCellBank_Size7_Class5:"shieldCellBanks",Int_ShieldCellBank_Size8_Class1:"shieldCellBanks",Int_ShieldCellBank_Size8_Class2:"shieldCellBanks",Int_ShieldCellBank_Size8_Class3:"shieldCellBanks",Int_ShieldCellBank_Size8_Class4:"shieldCellBanks",Int_ShieldCellBank_Size8_Class5:"shieldCellBanks",Int_HullReinforcement_Size1_Class1:"hullReinforcements",Int_HullReinforcement_Size1_Class2:"hullReinforcements",Int_HullReinforcement_Size2_Class1:"hullReinforcements",Int_HullReinforcement_Size2_Class2:"hullReinforcements",Int_HullReinforcement_Size3_Class1:"hullReinforcements",Int_HullReinforcement_Size3_Class2:"hullReinforcements",Int_HullReinforcement_Size4_Class1:"hullReinforcements",Int_HullReinforcement_Size4_Class2:"hullReinforcements",Int_HullReinforcement_Size5_Class1:"hullReinforcements",Int_HullReinforcement_Size5_Class2:"hullReinforcements",Int_GuardianHullReinforcement_Size1_Class1:"guardianHullReinforcements",Int_GuardianHullReinforcement_Size1_Class2:"guardianHullReinforcements",Int_GuardianHullReinforcement_Size2_Class1:"guardianHullReinforcements",Int_GuardianHullReinforcement_Size2_Class2:"guardianHullReinforcements",Int_GuardianHullReinforcement_Size3_Class1:"guardianHullReinforcements",Int_GuardianHullReinforcement_Size3_Class2:"guardianHullReinforcements",Int_GuardianHullReinforcement_Size4_Class1:"guardianHullReinforcements",Int_GuardianHullReinforcement_Size4_Class2:"guardianHullReinforcements",Int_GuardianHullReinforcement_Size5_Class1:"guardianHullReinforcements",Int_GuardianHullReinforcement_Size5_Class2:"guardianHullReinforcements",Hpt_PulseLaser_Fixed_Small:"pulseLasers",Hpt_PulseLaser_Fixed_Medium:"pulseLasers",Hpt_PulseLaser_Fixed_Large:"pulseLasers",Hpt_PulseLaser_Fixed_Huge:"pulseLasers",Hpt_PulseLaser_Gimbal_Small:"pulseLasers",Hpt_PulseLaser_Gimbal_Medium:"pulseLasers",Hpt_PulseLaser_Gimbal_Large:"pulseLasers",Hpt_PulseLaser_Turret_Small:"pulseLasers",Hpt_PulseLaser_Turret_Medium:"pulseLasers",Hpt_PulseLaser_Turret_Large:"pulseLasers",Hpt_PulseLaser_Fixed_Medium_Disruptor:"pulseLasers",Hpt_PulseLaser_Gimbal_Huge:"pulseLasers",Hpt_PulseLaserBurst_Fixed_Small:"burstLasers",Hpt_PulseLaserBurst_Fixed_Medium:"burstLasers",Hpt_PulseLaserBurst_Fixed_Large:"burstLasers",Hpt_PulseLaserBurst_Fixed_Huge:"burstLasers",Hpt_PulseLaserBurst_Gimbal_Small:"burstLasers",Hpt_PulseLaserBurst_Gimbal_Medium:"burstLasers",Hpt_PulseLaserBurst_Gimbal_Large:"burstLasers",Hpt_PulseLaserBurst_Turret_Small:"burstLasers",Hpt_PulseLaserBurst_Turret_Medium:"burstLasers",Hpt_PulseLaserBurst_Turret_Large:"burstLasers",Hpt_PulseLaserBurst_Fixed_Small_Scatter:"burstLasers",Hpt_PulseLaserBurst_Gimbal_Huge:"burstLasers",Hpt_BeamLaser_Fixed_Small:"beamLasers",Hpt_BeamLaser_Fixed_Medium:"beamLasers",Hpt_BeamLaser_Fixed_Large:"beamLasers",Hpt_BeamLaser_Fixed_Huge:"beamLasers",Hpt_BeamLaser_Gimbal_Small:"beamLasers",Hpt_BeamLaser_Gimbal_Medium:"beamLasers",Hpt_BeamLaser_Gimbal_Large:"beamLasers",Hpt_BeamLaser_Turret_Small:"beamLasers",Hpt_BeamLaser_Turret_Medium:"beamLasers",Hpt_BeamLaser_Turret_Large:"beamLasers",Hpt_BeamLaser_Fixed_Small_Heat:"beamLasers",Hpt_BeamLaser_Gimbal_Huge:"beamLasers",Hpt_Cannon_Fixed_Small:"cannons",Hpt_Cannon_Fixed_Medium:"cannons",Hpt_Cannon_Fixed_Large:"cannons",Hpt_Cannon_Fixed_Huge:"cannons",Hpt_Cannon_Gimbal_Small:"cannons",Hpt_Cannon_Gimbal_Medium:"cannons",Hpt_Cannon_Gimbal_Huge:"cannons",Hpt_Cannon_Turret_Small:"cannons",Hpt_Cannon_Turret_Medium:"cannons",Hpt_Cannon_Turret_Large:"cannons",Hpt_Cannon_Gimbal_Large:"cannons",Hpt_Cannon_Gimbal_Medium_Burst:"cannons",Hpt_Slugshot_Fixed_Small:"fragmentCannons",Hpt_Slugshot_Fixed_Medium:"fragmentCannons",Hpt_Slugshot_Fixed_Large:"fragmentCannons",Hpt_Slugshot_Gimbal_Small:"fragmentCannons",Hpt_Slugshot_Gimbal_Medium:"fragmentCannons",Hpt_Slugshot_Turret_Small:"fragmentCannons",Hpt_Slugshot_Turret_Medium:"fragmentCannons",Hpt_Slugshot_Gimbal_Large:"fragmentCannons",Hpt_Slugshot_Turret_Large:"fragmentCannons",Hpt_Slugshot_Fixed_Large_Range:"fragmentCannons",Hpt_MultiCannon_Fixed_Small:"multiCannons",Hpt_MultiCannon_Fixed_Medium:"multiCannons",Hpt_MultiCannon_Fixed_Large:"multiCannons",Hpt_MultiCannon_Fixed_Huge:"multiCannons",Hpt_MultiCannon_Gimbal_Small:"multiCannons",Hpt_MultiCannon_Gimbal_Medium:"multiCannons",Hpt_MultiCannon_Gimbal_Large:"multiCannons",Hpt_MultiCannon_Turret_Small:"multiCannons",Hpt_MultiCannon_Turret_Medium:"multiCannons",Hpt_MultiCannon_Turret_Large:"multiCannons",Hpt_MultiCannon_Fixed_Small_Strong:"multiCannons",Hpt_MultiCannon_Gimbal_Huge:"multiCannons",Hpt_MultiCannon_Fixed_Medium_Advanced:"multiCannons",Hpt_MultiCannon_Fixed_Small_Advanced:"multiCannons",Hpt_PlasmaAccelerator_Fixed_Medium:"plasmaAccelerators",Hpt_PlasmaAccelerator_Fixed_Large:"plasmaAccelerators",Hpt_PlasmaAccelerator_Fixed_Huge:"plasmaAccelerators",Hpt_PlasmaAccelerator_Fixed_Large_Advanced:"plasmaAccelerators",Hpt_Railgun_Fixed_Small:"railGuns",Hpt_Railgun_Fixed_Medium:"railGuns",Hpt_Railgun_Fixed_Medium_Burst:"railGuns",Hpt_BasicMissileRack_Fixed_Small:"missiles",Hpt_BasicMissileRack_Fixed_Medium:"missiles",Hpt_BasicMissileRack_Fixed_Large:"missiles",Hpt_DumbfireMissileRack_Fixed_Small:"missiles",Hpt_DumbfireMissileRack_Fixed_Medium:"missiles",Hpt_DrunkMissileRack_Fixed_Medium:"missiles",Hpt_DumbfireMissileRack_Fixed_Medium_Lasso:"missiles",Hpt_DumbfireMissileRack_Fixed_Large:"missiles",Hpt_DumbfireMissileRack_Fixed_Small_Advanced:"missiles",Hpt_DumbfireMissileRack_Fixed_Medium_Advanced:"missiles",Hpt_MineLauncher_Fixed_Small:"mines",Hpt_MineLauncher_Fixed_Medium:"mines",Hpt_MineLauncher_Fixed_Small_Impulse:"mines",Hpt_AdvancedTorpPylon_Fixed_Small:"torpedoes",Hpt_AdvancedTorpPylon_Fixed_Medium:"torpedoes",Hpt_AdvancedTorpPylon_Fixed_Large:"torpedoes",Hpt_ShieldBooster_Size0_Class1:"shieldBoosters",Hpt_ShieldBooster_Size0_Class2:"shieldBoosters",Hpt_ShieldBooster_Size0_Class3:"shieldBoosters",Hpt_ShieldBooster_Size0_Class4:"shieldBoosters",Hpt_ShieldBooster_Size0_Class5:"shieldBoosters",SideWinder_Armour_Grade1:"bulkheads",SideWinder_Armour_Grade2:"bulkheads",SideWinder_Armour_Grade3:"bulkheads",SideWinder_Armour_Mirrored:"bulkheads",SideWinder_Armour_Reactive:"bulkheads",Eagle_Armour_Grade1:"bulkheads",Eagle_Armour_Grade2:"bulkheads",Eagle_Armour_Grade3:"bulkheads",Eagle_Armour_Mirrored:"bulkheads",Eagle_Armour_Reactive:"bulkheads",Hauler_Armour_Grade1:"bulkheads",Hauler_Armour_Grade2:"bulkheads",Hauler_Armour_Grade3:"bulkheads",Hauler_Armour_Mirrored:"bulkheads",Hauler_Armour_Reactive:"bulkheads",Adder_Armour_Grade1:"bulkheads",Adder_Armour_Grade2:"bulkheads",Adder_Armour_Grade3:"bulkheads",Adder_Armour_Mirrored:"bulkheads",Adder_Armour_Reactive:"bulkheads",Viper_Armour_Grade1:"bulkheads",Viper_Armour_Grade2:"bulkheads",Viper_Armour_Grade3:"bulkheads",Viper_Armour_Mirrored:"bulkheads",Viper_Armour_Reactive:"bulkheads",CobraMkIII_Armour_Grade1:"bulkheads",CobraMkIII_Armour_Grade2:"bulkheads",CobraMkIII_Armour_Grade3:"bulkheads",CobraMkIII_Armour_Mirrored:"bulkheads",CobraMkIII_Armour_Reactive:"bulkheads",Type6_Armour_Grade1:"bulkheads",Type6_Armour_Grade2:"bulkheads",Type6_Armour_Grade3:"bulkheads",Type6_Armour_Mirrored:"bulkheads",Type6_Armour_Reactive:"bulkheads",Dolphin_Armour_Grade1:"bulkheads",Dolphin_Armour_Grade2:"bulkheads",Dolphin_Armour_Grade3:"bulkheads",Dolphin_Armour_Mirrored:"bulkheads",Dolphin_Armour_Reactive:"bulkheads",Type7_Armour_Grade1:"bulkheads",Type7_Armour_Grade2:"bulkheads",Type7_Armour_Grade3:"bulkheads",Type7_Armour_Mirrored:"bulkheads",Type7_Armour_Reactive:"bulkheads",Asp_Armour_Grade1:"bulkheads",Asp_Armour_Grade2:"bulkheads",Asp_Armour_Grade3:"bulkheads",Asp_Armour_Mirrored:"bulkheads",Asp_Armour_Reactive:"bulkheads",Vulture_Armour_Grade1:"bulkheads",Vulture_Armour_Grade2:"bulkheads",Vulture_Armour_Grade3:"bulkheads",Vulture_Armour_Mirrored:"bulkheads",Vulture_Armour_Reactive:"bulkheads",Empire_Trader_Armour_Grade1:"bulkheads",Empire_Trader_Armour_Grade2:"bulkheads",Empire_Trader_Armour_Grade3:"bulkheads",Empire_Trader_Armour_Mirrored:"bulkheads",Empire_Trader_Armour_Reactive:"bulkheads",Federation_Dropship_Armour_Grade1:"bulkheads",Federation_Dropship_Armour_Grade2:"bulkheads",Federation_Dropship_Armour_Grade3:"bulkheads",Federation_Dropship_Armour_Mirrored:"bulkheads",Federation_Dropship_Armour_Reactive:"bulkheads",Orca_Armour_Grade1:"bulkheads",Orca_Armour_Grade2:"bulkheads",Orca_Armour_Grade3:"bulkheads",Orca_Armour_Mirrored:"bulkheads",Orca_Armour_Reactive:"bulkheads",Type9_Armour_Grade1:"bulkheads",Type9_Armour_Grade2:"bulkheads",Type9_Armour_Grade3:"bulkheads",Type9_Armour_Mirrored:"bulkheads",Type9_Armour_Reactive:"bulkheads",Python_Armour_Grade1:"bulkheads",Python_Armour_Grade2:"bulkheads",Python_Armour_Grade3:"bulkheads",Python_Armour_Mirrored:"bulkheads",Python_Armour_Reactive:"bulkheads",BelugaLiner_Armour_Grade1:"bulkheads",BelugaLiner_Armour_Grade2:"bulkheads",BelugaLiner_Armour_Grade3:"bulkheads",BelugaLiner_Armour_Mirrored:"bulkheads",BelugaLiner_Armour_Reactive:"bulkheads",FerDeLance_Armour_Grade1:"bulkheads",FerDeLance_Armour_Grade2:"bulkheads",FerDeLance_Armour_Grade3:"bulkheads",FerDeLance_Armour_Mirrored:"bulkheads",FerDeLance_Armour_Reactive:"bulkheads",Anaconda_Armour_Grade1:"bulkheads",Anaconda_Armour_Grade2:"bulkheads",Anaconda_Armour_Grade3:"bulkheads",Anaconda_Armour_Mirrored:"bulkheads",Anaconda_Armour_Reactive:"bulkheads",Federation_Corvette_Armour_Grade1:"bulkheads",Federation_Corvette_Armour_Grade2:"bulkheads",Federation_Corvette_Armour_Grade3:"bulkheads",Federation_Corvette_Armour_Mirrored:"bulkheads",Federation_Corvette_Armour_Reactive:"bulkheads",Cutter_Armour_Grade1:"bulkheads",Cutter_Armour_Grade2:"bulkheads",Cutter_Armour_Grade3:"bulkheads",Cutter_Armour_Mirrored:"bulkheads",Cutter_Armour_Reactive:"bulkheads",DiamondBack_Armour_Grade1:"bulkheads",DiamondBack_Armour_Grade2:"bulkheads",DiamondBack_Armour_Grade3:"bulkheads",DiamondBack_Armour_Mirrored:"bulkheads",DiamondBack_Armour_Reactive:"bulkheads",Empire_Courier_Armour_Grade1:"bulkheads",Empire_Courier_Armour_Grade2:"bulkheads",Empire_Courier_Armour_Grade3:"bulkheads",Empire_Courier_Armour_Mirrored:"bulkheads",Empire_Courier_Armour_Reactive:"bulkheads",DiamondBackXL_Armour_Grade1:"bulkheads",DiamondBackXL_Armour_Grade2:"bulkheads",DiamondBackXL_Armour_Grade3:"bulkheads",DiamondBackXL_Armour_Mirrored:"bulkheads",DiamondBackXL_Armour_Reactive:"bulkheads",Empire_Eagle_Armour_Grade1:"bulkheads",Empire_Eagle_Armour_Grade2:"bulkheads",Empire_Eagle_Armour_Grade3:"bulkheads",Empire_Eagle_Armour_Mirrored:"bulkheads",Empire_Eagle_Armour_Reactive:"bulkheads",Federation_Dropship_MkII_Armour_Grade1:"bulkheads",Federation_Dropship_MkII_Armour_Grade2:"bulkheads",Federation_Dropship_MkII_Armour_Grade3:"bulkheads",Federation_Dropship_MkII_Armour_Mirrored:"bulkheads",Federation_Dropship_MkII_Armour_Reactive:"bulkheads",Federation_Gunship_Armour_Grade1:"bulkheads",Federation_Gunship_Armour_Grade2:"bulkheads",Federation_Gunship_Armour_Grade3:"bulkheads",Federation_Gunship_Armour_Mirrored:"bulkheads",Federation_Gunship_Armour_Reactive:"bulkheads",Viper_MkIV_Armour_Grade1:"bulkheads",Viper_MkIV_Armour_Grade2:"bulkheads",Viper_MkIV_Armour_Grade3:"bulkheads",Viper_MkIV_Armour_Mirrored:"bulkheads",Viper_MkIV_Armour_Reactive:"bulkheads",CobraMkIV_Armour_Grade1:"bulkheads",CobraMkIV_Armour_Grade2:"bulkheads",CobraMkIV_Armour_Grade3:"bulkheads",CobraMkIV_Armour_Mirrored:"bulkheads",CobraMkIV_Armour_Reactive:"bulkheads",Independant_Trader_Armour_Grade1:"bulkheads",Independant_Trader_Armour_Grade2:"bulkheads",Independant_Trader_Armour_Grade3:"bulkheads",Independant_Trader_Armour_Mirrored:"bulkheads",Independant_Trader_Armour_Reactive:"bulkheads",Asp_Scout_Armour_Grade1:"bulkheads",Asp_Scout_Armour_Grade2:"bulkheads",Asp_Scout_Armour_Grade3:"bulkheads",Asp_Scout_Armour_Mirrored:"bulkheads",Asp_Scout_Armour_Reactive:"bulkheads",Type9_Military_Armour_Grade1:"bulkheads",Type9_Military_Armour_Grade2:"bulkheads",Type9_Military_Armour_Grade3:"bulkheads",Type9_Military_Armour_Mirrored:"bulkheads",Type9_Military_Armour_Reactive:"bulkheads",Krait_MkII_Armour_Grade1:"bulkheads",Krait_MkII_Armour_Grade2:"bulkheads",Krait_MkII_Armour_Grade3:"bulkheads",Krait_MkII_Armour_Mirrored:"bulkheads",Krait_MkII_Armour_Reactive:"bulkheads",TypeX_Armour_Grade1:"bulkheads",TypeX_Armour_Grade2:"bulkheads",TypeX_Armour_Grade3:"bulkheads",TypeX_Armour_Mirrored:"bulkheads",TypeX_Armour_Reactive:"bulkheads",TypeX_2_Armour_Grade1:"bulkheads",TypeX_2_Armour_Grade2:"bulkheads",TypeX_2_Armour_Grade3:"bulkheads",TypeX_2_Armour_Mirrored:"bulkheads",TypeX_2_Armour_Reactive:"bulkheads",TypeX_3_Armour_Grade1:"bulkheads",TypeX_3_Armour_Grade2:"bulkheads",TypeX_3_Armour_Grade3:"bulkheads",TypeX_3_Armour_Mirrored:"bulkheads",TypeX_3_Armour_Reactive:"bulkheads",Krait_Light_Armour_Grade1:"bulkheads",Krait_Light_Armour_Grade2:"bulkheads",Krait_Light_Armour_Grade3:"bulkheads",Krait_Light_Armour_Mirrored:"bulkheads",Krait_Light_Armour_Reactive:"bulkheads",Mamba_Armour_Grade1:"bulkheads",Mamba_Armour_Grade2:"bulkheads",Mamba_Armour_Grade3:"bulkheads",Mamba_Armour_Mirrored:"bulkheads",Mamba_Armour_Reactive:"bulkheads",Python_NX_Armour_Grade1:"bulkheads",Python_NX_Armour_Grade2:"bulkheads",Python_NX_Armour_Grade3:"bulkheads",Python_NX_Armour_Mirrored:"bulkheads",Python_NX_Armour_Reactive:"bulkheads",Type8_Armour_Grade1:"bulkheads",Type8_Armour_Grade2:"bulkheads",Type8_Armour_Grade3:"bulkheads",Type8_Armour_Mirrored:"bulkheads",Type8_Armour_Reactive:"bulkheads",Mandalay_Armour_Grade1:"bulkheads",Mandalay_Armour_Grade2:"bulkheads",Mandalay_Armour_Grade3:"bulkheads",Mandalay_Armour_Mirrored:"bulkheads",Mandalay_Armour_Reactive:"bulkheads",CobraMkV_Armour_Grade1:"bulkheads",CobraMkV_Armour_Grade2:"bulkheads",CobraMkV_Armour_Grade3:"bulkheads",CobraMkV_Armour_Mirrored:"bulkheads",CobraMkV_Armour_Reactive:"bulkheads",Corsair_Armour_Grade1:"bulkheads",Corsair_Armour_Grade2:"bulkheads",Corsair_Armour_Grade3:"bulkheads",Corsair_Armour_Mirrored:"bulkheads",Corsair_Armour_Reactive:"bulkheads",PantherMkII_Armour_Grade1:"bulkheads",PantherMkII_Armour_Grade2:"bulkheads",PantherMkII_Armour_Grade3:"bulkheads",PantherMkII_Armour_Mirrored:"bulkheads",PantherMkII_Armour_Reactive:"bulkheads",LakonMiner_Armour_Grade1:"bulkheads",LakonMiner_Armour_Grade2:"bulkheads",LakonMiner_Armour_Grade3:"bulkheads",LakonMiner_Armour_Mirrored:"bulkheads",LakonMiner_Armour_Reactive:"bulkheads",Explorer_NX_Armour_Grade1:"bulkheads",Explorer_NX_Armour_Grade2:"bulkheads",Explorer_NX_Armour_Grade3:"bulkheads",Explorer_NX_Armour_Mirrored:"bulkheads",Explorer_NX_Armour_Reactive:"bulkheads",Explorer_NX_Armour_Grade1_Default:"bulkheads",SmallCombat01_NX_Armour_Grade1:"bulkheads",SmallCombat01_NX_Armour_Grade2:"bulkheads",SmallCombat01_NX_Armour_Grade3:"bulkheads",SmallCombat01_NX_Armour_Mirrored:"bulkheads",SmallCombat01_NX_Armour_Reactive:"bulkheads",MediumTransport01_Armour_Grade1:"bulkheads",MediumTransport01_Armour_Grade2:"bulkheads",MediumTransport01_Armour_Grade3:"bulkheads",MediumTransport01_Armour_Mirrored:"bulkheads",MediumTransport01_Armour_Reactive:"bulkheads",Int_LifeSupport_Size1_Class1:"lifeSupports",Int_LifeSupport_Size1_Class2:"lifeSupports",Int_LifeSupport_Size1_Class3:"lifeSupports",Int_LifeSupport_Size1_Class4:"lifeSupports",Int_LifeSupport_Size1_Class5:"lifeSupports",Int_LifeSupport_Size2_Class1:"lifeSupports",Int_LifeSupport_Size2_Class2:"lifeSupports",Int_LifeSupport_Size2_Class3:"lifeSupports",Int_LifeSupport_Size2_Class4:"lifeSupports",Int_LifeSupport_Size2_Class5:"lifeSupports",Int_LifeSupport_Size3_Class1:"lifeSupports",Int_LifeSupport_Size3_Class2:"lifeSupports",Int_LifeSupport_Size3_Class3:"lifeSupports",Int_LifeSupport_Size3_Class4:"lifeSupports",Int_LifeSupport_Size3_Class5:"lifeSupports",Int_LifeSupport_Size4_Class1:"lifeSupports",Int_LifeSupport_Size4_Class2:"lifeSupports",Int_LifeSupport_Size4_Class3:"lifeSupports",Int_LifeSupport_Size4_Class4:"lifeSupports",Int_LifeSupport_Size4_Class5:"lifeSupports",Int_LifeSupport_Size5_Class1:"lifeSupports",Int_LifeSupport_Size5_Class2:"lifeSupports",Int_LifeSupport_Size5_Class3:"lifeSupports",Int_LifeSupport_Size5_Class4:"lifeSupports",Int_LifeSupport_Size5_Class5:"lifeSupports",Int_LifeSupport_Size6_Class1:"lifeSupports",Int_LifeSupport_Size6_Class2:"lifeSupports",Int_LifeSupport_Size6_Class3:"lifeSupports",Int_LifeSupport_Size6_Class4:"lifeSupports",Int_LifeSupport_Size6_Class5:"lifeSupports",Int_LifeSupport_Size7_Class1:"lifeSupports",Int_LifeSupport_Size7_Class2:"lifeSupports",Int_LifeSupport_Size7_Class3:"lifeSupports",Int_LifeSupport_Size7_Class4:"lifeSupports",Int_LifeSupport_Size7_Class5:"lifeSupports",Int_LifeSupport_Size8_Class1:"lifeSupports",Int_LifeSupport_Size8_Class2:"lifeSupports",Int_LifeSupport_Size8_Class3:"lifeSupports",Int_LifeSupport_Size8_Class4:"lifeSupports",Int_LifeSupport_Size8_Class5:"lifeSupports",Int_LifeSupport_Size1_Class1_free:"lifeSupports",Int_Sensors_Size1_Class1:"sensors",Int_Sensors_Size1_Class2:"sensors",Int_Sensors_Size1_Class3:"sensors",Int_Sensors_Size1_Class4:"sensors",Int_Sensors_Size1_Class5:"sensors",Int_Sensors_Size2_Class1:"sensors",Int_Sensors_Size2_Class2:"sensors",Int_Sensors_Size2_Class3:"sensors",Int_Sensors_Size2_Class4:"sensors",Int_Sensors_Size2_Class5:"sensors",Int_Sensors_Size3_Class1:"sensors",Int_Sensors_Size3_Class2:"sensors",Int_Sensors_Size3_Class3:"sensors",Int_Sensors_Size3_Class4:"sensors",Int_Sensors_Size3_Class5:"sensors",Int_Sensors_Size4_Class1:"sensors",Int_Sensors_Size4_Class2:"sensors",Int_Sensors_Size4_Class3:"sensors",Int_Sensors_Size4_Class4:"sensors",Int_Sensors_Size4_Class5:"sensors",Int_Sensors_Size5_Class1:"sensors",Int_Sensors_Size5_Class2:"sensors",Int_Sensors_Size5_Class3:"sensors",Int_Sensors_Size5_Class4:"sensors",Int_Sensors_Size5_Class5:"sensors",Int_Sensors_Size6_Class1:"sensors",Int_Sensors_Size6_Class2:"sensors",Int_Sensors_Size6_Class3:"sensors",Int_Sensors_Size6_Class4:"sensors",Int_Sensors_Size6_Class5:"sensors",Int_Sensors_Size7_Class1:"sensors",Int_Sensors_Size7_Class2:"sensors",Int_Sensors_Size7_Class3:"sensors",Int_Sensors_Size7_Class4:"sensors",Int_Sensors_Size7_Class5:"sensors",Int_Sensors_Size8_Class1:"sensors",Int_Sensors_Size8_Class2:"sensors",Int_Sensors_Size8_Class3:"sensors",Int_Sensors_Size8_Class4:"sensors",Int_Sensors_Size8_Class5:"sensors",Int_Sensors_Size1_Class1_free:"sensors",Int_Repairer_Size1_Class1:"autoFieldMaintenanceUnits",Int_Repairer_Size2_Class1:"autoFieldMaintenanceUnits",Int_Repairer_Size3_Class1:"autoFieldMaintenanceUnits",Int_Repairer_Size4_Class1:"autoFieldMaintenanceUnits",Int_Repairer_Size5_Class1:"autoFieldMaintenanceUnits",Int_Repairer_Size6_Class1:"autoFieldMaintenanceUnits",Int_Repairer_Size7_Class1:"autoFieldMaintenanceUnits",Int_Repairer_Size8_Class1:"autoFieldMaintenanceUnits",Int_Repairer_Size1_Class2:"autoFieldMaintenanceUnits",Int_Repairer_Size2_Class2:"autoFieldMaintenanceUnits",Int_Repairer_Size3_Class2:"autoFieldMaintenanceUnits",Int_Repairer_Size4_Class2:"autoFieldMaintenanceUnits",Int_Repairer_Size5_Class2:"autoFieldMaintenanceUnits",Int_Repairer_Size6_Class2:"autoFieldMaintenanceUnits",Int_Repairer_Size7_Class2:"autoFieldMaintenanceUnits",Int_Repairer_Size8_Class2:"autoFieldMaintenanceUnits",Int_Repairer_Size1_Class3:"autoFieldMaintenanceUnits",Int_Repairer_Size2_Class3:"autoFieldMaintenanceUnits",Int_Repairer_Size3_Class3:"autoFieldMaintenanceUnits",Int_Repairer_Size4_Class3:"autoFieldMaintenanceUnits",Int_Repairer_Size5_Class3:"autoFieldMaintenanceUnits",Int_Repairer_Size6_Class3:"autoFieldMaintenanceUnits",Int_Repairer_Size7_Class3:"autoFieldMaintenanceUnits",Int_Repairer_Size8_Class3:"autoFieldMaintenanceUnits",Int_Repairer_Size1_Class4:"autoFieldMaintenanceUnits",Int_Repairer_Size2_Class4:"autoFieldMaintenanceUnits",Int_Repairer_Size3_Class4:"autoFieldMaintenanceUnits",Int_Repairer_Size4_Class4:"autoFieldMaintenanceUnits",Int_Repairer_Size5_Class4:"autoFieldMaintenanceUnits",Int_Repairer_Size6_Class4:"autoFieldMaintenanceUnits",Int_Repairer_Size7_Class4:"autoFieldMaintenanceUnits",Int_Repairer_Size8_Class4:"autoFieldMaintenanceUnits",Int_Repairer_Size1_Class5:"autoFieldMaintenanceUnits",Int_Repairer_Size2_Class5:"autoFieldMaintenanceUnits",Int_Repairer_Size3_Class5:"autoFieldMaintenanceUnits",Int_Repairer_Size4_Class5:"autoFieldMaintenanceUnits",Int_Repairer_Size5_Class5:"autoFieldMaintenanceUnits",Int_Repairer_Size6_Class5:"autoFieldMaintenanceUnits",Int_Repairer_Size7_Class5:"autoFieldMaintenanceUnits",Int_Repairer_Size8_Class5:"autoFieldMaintenanceUnits",Int_DroneControl_Collection_Size1_Class1:"collectionLimpets",Int_DroneControl_Collection_Size1_Class2:"collectionLimpets",Int_DroneControl_Collection_Size1_Class3:"collectionLimpets",Int_DroneControl_Collection_Size1_Class4:"collectionLimpets",Int_DroneControl_Collection_Size1_Class5:"collectionLimpets",Int_DroneControl_Collection_Size3_Class1:"collectionLimpets",Int_DroneControl_Collection_Size3_Class2:"collectionLimpets",Int_DroneControl_Collection_Size3_Class3:"collectionLimpets",Int_DroneControl_Collection_Size3_Class4:"collectionLimpets",Int_DroneControl_Collection_Size3_Class5:"collectionLimpets",Int_DroneControl_Collection_Size5_Class1:"collectionLimpets",Int_DroneControl_Collection_Size5_Class2:"collectionLimpets",Int_DroneControl_Collection_Size5_Class3:"collectionLimpets",Int_DroneControl_Collection_Size5_Class4:"collectionLimpets",Int_DroneControl_Collection_Size5_Class5:"collectionLimpets",Int_DroneControl_Collection_Size7_Class1:"collectionLimpets",Int_DroneControl_Collection_Size7_Class2:"collectionLimpets",Int_DroneControl_Collection_Size7_Class3:"collectionLimpets",Int_DroneControl_Collection_Size7_Class4:"collectionLimpets",Int_DroneControl_Collection_Size7_Class5:"collectionLimpets",Int_GuardianFSDBooster_Size1:"fsdBoosters",Int_GuardianFSDBooster_Size2:"fsdBoosters",Int_GuardianFSDBooster_Size3:"fsdBoosters",Int_GuardianFSDBooster_Size4:"fsdBoosters",Int_GuardianFSDBooster_Size5:"fsdBoosters",Int_FSDInterdictor_Size1_Class1:"fsdInterdictors",Int_FSDInterdictor_Size2_Class1:"fsdInterdictors",Int_FSDInterdictor_Size3_Class1:"fsdInterdictors",Int_FSDInterdictor_Size4_Class1:"fsdInterdictors",Int_FSDInterdictor_Size1_Class2:"fsdInterdictors",Int_FSDInterdictor_Size2_Class2:"fsdInterdictors",Int_FSDInterdictor_Size3_Class2:"fsdInterdictors",Int_FSDInterdictor_Size4_Class2:"fsdInterdictors",Int_FSDInterdictor_Size1_Class3:"fsdInterdictors",Int_FSDInterdictor_Size2_Class3:"fsdInterdictors",Int_FSDInterdictor_Size3_Class3:"fsdInterdictors",Int_FSDInterdictor_Size4_Class3:"fsdInterdictors",Int_FSDInterdictor_Size1_Class4:"fsdInterdictors",Int_FSDInterdictor_Size2_Class4:"fsdInterdictors",Int_FSDInterdictor_Size3_Class4:"fsdInterdictors",Int_FSDInterdictor_Size4_Class4:"fsdInterdictors",Int_FSDInterdictor_Size1_Class5:"fsdInterdictors",Int_FSDInterdictor_Size2_Class5:"fsdInterdictors",Int_FSDInterdictor_Size3_Class5:"fsdInterdictors",Int_FSDInterdictor_Size4_Class5:"fsdInterdictors",Int_FuelScoop_Size1_Class1:"fuelScoops",Int_FuelScoop_Size2_Class1:"fuelScoops",Int_FuelScoop_Size3_Class1:"fuelScoops",Int_FuelScoop_Size4_Class1:"fuelScoops",Int_FuelScoop_Size5_Class1:"fuelScoops",Int_FuelScoop_Size6_Class1:"fuelScoops",Int_FuelScoop_Size7_Class1:"fuelScoops",Int_FuelScoop_Size8_Class1:"fuelScoops",Int_FuelScoop_Size1_Class2:"fuelScoops",Int_FuelScoop_Size2_Class2:"fuelScoops",Int_FuelScoop_Size3_Class2:"fuelScoops",Int_FuelScoop_Size4_Class2:"fuelScoops",Int_FuelScoop_Size5_Class2:"fuelScoops",Int_FuelScoop_Size6_Class2:"fuelScoops",Int_FuelScoop_Size7_Class2:"fuelScoops",Int_FuelScoop_Size8_Class2:"fuelScoops",Int_FuelScoop_Size1_Class3:"fuelScoops",Int_FuelScoop_Size2_Class3:"fuelScoops",Int_FuelScoop_Size3_Class3:"fuelScoops",Int_FuelScoop_Size4_Class3:"fuelScoops",Int_FuelScoop_Size5_Class3:"fuelScoops",Int_FuelScoop_Size6_Class3:"fuelScoops",Int_FuelScoop_Size7_Class3:"fuelScoops",Int_FuelScoop_Size8_Class3:"fuelScoops",Int_FuelScoop_Size1_Class4:"fuelScoops",Int_FuelScoop_Size2_Class4:"fuelScoops",Int_FuelScoop_Size3_Class4:"fuelScoops",Int_FuelScoop_Size4_Class4:"fuelScoops",Int_FuelScoop_Size5_Class4:"fuelScoops",Int_FuelScoop_Size6_Class4:"fuelScoops",Int_FuelScoop_Size7_Class4:"fuelScoops",Int_FuelScoop_Size8_Class4:"fuelScoops",Int_FuelScoop_Size1_Class5:"fuelScoops",Int_FuelScoop_Size2_Class5:"fuelScoops",Int_FuelScoop_Size3_Class5:"fuelScoops",Int_FuelScoop_Size4_Class5:"fuelScoops",Int_FuelScoop_Size5_Class5:"fuelScoops",Int_FuelScoop_Size6_Class5:"fuelScoops",Int_FuelScoop_Size7_Class5:"fuelScoops",Int_FuelScoop_Size8_Class5:"fuelScoops",Int_DroneControl_FuelTransfer_Size1_Class1:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size1_Class2:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size1_Class3:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size1_Class4:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size1_Class5:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size3_Class1:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size3_Class2:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size3_Class3:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size3_Class4:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size3_Class5:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size5_Class1:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size5_Class2:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size5_Class3:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size5_Class4:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size5_Class5:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size7_Class1:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size7_Class2:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size7_Class3:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size7_Class4:"fuelTransferLimpets",Int_DroneControl_FuelTransfer_Size7_Class5:"fuelTransferLimpets",Int_DroneControl_ResourceSiphon:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size1_Class1:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size1_Class2:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size1_Class3:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size1_Class4:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size1_Class5:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size3_Class1:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size3_Class2:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size3_Class3:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size3_Class4:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size3_Class5:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size5_Class1:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size5_Class2:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size5_Class3:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size5_Class4:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size5_Class5:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size7_Class1:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size7_Class2:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size7_Class3:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size7_Class4:"hatchBreakerLimpets",Int_DroneControl_ResourceSiphon_Size7_Class5:"hatchBreakerLimpets",Int_GuardianModuleReinforcement_Size1_Class1:"moduleReinforcements",Int_GuardianModuleReinforcement_Size1_Class2:"moduleReinforcements",Int_GuardianModuleReinforcement_Size2_Class1:"moduleReinforcements",Int_GuardianModuleReinforcement_Size2_Class2:"moduleReinforcements",Int_GuardianModuleReinforcement_Size3_Class1:"moduleReinforcements",Int_GuardianModuleReinforcement_Size3_Class2:"moduleReinforcements",Int_GuardianModuleReinforcement_Size4_Class1:"moduleReinforcements",Int_GuardianModuleReinforcement_Size4_Class2:"moduleReinforcements",Int_GuardianModuleReinforcement_Size5_Class1:"moduleReinforcements",Int_GuardianModuleReinforcement_Size5_Class2:"moduleReinforcements",Int_DroneControl_Prospector_Size1_Class1:"prospectingLimpets",Int_DroneControl_Prospector_Size1_Class2:"prospectingLimpets",Int_DroneControl_Prospector_Size1_Class3:"prospectingLimpets",Int_DroneControl_Prospector_Size1_Class4:"prospectingLimpets",Int_DroneControl_Prospector_Size1_Class5:"prospectingLimpets",Int_DroneControl_Prospector_Size3_Class1:"prospectingLimpets",Int_DroneControl_Prospector_Size3_Class2:"prospectingLimpets",Int_DroneControl_Prospector_Size3_Class3:"prospectingLimpets",Int_DroneControl_Prospector_Size3_Class4:"prospectingLimpets",Int_DroneControl_Prospector_Size3_Class5:"prospectingLimpets",Int_DroneControl_Prospector_Size5_Class1:"prospectingLimpets",Int_DroneControl_Prospector_Size5_Class2:"prospectingLimpets",Int_DroneControl_Prospector_Size5_Class3:"prospectingLimpets",Int_DroneControl_Prospector_Size5_Class4:"prospectingLimpets",Int_DroneControl_Prospector_Size5_Class5:"prospectingLimpets",Int_DroneControl_Prospector_Size7_Class1:"prospectingLimpets",Int_DroneControl_Prospector_Size7_Class2:"prospectingLimpets",Int_DroneControl_Prospector_Size7_Class3:"prospectingLimpets",Int_DroneControl_Prospector_Size7_Class4:"prospectingLimpets",Int_DroneControl_Prospector_Size7_Class5:"prospectingLimpets",Int_Refinery_Size1_Class1:"refineries",Int_Refinery_Size2_Class1:"refineries",Int_Refinery_Size3_Class1:"refineries",Int_Refinery_Size4_Class1:"refineries",Int_Refinery_Size1_Class2:"refineries",Int_Refinery_Size2_Class2:"refineries",Int_Refinery_Size3_Class2:"refineries",Int_Refinery_Size4_Class2:"refineries",Int_Refinery_Size1_Class3:"refineries",Int_Refinery_Size2_Class3:"refineries",Int_Refinery_Size3_Class3:"refineries",Int_Refinery_Size4_Class3:"refineries",Int_Refinery_Size1_Class4:"refineries",Int_Refinery_Size2_Class4:"refineries",Int_Refinery_Size3_Class4:"refineries",Int_Refinery_Size4_Class4:"refineries",Int_Refinery_Size1_Class5:"refineries",Int_Refinery_Size2_Class5:"refineries",Int_Refinery_Size3_Class5:"refineries",Int_Refinery_Size4_Class5:"refineries",Int_GuardianShieldReinforcement_Size1_Class1:"shieldReinforcements",Int_GuardianShieldReinforcement_Size1_Class2:"shieldReinforcements",Int_GuardianShieldReinforcement_Size2_Class1:"shieldReinforcements",Int_GuardianShieldReinforcement_Size2_Class2:"shieldReinforcements",Int_GuardianShieldReinforcement_Size3_Class1:"shieldReinforcements",Int_GuardianShieldReinforcement_Size3_Class2:"shieldReinforcements",Int_GuardianShieldReinforcement_Size4_Class1:"shieldReinforcements",Int_GuardianShieldReinforcement_Size4_Class2:"shieldReinforcements",Int_GuardianShieldReinforcement_Size5_Class1:"shieldReinforcements",Int_GuardianShieldReinforcement_Size5_Class2:"shieldReinforcements",Int_DetailedSurfaceScanner_Tiny:"surfaceScanners",Hpt_ChaffLauncher_Tiny:"chaffLaunchers",Hpt_ElectronicCountermeasure_Tiny:"ecms",Hpt_HeatSinkLauncher_Turret_Tiny:"heatSinkLaunchers",Hpt_CausticSinkLauncher_Turret_Tiny:"heatSinkLaunchers",Hpt_CrimeScanner_Size0_Class1:"killWarrantScanners",Hpt_CrimeScanner_Size0_Class2:"killWarrantScanners",Hpt_CrimeScanner_Size0_Class3:"killWarrantScanners",Hpt_CrimeScanner_Size0_Class4:"killWarrantScanners",Hpt_CrimeScanner_Size0_Class5:"killWarrantScanners",Hpt_CargoScanner_Size0_Class1:"manifestScanners",Hpt_CargoScanner_Size0_Class2:"manifestScanners",Hpt_CargoScanner_Size0_Class3:"manifestScanners",Hpt_CargoScanner_Size0_Class4:"manifestScanners",Hpt_CargoScanner_Size0_Class5:"manifestScanners",Hpt_PlasmaPointDefence_Turret_Tiny:"pointDefence",Hpt_CloudScanner_Size0_Class1:"wakeScanners",Hpt_CloudScanner_Size0_Class2:"wakeScanners",Hpt_CloudScanner_Size0_Class3:"wakeScanners",Hpt_CloudScanner_Size0_Class4:"wakeScanners",Hpt_CloudScanner_Size0_Class5:"wakeScanners",Hpt_Guardian_GaussCannon_Fixed_Medium:"guardianGauss",Hpt_Guardian_GaussCannon_Fixed_Small:"guardianGauss",Hpt_Guardian_PlasmaLauncher_Fixed_Medium:"guardianPlasma",Hpt_Guardian_PlasmaLauncher_Turret_Medium:"guardianPlasma",Hpt_Guardian_PlasmaLauncher_Fixed_Large:"guardianPlasma",Hpt_Guardian_PlasmaLauncher_Turret_Large:"guardianPlasma",Hpt_Guardian_PlasmaLauncher_Turret_Small:"guardianPlasma",Hpt_Guardian_PlasmaLauncher_Fixed_Small:"guardianPlasma",Hpt_Guardian_ShardCannon_Fixed_Medium:"guardianShard",Hpt_Guardian_ShardCannon_Turret_Medium:"guardianShard",Hpt_Guardian_ShardCannon_Fixed_Large:"guardianShard",Hpt_Guardian_ShardCannon_Turret_Large:"guardianShard",Hpt_Guardian_ShardCannon_Turret_Small:"guardianShard",Hpt_Guardian_ShardCannon_Fixed_Small:"guardianShard"},exclusions:{Hpt_MultiCannon_Fixed_Small:["special_phasing_sequence"],Hpt_MultiCannon_Fixed_Large:["special_phasing_sequence"],Hpt_MultiCannon_Fixed_Huge:["special_phasing_sequence"],Hpt_MultiCannon_Gimbal_Small:["special_phasing_sequence"],Hpt_MultiCannon_Gimbal_Medium:["special_phasing_sequence"],Hpt_MultiCannon_Gimbal_Large:["special_phasing_sequence"],Hpt_MultiCannon_Turret_Small:["special_phasing_sequence"],Hpt_MultiCannon_Turret_Medium:["special_phasing_sequence"],Hpt_MultiCannon_Turret_Large:["special_phasing_sequence"],Hpt_MultiCannon_Fixed_Small_Strong:["special_phasing_sequence"],Hpt_MultiCannon_Gimbal_Huge:["special_phasing_sequence"],Hpt_MultiCannon_Fixed_Medium_Advanced:["special_phasing_sequence"],Hpt_MultiCannon_Fixed_Small_Advanced:["special_phasing_sequence"],Hpt_BasicMissileRack_Fixed_Small:["special_fsd_interrupt","special_penetrator_munitions"],Hpt_BasicMissileRack_Fixed_Medium:["special_penetrator_munitions"],Hpt_BasicMissileRack_Fixed_Large:["special_penetrator_munitions"],Hpt_DumbfireMissileRack_Fixed_Small:["special_drag_munitions"],Hpt_DumbfireMissileRack_Fixed_Medium:["special_drag_munitions"],Hpt_DrunkMissileRack_Fixed_Medium:["special_fsd_interrupt","special_penetrator_munitions"],Hpt_DumbfireMissileRack_Fixed_Medium_Lasso:["special_drag_munitions"],Hpt_DumbfireMissileRack_Fixed_Large:["special_drag_munitions"],Hpt_DumbfireMissileRack_Fixed_Small_Advanced:["special_drag_munitions"],Hpt_DumbfireMissileRack_Fixed_Medium_Advanced:["special_drag_munitions"]}};var DATA=deepFreeze(engineering_options_default);var ENGINEERING_OPTION_GROUPS=DATA.groups;var moduleGroup=new Map(Object.entries(DATA.modules).map(([symbol,group])=>[symbol.toLowerCase(),group]));var moduleExclusions=new Map(Object.entries(DATA.exclusions).map(([symbol,effects])=>[symbol.toLowerCase(),new Set(effects.map(e=>e.toLowerCase()))]));function getEngineeringGroup(symbol){return moduleGroup.get(normalizeKey(symbol,"getEngineeringGroup: symbol"))??null}function getBlueprintsForModule(symbol){requireStringIfPresent(symbol,"getBlueprintsForModule: symbol");const group=getEngineeringGroup(symbol);return group===null?[]:ENGINEERING_OPTION_GROUPS[group].blueprints}function getExperimentalsForModule(symbol){const normalized=normalizeKey(symbol,"getExperimentalsForModule: symbol");const group=moduleGroup.get(normalized);if(group===void 0)return[];const all=ENGINEERING_OPTION_GROUPS[group].experimentals;const excluded=moduleExclusions.get(normalized);return excluded===void 0?all:all.filter(e=>!excluded.has(e.toLowerCase()))}function getExperimentalsForBlueprint(blueprintSymbol){const normalized=normalizeKey(blueprintSymbol,"getExperimentalsForBlueprint: blueprintSymbol");const out=/* @__PURE__ */new Set;for(const group of Object.values(ENGINEERING_OPTION_GROUPS)){if(!group.blueprints.some(b=>b.toLowerCase()===normalized))continue;for(const effect of group.experimentals)out.add(effect)}return[...out].sort()}export{ENGINEERING_OPTION_GROUPS,getBlueprintsForModule,getEngineeringGroup,getExperimentalsForBlueprint,getExperimentalsForModule};//# sourceMappingURL=chunk-GLWPSVFV.js.map
@@ -1 +0,0 @@
1
- import{getLocalizedName,createLocalizedNameIndex}from"./chunk-RVIYOHYF.js";var micro_resource_names_default={graphene:{en:"Graphene",de:"Graphen",es:"Grafeno",fr:"Graphène",pt:"Grafeno",ru:"Графен"},aerogel:{en:"Aerogel",es:"Aerogel",fr:"Aérogel",ru:"Аэрогель"},carbonfibreplating:{en:"Carbon Fibre Plating",de:"Carbonfaserplatten",es:"Placa de fibra de carbono",fr:"Plaques en fibres de carbone",pt:"Revestimento de fibra de carbono",ru:"Углеволоконная пластина"},chemicalcatalyst:{en:"Chemical Catalyst",de:"Chemischer Katalysator",es:"Catalizador químico",fr:"Catalyseur chimique",pt:"Catalisador químico",ru:"Химический катализатор"},chemicalsuperbase:{en:"Chemical Superbase",de:"Chemische Superbase",es:"Superbase química",fr:"Superbase chimique",pt:"Superbase química",ru:"Химическое супероснование"},circuitboard:{en:"Circuit Board",de:"Schaltplatte",es:"Placa base",fr:"Circuit imprimé",pt:"Placa de circuitos",ru:"Электроплата"},circuitswitch:{en:"Circuit Switch",de:"Elektroschalter",es:"Conmutador",fr:"Commutateur",pt:"Chave de circuito",ru:"Переключатель цепи"},electricalfuse:{en:"Electrical Fuse",de:"Elektrosicherung",es:"Fusible",fr:"Fusible électrique",pt:"Fusível elétrico",ru:"Предохранитель"},electricalwiring:{en:"Electrical Wiring",de:"Elektroverkabelung",es:"Cables eléctricos",fr:"Câblage électrique",pt:"Fio elétrico",ru:"Электропроводка"},encryptedmemorychip:{en:"Encrypted Memory Chip",de:"Verschlüsselter Speicherchip",es:"Chip de memoria cifrado",fr:"Puce mémoire cryptée",pt:"Chip de memória criptografado",ru:"Зашифрованная плата памяти"},epoxyadhesive:{en:"Epoxy Adhesive",de:"Epoxy-Klebstoff",es:"Resina epoxi",fr:"Colle époxy",pt:"Adesivo de epóxi",ru:"Эпоксидный клей"},memorychip:{en:"Memory Chip",de:"Speicherchip",es:"Chip de memoria",fr:"Puce mémoire",pt:"Chip de memória",ru:"Плата памяти"},metalcoil:{en:"Metal Coil",de:"Metallspule",es:"Bobina de metal",fr:"Bobine métallique",pt:"Mola de metal",ru:"Металлическая катушка"},microhydraulics:{en:"Micro Hydraulics",de:"Mikrohydraulikgeräte",es:"Microhidráulica",fr:"Micro hydraulique",pt:"Micro-hidráulica",ru:"Микрогидравлика"},microsupercapacitor:{en:"Micro Supercapacitor",de:"Mikro-Superkondensatoren",es:"Microsupercondensador",fr:"Microsupercondensateur",pt:"Microsupercapacitor",ru:"Микросуперконденсаторы"},microthrusters:{en:"Micro Thrusters",de:"Mikro-Schubdüsen",es:"Microimpulsores",fr:"Micropropulseurs",pt:"Micropropulsores",ru:"Маневровые микродвигатели"},microtransformer:{en:"Micro Transformer",de:"Mikro-Transformator",es:"Microtransformador",fr:"Microtransformateur",pt:"Microtransformador",ru:"Микротрансформатор"},motor:{en:"Motor",es:"Motor",fr:"Moteur",ru:"Мотор"},opticalfibre:{en:"Optical Fibre",de:"Glasfaser",es:"Fibra óptica",fr:"Fibre optique",pt:"Fibra ótica",ru:"Оптоволокно"},opticallens:{en:"Optical Lens",de:"Optische Linse",es:"Lente óptica",fr:"Lentille optique",pt:"Lente ótica",ru:"Оптические линзы"},scrambler:{en:"Scrambler",de:"Störsender",es:"Desmodulador",fr:"Brouilleur",pt:"Embaralhador",ru:"Шифратор"},titaniumplating:{en:"Titanium Plating",de:"Titanplatten",es:"Placa de titanio",fr:"Plaques en titane",pt:"Revestimento de titânio",ru:"Титановая пластина"},transmitter:{en:"Transmitter",de:"Sender",es:"Transmisor",fr:"Transmetteur",pt:"Transmissor",ru:"Передатчик"},tungstencarbide:{en:"Tungsten Carbide",de:"Wolframcarbid",es:"Carburo de tungsteno",fr:"Carbure de tungstène",pt:"Carboneto de tungstênio",ru:"Карбид вольфрама"},viscoelasticpolymer:{en:"Viscoelastic Polymer",de:"Viskoelastisches Polymer",es:"Polímetro viscoelástico",fr:"Polymère viscoélastique",pt:"Polímero viscoelástico",ru:"Вязкоэластичный полимер"},rdx:{en:"RDX",de:"Hexogen",es:"RDX",fr:"RDX",ru:"Гексоген"},electromagnet:{en:"Electromagnet",de:"Elektromagnet",es:"Electroimán",fr:"Électroaimant",pt:"Eletroímã",ru:"Электромагнит"},oxygenicbacteria:{en:"Oxygenic Bacteria",de:"Sauerstoffbakterien",es:"Bacterias oxigénicas",fr:"Bactérie oxygénique",pt:"Bactérias oxigênicas",ru:"Кислородные бактерии"},epinephrine:{en:"Epinephrine",de:"Epinephrin",es:"Epinefrina",fr:"Épinéphrine",pt:"Epinefrina",ru:"Эпинефрин"},phneutraliser:{en:"pH Neutraliser",de:"pH-Neutralisator",es:"Neutralizador de pH",fr:"Neutralisateur de pH",pt:"Neutralizador de pH",ru:"Нейтрализатор pH"},microelectrode:{en:"Microelectrode",de:"Mikroelektrode",es:"Microelectrodo",fr:"Microélectrode",pt:"Microeletrodo",ru:"Микроэлектрод"},ionbattery:{en:"Ion Battery",de:"Ionen-Batterie",es:"Batería de iones",fr:"Batterie ionique",pt:"Bateria iônica",ru:"Ионная батарея"},weaponcomponent:{en:"Weapon Component",de:"Waffenkomponente",es:"Componente de arma",fr:"Composant d’arme",pt:"Componente de armas",ru:"Компонент оружия"},healthpack:{en:"Medkit",de:"Medikit",es:"Botiquín",fr:"Médikit",pt:"Kit médico",ru:"Аптечка"},energycell:{en:"Energy Cell",de:"Energiezelle",es:"Célula de energía",fr:"Cellule d’énergie",pt:"Célula de energia",ru:"Энергоячейка"},amm_grenade_emp:{en:"Shield Disruptor",de:"Schildunterbrecher",es:"Supresor de escudo",fr:"Neutralisateur de bouclier",pt:"Disruptor de escudo",ru:"Разрушитель щитов"},amm_grenade_frag:{en:"Frag Grenade",de:"Splittergranate",es:"Granada de fragmentación",fr:"Grenade à fragmentation",pt:"Granada de fragmentação",ru:"Осколочная граната"},amm_grenade_shield:{en:"Shield Projector",de:"Schildgenerator",es:"Proyector de escudo",fr:"Générateur de bouclier",pt:"Projetor de escudo",ru:"Проектор щита"},bypass:{en:"E-Breach",es:"Fisura",fr:"Omnipasse",pt:"Brecha",ru:"Взломщик"},internalcorrespondence:{en:"Internal Correspondence",de:"Interne Korrespondenz",es:"Correspondencia interna",fr:"Mémo interne",pt:"Correspondência interna",ru:"Внутренняя корреспонденция"},spyware:{en:"Spyware",de:"Spyware",es:"Software espía",fr:"Programme-espion",ru:"Шпионские программы"},biometricdata:{en:"Biometric Data",de:"Biometrische Daten",es:"Datos biométricos",fr:"Données biométriques",pt:"Dados Biométricos",ru:"Биометрические данные"},nocdata:{en:"NOC Data",de:"Geheimoperation-Daten",es:"Datos del AEE",fr:"Données d’agent clandestin",pt:"Dados Operacionais sigilosos",ru:"Данные по тайным агентам"},axcombatlogs:{en:"AX Combat Logs",de:"AX-Kampf-Logs",es:"Registros de combate AX",fr:"Journaux de combat AX",pt:"Registros de combate AX",ru:"Боевой журнал АИ"},accidentlogs:{en:"Accident Logs",de:"Unfall-Logs",es:"Registros de accidentes",fr:"Journaux d’accidents",pt:"Registros de acidente",ru:"Журнал происшествий"},airqualityreports:{en:"Air Quality Reports",de:"Berichte zur Luftqualität",es:"Registros de calidad del aire",fr:"Rapports de qualité de l’air",pt:"Relatórios de qualidade do ar",ru:"Отчеты о качестве воздуха"},atmosphericdata:{en:"Atmospheric Data",de:"Atmosphärische Daten",es:"Datos atmosféricos",fr:"Données atmosphériques",pt:"Dados atmosféricos",ru:"Атмосферные данные"},audiologs:{en:"Audio Logs",de:"Audio-Logs",es:"Registros de audio",fr:"Journaux audio",pt:"Registros de áudio",ru:"Аудиозаписи"},ballisticsdata:{en:"Ballistics Data",de:"Ballistische Daten",es:"Datos balísticos",fr:"Données balistiques",pt:"Dados balísticos",ru:"Баллистические данные"},biologicalweapondata:{en:"Biological Weapon Data",de:"Biowaffen-Daten",es:"Datos de armas biológicas",fr:"Données d’arme biologique",pt:"Dados de arma biológica",ru:"Данные о биологическом оружии"},blacklistdata:{en:"Blacklist Data",de:"Daten der Schwarzen Liste",es:"Datos de lista negra",fr:"Liste noire",pt:"Dados de lista negra",ru:"Черный список"},bloodtestresults:{en:"Blood Test Results",de:"Bluttest-Ergebnisse",es:"Resultados de análisis de sangre",fr:"Résultats de tests sanguins",pt:"Resultados de exames de sangue",ru:"Результаты анализа крови"},campaignplans:{en:"Campaign Plans",de:"Kampagnenpläne",es:"Planes de campaña",fr:"Plans de campagne",pt:"Planos de campanha",ru:"План кампании"},catmedia:{en:"Cat Media",de:"Katzen-Medien",es:"Catálogo de medios",fr:"Médiathèque féline",pt:"Mídias de gatinhos",ru:"Медиаконтент с котиками"},censusdata:{en:"Census Data",de:"Zensusdaten",es:"Datos censales",fr:"Données de recensement",pt:"Dados de recenseamento",ru:"Данные переписи населения"},chemicalexperimentdata:{en:"Chemical Experiment Data",de:"Chemieexperiment-Daten",es:"Datos de experimentos químicos",fr:"Données d’expériences chimiques",pt:"Dados de experimentos químicos",ru:"Данные о химических экспериментах"},chemicalformulae:{en:"Chemical Formulae",de:"Chemische Formeln",es:"Fórmulas químicas",fr:"Formules chimiques",pt:"Fórmulas químicas",ru:"Химические формулы"},chemicalinventory:{en:"Chemical Inventory",de:"Chemische Bestandsliste",es:"Inventario químico",fr:"Inventaire chimique",pt:"Estoque químico",ru:"Опись химикатов"},chemicalpatents:{en:"Chemical Patents",de:"Chemische Patente",es:"Patentes químicas",fr:"Brevets chimiques",pt:"Patentes químicas",ru:"Химические патенты"},chemicalweapondata:{en:"Chemical Weapon Data",de:"Chemiewaffen-Daten",es:"Datos de armas químicas",fr:"Données d’armes chimiques",pt:"Dados de armas químicas",ru:"Данные о химическом оружии"},classicentertainment:{en:"Classic Entertainment",de:"Klassische Unterhaltung",es:"Entretenimiento clásico",fr:"Médiathèque classique",pt:"Entretenimento clássico",ru:"Классические развлечения"},cocktailrecipes:{en:"Cocktail Recipes",de:"Cocktail-Rezepte",es:"Recetas de cócteles",fr:"Recettes de cocktails",pt:"Receitas de coquetéis",ru:"Рецепты коктейлей"},combattrainingmaterial:{en:"Combat Training Material",de:"Kampftraining-Materialien",es:"Material de entrenamiento de combate",fr:"Méthodes d’entraînement au combat",pt:"Material de treinamento para combate",ru:"Учебные материалы по боевой подготовке"},combatantperformance:{en:"Combatant Performance",de:"Kampfleistung",es:"Rendimiento de combatiente",fr:"Performances de combat",pt:"Desempenho em combate",ru:"Боевые характеристики"},conflicthistory:{en:"Conflict History",de:"Konflikthistorie",es:"Historial de conflictos",fr:"Historique de conflit",pt:"Histórico de conflito",ru:"История конфликта"},cropyieldanalysis:{en:"Crop Yield Analysis",de:"Ernteertrag-Analyse",es:"Análisis de producción agrícola",fr:"Analyse de rendement agricole",pt:"Análise de rendimento agrícola",ru:"Анализ урожая"},culinaryrecipes:{en:"Culinary Recipes",de:"Kulinarische Rezepte",es:"Recetas culinarias",fr:"Recettes culinaires",pt:"Receitas culinárias",ru:"Кулинарные рецепты"},digitaldesigns:{en:"Digital Designs",de:"Digitale Konzepte",es:"Diseños digitales",fr:"Plans numériques",pt:"Projetos digitais",ru:"Дизайнерский проект"},dutyrota:{en:"Duty Rota",de:"Dienstpläne",es:"Turnos de guardia",fr:"Planning professionnel",pt:"Escala de trabalho",ru:"График дежурств"},employeedirectory:{en:"Employee Directory",de:"Mitarbeiterverzeichnis",es:"Directorio de empleados",fr:"Registre des employés",pt:"Lista de funcionários",ru:"Досье работников"},employeeexpenses:{en:"Employee Expenses",de:"Aufwendungen für Mitarbeiter",es:"Gastos de personal",fr:"Notes de frais",pt:"Despesas com funcionários",ru:"Расходы работников"},employeegeneticdata:{en:"Employee Genetic Data",de:"Gen-Daten von Mitarbeitern",es:"Datos genéticos de empleados",fr:"Données génétiques d’employés",pt:"Dados genéticos dos funcionários",ru:"Генетические данные работников"},employmenthistory:{en:"Employment History",de:"Beschäftigungshistorie",es:"Historial de empleo",fr:"Expérience professionnelle",pt:"Histórico profissional",ru:"История трудоустройства"},enhancedinterrogationrecordings:{en:"Enhanced Interrogation Recordings",de:"Optimierte Vernehmungsaufzeichnungen",es:"Registros de interrogatorios mejorados",fr:"Enregistrements d’interrogatoires poussés",pt:"Gravações de interrogatório avançado",ru:"Расширенный протокол допроса"},espionagematerial:{en:"Espionage Material",de:"Spionagematerial",es:"Material de espionaje",fr:"Documents confidentiels",pt:"Material de espionagem",ru:"Разведданные"},evacuationprotocols:{en:"Evacuation Protocols",de:"Evakuierungsprotokolle",es:"Protocolos de evacuación",fr:"Protocoles d’évacuation",pt:"Protocolos de evacuação",ru:"Алгоритм эвакуации"},explorationjournals:{en:"Exploration Journals",de:"Erkundungstagebücher",es:"Diarios de exploración",fr:"Journaux d’exploration",pt:"Diários de exploração",ru:"Исследовательские дневники"},extractionyielddata:{en:"Extraction Yield Data",de:"Daten zur Förderungsausbeute",es:"Datos de producción minera",fr:"Données de rendement minier",pt:"Dados de produção extrativa",ru:"Данные об объеме добычи"},factionassociates:{en:"Faction Associates",de:"Fraktionspartner",es:"Socios de facción",fr:"Affiliations d’une faction",pt:"Associados da facção",ru:"Партнеры фракции"},financialprojections:{en:"Financial Projections",de:"Finanzprognosen",es:"Previsiones financieras",fr:"Projections financières",pt:"Projeções financeiras",ru:"Финансовые прогнозы"},factionnews:{en:"Faction News",de:"Fraktionsnachrichten",es:"Noticias de facción",fr:"Actualité d’une faction",pt:"Notícias sobre a facção",ru:"Новости фракции"},fleetregistry:{en:"Fleet Registry",de:"Flottenliste",es:"Registro de flota",fr:"Registre de flotte",pt:"Registro de frota",ru:"Реестр флота"},genesequencingdata:{en:"Gene Sequencing Data",de:"Gen-Sequenzierungsdaten",es:"Datos de secuenciación genética",fr:"Données de séquençage génétique",pt:"Dados de sequenciamento genético",ru:"Данные о секвенировании генов"},geneticresearch:{en:"Genetic Research",de:"Genforschung",es:"Estudio genético",fr:"Recherches génétiques",pt:"Pesquisas genéticas",ru:"Материалы генетического исследования"},hydroponicdata:{en:"Hydroponic Data",de:"Hydrokultur-Daten",es:"Datos hidropónicos",fr:"Données hydroponiques",pt:"Dados de hidroponia",ru:"Данные о гидропонике"},incidentlogs:{en:"Incident Logs",de:"Zwischenfall-Logs",es:"Registros de incidentes",fr:"Journaux d’incidents",pt:"Registros de incidentes",ru:"Журнал событий"},influenceprojections:{en:"Influence Projections",de:"Einfluss-Projektionen",es:"Previsiones de influencia",fr:"Perspectives",pt:"Projeções de influência",ru:"Прогноз влияния"},interrogationrecordings:{en:"Interrogation Recordings",de:"Vernehmungsaufzeichnungen",es:"Registros de interrogatorios",fr:"Enregistrements d’interrogatoires",pt:"Gravações de interrogatórios",ru:"Протоколы допроса"},interviewrecordings:{en:"Interview Recordings",de:"Aufzeichnungen von Vorstellungsgesprächen",es:"Registros de entrevista",fr:"Enregistrements d’entretiens",pt:"Gravações de entrevistas",ru:"Результаты собеседования"},jobapplications:{en:"Job Applications",de:"Bewerbungen",es:"Solicitudes de empleo",fr:"Candidatures professionnelles",pt:"Candidaturas para emprego",ru:"Заявления о приеме на работу"},kompromat:{en:"Kompromat",de:"Kompromittierendes Material",es:"Material comprometedor",fr:"Kompromat",ru:"Компромат"},literaryfiction:{en:"Literary Fiction",de:"Belletristik",es:"Ficción literaria",fr:"Romans",pt:"Ficção literária",ru:"Художественная литература"},maintenancelogs:{en:"Maintenance Logs",de:"Wartungs-Logs",es:"Registros de mantenimiento",fr:"Journaux de maintenance",pt:"Registros de manutenção",ru:"Журнал обслуживания"},manufacturinginstructions:{en:"Manufacturing Instructions",de:"Herstellungsanweisungen",es:"Instrucciones de fabricación",fr:"Guides industriels",pt:"Instruções de fabricação",ru:"Производственные инструкции"},medicalrecords:{en:"Medical Records",de:"Medizinische Daten",es:"Historiales médicos",fr:"Dossiers médicaux",pt:"Registros médicos",ru:"Медицинские карты"},medicaltrialrecords:{en:"Clinical Trial Records",de:"Klinische Prüfberichte",es:"Registros de ensayos clínicos",fr:"Essais cliniques",pt:"Registros de teste clínico",ru:"Результаты клинических испытаний"},meetingminutes:{en:"Meeting Minutes",de:"Besprechungsprotokolle",es:"Actas de reuniones",fr:"Compte-rendu de réunion",pt:"Ata de reunião",ru:"Протоколы заседаний"},mineralsurvey:{en:"Mineral Survey",de:"Mineralienübersicht",es:"Estudio mineral",fr:"Rapport de prospection",pt:"Pesquisa mineral",ru:"Результаты геологической разведки"},mininganalytics:{en:"Mining Analytics",de:"Abbau-Analytik",es:"Análisis de minería",fr:"Analyses minières",pt:"Análise de mineração",ru:"Анализ горнодобывающей промышленности"},multimediaentertainment:{en:"Multimedia Entertainment",de:"Multimedia-Unterhaltung",es:"Entretenimiento multimedia",fr:"Médiathèque",pt:"Entretenimento multimídia",ru:"Мультимедийные развлечения"},networkaccesshistory:{en:"Network Access History",de:"Netzwerkzugriffshistorie",es:"Historial de acceso a la red",fr:"Historique réseau",pt:"Histórico de acesso à rede",ru:"История сетевой активности"},networksecurityprotocols:{en:"Network Security Protocols",de:"Netzwerksicherheitsprotokolle",es:"Protocolos de seguridad de red",fr:"Protocoles de sécurité réseau",pt:"Protocolos de segurança de rede",ru:"Протоколы безопасности сети"},nextofkinrecords:{en:"Next of Kin Records",de:"Angehörigen-Aufzeichnungen",es:"Registros familiares",fr:"Liste de proches",pt:"Registros familiares",ru:"Сведения о ближайших родственниках"},operationalmanual:{en:"Operational Manual",de:"Bedienungsanleitung",es:"Manual de operaciones",fr:"Mode d’emploi",pt:"Manual operacional",ru:"Руководство по эксплуатации"},opinionpolls:{en:"Opinion Polls",de:"Umfrageergebnisse",es:"Sondeos de opinión",fr:"Sondages",pt:"Pesquisas de opinião",ru:"Опросы общественного мнения"},patienthistory:{en:"Patient History",de:"Patientenhistorie",es:"Historial clínico",fr:"Antécédents médicaux",pt:"Histórico de paciente",ru:"История болезни"},patrolroutes:{en:"Patrol Routes",de:"Patrouillenrouten",es:"Rutas de patrulla",fr:"Itinéraires de patrouille",pt:"Rotas de patrulhamento",ru:"Маршруты патрулирования"},personallogs:{en:"Personal Logs",de:"Persönliche Logs",es:"Registros personales",fr:"Journaux personnels",pt:"Registros pessoais",ru:"Личные дневники"},photoalbums:{en:"Photo Albums",de:"Fotoalben",es:"Álbumes de fotos",fr:"Albums photo",pt:"Álbuns de fotografia",ru:"Фотоальбомы"},plantgrowthcharts:{en:"Plant Growth Charts",de:"Diagramme zum Pflanzenwachstum",es:"Gráficos de crecimiento de plantas",fr:"Courbes de croissance végétale",pt:"Gráficos de crescimento de plantas",ru:"График роста растений"},politicalaffiliations:{en:"Political Affiliations",de:"Politische Beziehungen",es:"Afiliaciones políticas",fr:"Affiliations politiques",pt:"Afiliações políticas",ru:"Политическая ориентация"},prisonerlogs:{en:"Prisoner Logs",de:"Gefangenen-Logs",es:"Registros de prisioneros",fr:"Dossiers pénitentiaires",pt:"Registros de prisioneiros",ru:"Списки заключенных"},productionreports:{en:"Production Reports",de:"Produktionsberichte",es:"Informes de producción",fr:"Rapports de production",pt:"Relatórios de produção",ru:"Отчеты о производстве"},productionschedule:{en:"Production Schedule",de:"Produktionszeitplan",es:"Programa de producción",fr:"Planning de production",pt:"Cronograma de produção",ru:"Производственный график"},propaganda:{en:"Propaganda",de:"Propaganda",es:"Propaganda",fr:"Propagande",ru:"Пропаганда"},purchaserecords:{en:"Purchase Records",de:"Kaufaufzeichnungen",es:"Registros de compra",fr:"Registre d’acquisitions",pt:"Registros de compras",ru:"Списки покупок"},purchaserequests:{en:"Purchase Requests",de:"Kaufanfragen",es:"Solicitudes de compra",fr:"Demandes d’achats",pt:"Pedidos de compra",ru:"Запросы на покупку"},radioactivitydata:{en:"Radioactivity Data",de:"Daten zur Radioaktivität",es:"Datos de radioactividad",fr:"Relevés de radioactivité",pt:"Dados sobre radioatividade",ru:"Информация о радиоактивности"},reactoroutputreview:{en:"Reactor Output Review",de:"Evaluierung der Reaktorleistung",es:"Informe de capacidad del reactor",fr:"Évaluation énergétique",pt:"Análise de produção do reator",ru:"Оценка выходной мощности реактора"},recyclinglogs:{en:"Recycling Logs",de:"Recycling-Logs",es:"Registros de reciclaje",fr:"Journaux de recyclage",pt:"Registros de reciclagem",ru:"Журнал утилизации отходов"},residentialdirectory:{en:"Residential Directory",de:"Einwohnerverzeichnis",es:"Directorio residencial",fr:"Annuaire résidentiel",pt:"Listagem residencial",ru:"Адресная книга"},riskassessments:{en:"Risk Assessments",de:"Gefährdungsbeurteilungen",es:"Valoración de riesgos",fr:"Évaluation des risques",pt:"Avaliações de risco",ru:"Оценка рисков"},salesrecords:{en:"Sales Records",de:"Verkaufszahlen",es:"Registros de ventas",fr:"Historique des ventes",pt:"Registros de vendas",ru:"Отчеты о продажах"},securityexpenses:{en:"Security Expenses",de:"Aufwendungen für Sicherheit",es:"Gastos de seguridad",fr:"Dépenses de sécurité",pt:"Despesas com segurança",ru:"Расходы на охрану"},seedgeneaology:{en:"Seed Geneaology",de:"Saatgut-Geneaologie",es:"Genealogía de simientes",fr:"Patrimoine génétique de semences",pt:"Genealogia de sementes",ru:"Генеалогия семенного материала"},settlementassaultplans:{en:"Settlement Assault Plans",de:"Siedlungsangriffspläne",es:"Planes de ataque del asentamiento",fr:"Plans d’assaut d’une installation",pt:"Planos de ataque a assentamento",ru:"Планы атак на поселение"},settlementdefenceplans:{en:"Settlement Defence Plans",de:"Siedlungsverteidigungspläne",es:"Planes de defensa del asentamiento",fr:"Plans de défense d’une installation",pt:"Planos de defesa do assentamento",ru:"Планы обороны поселения"},shareholderinformation:{en:"Shareholder Information",de:"Aktionärsinformationen",es:"Información de accionistas",fr:"Actionnariat",pt:"Informações sobre acionistas",ru:"Информация об акционерах"},slushfundlogs:{en:"Slush Fund Logs",de:"Schmiergeld-Logs",es:"Registros de fondos de reptiles",fr:"Caisse noire",pt:"Registros de caixa dois",ru:"Журналы подставного фонда"},smearcampaignplans:{en:"Smear Campaign Plans",de:"Pläne für Verleumdungskampagne",es:"Planes de campañas de desprestigio",fr:"Campagne de calomnie",pt:"Planos de campanha de difamação",ru:"Планы кампании по дискредитации"},spectralanalysisdata:{en:"Spectral Analysis Data",de:"Spektralanalyse-Daten",es:"Datos de análisis de espectro",fr:"Données d’analyse spectrale",pt:"Dados de análise de espectro",ru:"Результаты спектрального анализа"},stellaractivitylogs:{en:"Stellar Activity Logs",de:"Sternenaktivitäts-Logs",es:"Registros de actividad estelar",fr:"Journaux d’activité stellaire",pt:"Registros de atividade estelar",ru:"Журналы звездной активности"},surveilleancelogs:{en:"Surveillance Logs",de:"Überwachungs-Logs",es:"Registros de vigilancia",fr:"Journaux de surveillance",pt:"Registros de vigilância",ru:"Журналы наблюдения"},tacticalplans:{en:"Tactical Plans",de:"Taktikpläne",es:"Planes tácticos",fr:"Plans stratégiques",pt:"Planos táticos",ru:"Тактические планы"},taxrecords:{en:"Tax Records",de:"Steuerunterlagen",es:"Registros fiscales",fr:"Dossiers fiscaux",pt:"Registros tributários",ru:"Налоговые отчеты"},topographicalsurveys:{en:"Topographical Surveys",de:"Topographische Erhebung",es:"Estudios topográficos",fr:"Levés topographiques",pt:"Estudos topográficos",ru:"Топографические исследования"},travelpermits:{en:"Travel Permits",de:"Reiseerlaubnisse",es:"Permisos de viaje",fr:"Autorisations de déplacement",pt:"Permissões de viagem",ru:"Разрешения на поездки"},troopdeploymentrecords:{en:"Troop Deployment Records",de:"Truppeneinsatzprotokolle",es:"Registros de despliegue de tropas",fr:"Comptes-rendus opérationnels",pt:"Registros de destacamento de tropas",ru:"Отчет по развертыванию войск"},unionmembership:{en:"Union Membership",de:"Gewerkschaftsmitgliedschaft",es:"Afiliación sindical",fr:"Liste d’adhérents",pt:"Pessoal sindicalizado",ru:"Список членов союза"},vaccinationrecords:{en:"Vaccination Records",de:"Aufzeichnungen zu Impfungen",es:"Registros de vacunación",fr:"Dossiers de vaccination",pt:"Registros de vacinação",ru:"Журналы вакцинации"},vaccineresearch:{en:"Vaccine Research",de:"Impfstoffforschung",es:"Investigación sobre vacunas",fr:"Recherches vaccinales",pt:"Pesquisas de vacinas",ru:"Исследование вакцины"},vipsecuritydetail:{en:"VIP Security Detail",de:"VIP-Sicherheitsdienst",es:"Información de seguridad VIP",fr:"Protection rapprochée de VIP",pt:"Detalhes de segurança VIP",ru:"Охрана высокопоставленных лиц"},virologydata:{en:"Virology Data",de:"Virologische Daten",es:"Datos virológicos",fr:"Données de virologie",pt:"Dados de virologia",ru:"Информация о вирусах"},virus:{en:"Virus",de:"Virus",es:"Virus",pt:"Vírus",ru:"Вирус"},visitorregister:{en:"Visitor Register",de:"Besucherliste",es:"Registro de visitantes",fr:"Registre de visites",pt:"Registro de visitantes",ru:"Реестр посетителей"},weaponinventory:{en:"Weapon Inventory",de:"Waffeninventarliste",es:"Inventario de armas",fr:"Inventaire d’armement",pt:"Estoque de armas",ru:"Опись оружия и боеприпасов"},weapontestdata:{en:"Weapon Test Data",de:"Waffentestdaten",es:"Datos de pruebas armamentísticas",fr:"Données de test d’armes",pt:"Dados de testes de arma",ru:"Сведения об испытаниях вооружения"},xenodefenceprotocols:{en:"Xeno-Defence Protocols",de:"Xeno-Abwehr-Protokolle",es:"Protocolos de xenodefensa",fr:"Protocoles anti-xénomorphes",pt:"Protocolos de defesa antixeno",ru:"Алгоритм противодействия инопланетной угрозе"},payrollinformation:{en:"Payroll Information",de:"Gehaltsinformationen",es:"Información salarial",fr:"Informations salariales",pt:"Informações de folha de pagamento",ru:"Платежная ведомость"},geologicaldata:{en:"Geological Data",de:"Geologische Daten",es:"Datos geológicos",fr:"Données géologiques",pt:"Dados geológicos",ru:"Геологические данные"},criminalrecords:{en:"Criminal Records",de:"Strafakten",es:"Registros criminales",fr:"Casiers judiciaires",pt:"Registros criminais",ru:"Досье"},factiondonatorlist:{en:"Faction Donator List",de:"Spenderliste einer Fraktion",es:"Lista de donadores de facción",fr:"Liste des donateurs d’une faction",pt:"Lista de doadores da facção",ru:"Список спонсоров фракции"},pharmaceuticalpatents:{en:"Pharmaceutical Patents",de:"Pharmazeutische Patente",es:"Patentes farmacéuticas",fr:"Brevets pharmaceutiques",pt:"Patentes farmacêuticas",ru:"Фармацевтические патенты"},chemicalsample:{en:"Chemical Sample",de:"Chemieprobe",es:"Muestra química",fr:"Échantillon chimique",pt:"Amostra Química",ru:"Химический образец"},biochemicalagent:{en:"Biochemical Agent",de:"Biochemischer Wirkstoff",es:"Agente bioquímico",fr:"Agent biochimique",pt:"Agente Bioquímico",ru:"Биохимический агент"},californium:{en:"Californium",es:"Californio",fr:"Californium",pt:"Califórnio",ru:"Калифорний"},castfossil:{en:"Cast Fossil",de:"Fossilfund",es:"Molde de fósil",fr:"Moulage de fossile",pt:"Molde de Fóssil",ru:"Окаменелый отпечаток"},geneticsample:{en:"Biological Sample",de:"Biologische Probe",es:"Muestra biológica",fr:"Échantillons biologiques",pt:"Amostra biológica",ru:"Биологический образец"},gmeds:{en:"G-Meds",de:"G-Medizin",es:"Medicinas G",fr:"Traitement gravitationnel",pt:"G-Médios",ru:"G-препараты"},healthmonitor:{en:"Health Monitor",de:"Gesundheitsmonitor",es:"Monitor de salud",fr:"Moniteur médical",pt:"Monitor de Saúde",ru:"Монитор здоровья"},inertiacanister:{en:"Inertia Canister",de:"Trägheits-Container",es:"Contenedor de inercia",fr:"Conteneur inertiel",pt:"Contêiner Inerte",ru:"Инертный контейнер"},insight:{en:"Insight",es:"Insight",fr:"Insight",ru:"Insight"},insightdatabank:{en:"Insight Data Bank",de:"Insight-Datenbank",es:"Banco de datos de Insight",fr:"Banque de données d’Insight",pt:"Banco de Dados Insight",ru:"Банк данных Insight"},ionisedgas:{en:"Ionised Gas",de:"Ionisiertes Gas",es:"Gas ionizado",fr:"Gaz ionisé",pt:"Gás Ionizado",ru:"Ионизированный газ"},mutageniccatalyst:{en:"Mutagenic Catalyst",de:"Mutagen-Katalysator",es:"Catalizador mutagénico",fr:"Catalyseur mutagène",pt:"Catalisador Mutagênico",ru:"Мутагенный катализатор"},personalcomputer:{en:"Personal Computer",es:"Ordenador personal",fr:"Ordinateur personnel",pt:"Computador Pessoal",ru:"Персональный компьютер"},petrifiedfossil:{en:"Petrified Fossil",de:"Versteinertes Fossil",es:"Fósil petrificado",fr:"Fossile pétrifié",pt:"Fóssil Petrificado",ru:"Окаменелость"},syntheticgenome:{en:"Synthetic Genome",de:"Synthetisches Genom",es:"Genoma sintético",fr:"Génome de synthèse",pt:"Genoma Sintético",ru:"Синтетический геном"},trueformfossil:{en:"True Form Fossil",de:"Makelloses Fossil",es:"Fósil puro",fr:"Fossile intact",pt:"Fóssil Exemplar",ru:"Окаменелость истинной формы"},geneticrepairmeds:{en:"Genetic Repair Meds",de:"Gen-Reparatursets",es:"Medicinas de reparación genética",fr:"Traitements génétiques",pt:"Remédios para Reparo Genético",ru:"Генно-репаративные препараты"},buildingschematic:{en:"Building Schematic",de:"Gebäudeplan",es:"Esquema de edificio",fr:"Plan de bâtiment",pt:"Esquema de Construção",ru:"Чертеж здания"},compactlibrary:{en:"Compact Library",de:"Kompakt-Bibliothek",es:"Biblioteca compacta",fr:"Bibliothèque de poche",pt:"Biblioteca Compacta",ru:"Компактная библиотека"},deepmantlesample:{en:"Deep Mantle Sample",de:"Innerer-Mantel-Probe",es:"Muestra del manto profundo",fr:"Échantillon de manteau inférieur",pt:"Amostra de Manto",ru:"Образец из глубокой мантии"},hush:{en:"Hush",de:"Schnurr",es:"Hush",fr:"Chut",pt:"Silêncio",ru:"Тишина"},infinity:{en:"Infinity",de:"Unendlichkeit",es:"Infinity",fr:"Infini",pt:"Infinidade",ru:"Infinity"},insightentertainmentsuite:{en:"Insight Entertainment Suite",de:"Insight-Entertainment-Bibliothek",es:"Paquete de entretenimiento de Insight",fr:"Divertissements Insight",pt:"Suíte de Entretenimento Insight",ru:"Развлекательное устройство Insight"},lazarus:{en:"Lazarus",es:"Lazarus",fr:"Lazare",pt:"Lázaro",ru:"Лазарь"},microbialinhibitor:{en:"Microbial Inhibitor",de:"Mikrobieller Hemmstoff",es:"Inhibidor microbiano",fr:"Inhibiteur microbien",pt:"Inibidor Microbiótico",ru:"Микробный ингибитор"},nutritionalconcentrate:{en:"Nutritional Concentrate",de:"Nahrungskonzentrat",es:"Concentrado nutritivo",fr:"Concentré nutritif",pt:"Concentrado Nutricional",ru:"Питательный концентрат"},personaldocuments:{en:"Personal Documents",de:"Persönliche Dokumente",es:"Documentos personales",fr:"Documents personnels",pt:"Documentos Pessoais",ru:"Личные документы"},push:{en:"Push",es:"Push",fr:"Boost",ru:"Рывок"},shipschematic:{en:"Ship Schematic",de:"Schiffsplan",es:"Esquema de nave",fr:"Plan de vaisseau",pt:"Esquema de Nave",ru:"План корабля"},suitschematic:{en:"Suit Schematic",de:"Anzugplan",es:"Esquema de traje",fr:"Plan de combinaison",pt:"Esquema de Traje",ru:"Эскиз комбинезона"},surveillanceequipment:{en:"Surveillance Equipment",de:"Überwachungsausrüstung",es:"Equipo de supervivencia",fr:"Équipement de surveillance",pt:"Equipamento de Vigilância",ru:"Оборудование для наблюдения"},syntheticpathogen:{en:"Synthetic Pathogen",de:"Synthetischer Erreger",es:"Patógeno sintético",fr:"Pathogène de synthèse",pt:"Patógeno Sintético",ru:"Синтетический патоген"},universaltranslator:{en:"Universal Translator",de:"Universal-Übersetzer",es:"Traductor universal",fr:"Traducteur universel",pt:"Tradutor Universal",ru:"Универсальный переводчик"},vehicleschematic:{en:"Vehicle Schematic",de:"Fahrzeugplan",es:"Esquema de vehículo",fr:"Plan de véhicule",pt:"Esquema de Veículo",ru:"Чертеж транспорта"},weaponschematic:{en:"Weapon Schematic",de:"Waffenplan",es:"Esquema de arma",fr:"Plan d’arme",pt:"Esquema de Arma",ru:"Чертеж оружия"},pyrolyticcatalyst:{en:"Pyrolytic Catalyst",de:"Pyrolytischer Katalysator",es:"Catalizador pirolítico",fr:"Catalyseur pyrolytique",pt:"Catalisador Pirolítico",ru:"Пиролитический катализатор"},inorganiccontaminant:{en:"Inorganic Contaminant",de:"Anorganischer Schadstoff",es:"P. contaminante inorgánico",fr:"Contaminant inorganique",pt:"Contaminante inorgânico",ru:"Неорганический контаминант"},agriculturalprocesssample:{en:"Agricultural Process Sample",de:"Agrikulturverfahren-Probe",es:"Muestra de proceso agrícola",fr:"Échantillon de production agricole",pt:"Amostra de Processo Agrícola",ru:"Образец сельхозпроизводства"},chemicalprocesssample:{en:"Chemical Process Sample",de:"Chemieverfahren-Probe",es:"Muestra de proceso químico",fr:"Échantillon de production chimique",pt:"Amostra de Processo Químico",ru:"Образец химпроизводства"},refinementprocesssample:{en:"Refinement Process Sample",de:"Raffinerieverfahren-Probe",es:"Muestra de proceso refinado",fr:"Échantillon de production de raffinage",pt:"Amostra de Processo de Refino",ru:"Образец с очистного производства"},compressionliquefiedgas:{en:"Compression-Liquefied Gas",de:"Komprimiertes Flüssiggas",es:"Gas licuado comprimido",fr:"Gaz liquéfié",pt:"Gás Liquefeito Comprimido",ru:"Сжиженный газ"},degradedpowerregulator:{en:"Degraded Power Regulator",de:"Ausrangierter Energieregulator",es:"Regulador de potencia degradado",fr:"Régulateur de puissance endommagé",pt:"Regulador de Energia Degradado",ru:"Нерабочий регулятор мощности"},largecapacitypowerregulator:{en:"Power Regulator",de:"Energieregulator",es:"Regulador de potencia",fr:"Régulateur de puissance",pt:"Regulador de energia",ru:"Регулятор мощности"},operationscounterattackdata:{en:"Installation Intelligence Report",de:"Installation-Informationsbericht",es:"Informe de inteligencia sobre instalaciones",fr:"Rapport d’espionnage sur une installation",ru:"Разведывательный отчет об установке"},operationsstrikedata:{en:"Researcher Location Data",de:"Forscher-Standortdaten",es:"Coordenadas de investigadores",fr:"Données d’emplacement des chercheurs",ru:"Данные о местонахождении исследовательского персонала"},powerclassifieddata:{en:"Power Classified Data",de:"Geheime Daten der Macht",es:"Información clasificada de la potencia",fr:"Données classifiées de Puissance",ru:"Секретные данные державы"},poweremployeedata:{en:"Power Association Data",de:"Zugehörigkeitsdaten der Macht",es:"Información de asociación de potencia",fr:"Données d’association de Puissance",ru:"Данные о связях державы"},powerfinancialrecords:{en:"Power Industrial Data",de:"Industriedaten der Macht",es:"Datos industriales de la potencia",fr:"Données industrielles de Puissance",ru:"Данные о промышленности державы"},powermegashipdata:{en:"Power Megaship Data",de:"Macht-Megaschiff-Daten",es:"Datos de meganave de potencia",fr:"Données de méga-vaisseau de puissance",ru:"Данные о гигантском корабле державы"},powerpreparationspyware:{en:"Power Injection Malware",de:"Macht-Einspeisungs-Malware",es:"Malware de inyección de potencia",fr:"Logiciel malveillant d’injection de Puissance",ru:"ПО-инъектор"},powerpropagandadata:{en:"Power Political Data",de:"Politische Daten der Macht",es:"Información política de la potencia",fr:"Données politiques de Puissance",ru:"Данные о политической обстановке"},powerresearchdata:{en:"Power Research Data",de:"Forschungsdaten der Macht",es:"Datos de investigación de la potencia",fr:"Données de recherche de Puissance",ru:"Данные об исследованиях державы"},powerspyware:{en:"Power Tracker Malware",de:"Macht-Tracker-Malware",es:"Malware de seguimiento de potencia",fr:"Logiciel malveillant de traçage de Puissance",ru:"Отслеживающее вредоносное ПО"},powervirus:{en:"Power Virus",de:"Macht-Virus",es:"Virus de potencia",fr:"Virus de puissance",ru:"Вирусное ПО"},biomechanicalcomponent:{en:"Spire Refinery Compound",de:"Turm-Raffinerieverbindung",es:"Compuesto de refinería de agujas",fr:"Composé de raffinerie de flèche",ru:"Очищающий компонент шпиля"},nm_seed:{en:"Unica Seed",de:"Unica-Samen",es:"Semilla de Unica",fr:"Graine d’unica",ru:"Семя уники"},poweragriculture:{en:"Agricultural Sample",de:"Agrikulturverfahren-Probe",es:"Muestra de proceso agrícola",fr:"Échantillon de production agricole",ru:"Образец сельхозпроизводства"},powercomputer:{en:"Computer Parts",de:"Computerbauteile",es:"Piezas informáticas",fr:"Composants d’ordinateur",ru:"Компьютерные детали"},powerelectronics:{en:"Electronics Package",de:"Elektronikpaket",es:"Paquete de componentes electrónicos",fr:"Kit électronique",ru:"Набор электроники"},powerequipment:{en:"Personal Protective Equipment",de:"Persönliche Schutzausrüstung",es:"Equipamiento de protección personal",fr:"Équipement de protection personnel",ru:"Средства индивидуальной защиты"},powerexperiment:{en:"Experiment Prototype",de:"Experimenteller Prototyp",es:"Prototipo experimental",fr:"Prototype expérimental",ru:"Экспериментальный прототип"},powerextraction:{en:"Extraction Sample",de:"Extraktionsprobe",es:"Muestra de extracción",fr:"Échantillon d’extraction",ru:"Образец добычи"},powerindustrial:{en:"Industrial Component",de:"Industrielle Komponente",es:"Componente industrial",fr:"Composant industriel",ru:"Промышленный компонент"},powerinventory:{en:"Inventory Record",de:"Inventaraufzeichnung",es:"Registro de inventario",fr:"Registre de stock",ru:"Опись имущества"},powermedical:{en:"Medical Sample",de:"Medizinische Probe",es:"Muestra médica",fr:"Échantillon médical",ru:"Медицинский образец"},powermisccomputer:{en:"Data Storage Device",de:"Datenspeichergerät",es:"Dispositivo de almacenamiento de datos",fr:"Dispositif de stockage de données",ru:"Запоминающее устройство"},powermiscindust:{en:"Industrial Machinery",de:"Industrielle Maschinen",es:"Maquinaria industrial",fr:"Machines industrielles",ru:"Промышленные машины"},powerplaymilitary:{en:"Military Schematic",de:"Militärbauplan",es:"Plano militar",fr:"Plan militaire",ru:"Военный чертеж"},powerpower:{en:"Energy Regulator",de:"Energieregulator",es:"Regulador de energía",fr:"Régulateur énergétique",ru:"Энергорегулятор"},powerresearch:{en:"Research Notes",de:"Forschungsnotizen",es:"Notas de investigación",fr:"Notes de recherche",ru:"Исследовательские заметки"},powersecurity:{en:"Security Logs",de:"Sicherheitsprotokolle",es:"Registros de seguridad",fr:"Registres de sécurité",ru:"Журнал службы безопасности"},sabotagedcomponent:{en:"Contaminated Spire Compound",de:"Kontaminierte Turm-Komponente",es:"Compuesto de agujas contaminado",fr:"Composé de flèche contaminé",ru:"Загрязненный компонент шпиля"},smallcapacitypowerregulator:{en:"Small-Capacity Power Regulator",de:"Kleiner Energieregulator",es:"Regulador de potencia de capacidad reducida",fr:"Régulateur de puissance basse capacité",ru:"Регулятор мощности малой емкости"}};var MICRO_RESOURCE_NAMES=/* @__PURE__ */createLocalizedNameIndex(micro_resource_names_default);function getMicroResourceName(symbol,locale){return getLocalizedName(MICRO_RESOURCE_NAMES,symbol,locale,"getMicroResourceName","symbol")}export{getMicroResourceName};//# sourceMappingURL=chunk-GRSNX36B.js.map
@@ -1 +0,0 @@
1
- import{buildMaterialCatalogue}from"./chunk-GTEHRZPN.js";var materials_manufactured_default=[{symbol:"SalvagedAlloys",name:"Salvaged Alloys",elementSymbol:null,grade:1,line:"Alloys"},{symbol:"GalvanisingAlloys",name:"Galvanising Alloys",elementSymbol:null,grade:2,line:"Alloys"},{symbol:"PhaseAlloys",name:"Phase Alloys",elementSymbol:null,grade:3,line:"Alloys"},{symbol:"ProtoLightAlloys",name:"Proto Light Alloys",elementSymbol:null,grade:4,line:"Alloys"},{symbol:"ProtoRadiolicAlloys",name:"Proto Radiolic Alloys",elementSymbol:null,grade:5,line:"Alloys"},{symbol:"GridResistors",name:"Grid Resistors",elementSymbol:null,grade:1,line:"Capacitors"},{symbol:"HybridCapacitors",name:"Hybrid Capacitors",elementSymbol:null,grade:2,line:"Capacitors"},{symbol:"ElectrochemicalArrays",name:"Electrochemical Arrays",elementSymbol:null,grade:3,line:"Capacitors"},{symbol:"PolymerCapacitors",name:"Polymer Capacitors",elementSymbol:null,grade:4,line:"Capacitors"},{symbol:"MilitarySupercapacitors",name:"Military Supercapacitors",elementSymbol:null,grade:5,line:"Capacitors"},{symbol:"ChemicalStorageUnits",name:"Chemical Storage Units",elementSymbol:null,grade:1,line:"Chemical"},{symbol:"ChemicalProcessors",name:"Chemical Processors",elementSymbol:null,grade:2,line:"Chemical"},{symbol:"ChemicalDistillery",name:"Chemical Distillery",elementSymbol:null,grade:3,line:"Chemical"},{symbol:"ChemicalManipulators",name:"Chemical Manipulators",elementSymbol:null,grade:4,line:"Chemical"},{symbol:"PharmaceuticalIsolators",name:"Pharmaceutical Isolators",elementSymbol:null,grade:5,line:"Chemical"},{symbol:"CompactComposites",name:"Compact Composites",elementSymbol:null,grade:1,line:"Composite"},{symbol:"FilamentComposites",name:"Filament Composites",elementSymbol:null,grade:2,line:"Composite"},{symbol:"HighDensityComposites",name:"High Density Composites",elementSymbol:null,grade:3,line:"Composite"},{symbol:"FedProprietaryComposites",name:"Proprietary Composites",elementSymbol:null,grade:4,line:"Composite"},{symbol:"FedCoreComposites",name:"Core Dynamics Composites",elementSymbol:null,grade:5,line:"Composite"},{symbol:"BasicConductors",name:"Basic Conductors",elementSymbol:null,grade:1,line:"Conductive"},{symbol:"ConductiveComponents",name:"Conductive Components",elementSymbol:null,grade:2,line:"Conductive"},{symbol:"ConductiveCeramics",name:"Conductive Ceramics",elementSymbol:null,grade:3,line:"Conductive"},{symbol:"ConductivePolymers",name:"Conductive Polymers",elementSymbol:null,grade:4,line:"Conductive"},{symbol:"BiotechConductors",name:"Biotech Conductors",elementSymbol:null,grade:5,line:"Conductive"},{symbol:"CrystalShards",name:"Crystal Shards",elementSymbol:null,grade:1,line:"Crystals"},{symbol:"UncutFocusCrystals",name:"Flawed Focus Crystals",elementSymbol:null,grade:2,line:"Crystals"},{symbol:"FocusCrystals",name:"Focus Crystals",elementSymbol:null,grade:3,line:"Crystals"},{symbol:"RefinedFocusCrystals",name:"Refined Focus Crystals",elementSymbol:null,grade:4,line:"Crystals"},{symbol:"ExquisiteFocusCrystals",name:"Exquisite Focus Crystals",elementSymbol:null,grade:5,line:"Crystals"},{symbol:"Guardian_PowerCell",name:"Guardian Power Cell",elementSymbol:null,grade:1,line:"Guardian"},{symbol:"Guardian_Sentinel_WreckageComponents",name:"Guardian Sentinel Wreckage Components",elementSymbol:null,grade:1,line:"Guardian"},{symbol:"Guardian_PowerConduit",name:"Guardian Power Conduit",elementSymbol:null,grade:2,line:"Guardian"},{symbol:"Guardian_Sentinel_WeaponParts",name:"Guardian Sentinel Weapon Parts",elementSymbol:null,grade:3,line:"Guardian"},{symbol:"Guardian_TechComponent",name:"Guardian Technology Component",elementSymbol:null,grade:3,line:"Guardian"},{symbol:"HeatConductionWiring",name:"Heat Conduction Wiring",elementSymbol:null,grade:1,line:"Heat"},{symbol:"HeatDispersionPlate",name:"Heat Dispersion Plate",elementSymbol:null,grade:2,line:"Heat"},{symbol:"HeatExchangers",name:"Heat Exchangers",elementSymbol:null,grade:3,line:"Heat"},{symbol:"HeatVanes",name:"Heat Vanes",elementSymbol:null,grade:4,line:"Heat"},{symbol:"ProtoHeatRadiators",name:"Proto Heat Radiators",elementSymbol:null,grade:5,line:"Heat"},{symbol:"MechanicalScrap",name:"Mechanical Scrap",elementSymbol:null,grade:1,line:"Mechanical Components"},{symbol:"MechanicalEquipment",name:"Mechanical Equipment",elementSymbol:null,grade:2,line:"Mechanical Components"},{symbol:"MechanicalComponents",name:"Mechanical Components",elementSymbol:null,grade:3,line:"Mechanical Components"},{symbol:"ConfigurableComponents",name:"Configurable Components",elementSymbol:null,grade:4,line:"Mechanical Components"},{symbol:"ImprovisedComponents",name:"Improvised Components",elementSymbol:null,grade:5,line:"Mechanical Components"},{symbol:"WornShieldEmitters",name:"Worn Shield Emitters",elementSymbol:null,grade:1,line:"Shielding"},{symbol:"ShieldEmitters",name:"Shield Emitters",elementSymbol:null,grade:2,line:"Shielding"},{symbol:"ShieldingSensors",name:"Shielding Sensors",elementSymbol:null,grade:3,line:"Shielding"},{symbol:"CompoundShielding",name:"Compound Shielding",elementSymbol:null,grade:4,line:"Shielding"},{symbol:"ImperialShielding",name:"Imperial Shielding",elementSymbol:null,grade:5,line:"Shielding"},{symbol:"tg_abrasion03",name:"Hardened Surface Fragments",elementSymbol:null,grade:1,line:"Thargoid"},{symbol:"tg_causticshard",name:"Caustic Shard",elementSymbol:null,grade:2,line:"Thargoid"},{symbol:"unknowncorechip",name:"Tactical Core Chip",elementSymbol:null,grade:2,line:"Thargoid"},{symbol:"UnknownCarapace",name:"Thargoid Carapace",elementSymbol:null,grade:2,line:"Thargoid"},{symbol:"TG_BioMechanicalConduits",name:"Bio-Mechanical Conduits",elementSymbol:null,grade:3,line:"Thargoid"},{symbol:"tg_causticgeneratorparts",name:"Corrosive Mechanisms",elementSymbol:null,grade:3,line:"Thargoid"},{symbol:"tg_abrasion02",name:"Phasing Membrane Residue",elementSymbol:null,grade:3,line:"Thargoid"},{symbol:"UnknownEnergyCell",name:"Thargoid Energy Cell",elementSymbol:null,grade:3,line:"Thargoid"},{symbol:"TG_WreckageComponents",name:"Wreckage Components",elementSymbol:null,grade:3,line:"Thargoid"},{symbol:"tg_causticcrystal",name:"Caustic Crystal",elementSymbol:null,grade:4,line:"Thargoid"},{symbol:"UnknownTechnologyComponents",name:"Thargoid Technological Components",elementSymbol:null,grade:4,line:"Thargoid"},{symbol:"TG_WeaponParts",name:"Weapon Parts",elementSymbol:null,grade:4,line:"Thargoid"},{symbol:"tg_abrasion01",name:"Heat Exposure Specimen",elementSymbol:null,grade:5,line:"Thargoid"},{symbol:"TG_PropulsionElement",name:"Propulsion Elements",elementSymbol:null,grade:5,line:"Thargoid"},{symbol:"UnknownEnergySource",name:"Sensor Fragment",elementSymbol:null,grade:5,line:"Thargoid"},{symbol:"UnknownOrganicCircuitry",name:"Thargoid Organic Circuitry",elementSymbol:null,grade:5,line:"Thargoid"},{symbol:"TemperedAlloys",name:"Tempered Alloys",elementSymbol:null,grade:1,line:"Thermic"},{symbol:"HeatResistantCeramics",name:"Heat Resistant Ceramics",elementSymbol:null,grade:2,line:"Thermic"},{symbol:"PrecipitatedAlloys",name:"Precipitated Alloys",elementSymbol:null,grade:3,line:"Thermic"},{symbol:"ThermicAlloys",name:"Thermic Alloys",elementSymbol:null,grade:4,line:"Thermic"},{symbol:"MilitaryGradeAlloys",name:"Military Grade Alloys",elementSymbol:null,grade:5,line:"Thermic"}];var MANUFACTURED_MATERIALS=buildMaterialCatalogue(materials_manufactured_default,"manufactured");export{MANUFACTURED_MATERIALS};//# sourceMappingURL=chunk-ITKZKREP.js.map