if angelsmods.industries.components then
  -------------------------------------------------------------------------------
  -- ELECTRONIC COMPONENTS ------------------------------------------------------
  -------------------------------------------------------------------------------
  -- subcomponents
  angelsmods.functions.allow_productivity("circuit-resistor")
  angelsmods.functions.allow_productivity("circuit-transistor")
  angelsmods.functions.allow_productivity("circuit-microchip")
  angelsmods.functions.allow_productivity("circuit-transformer")
  angelsmods.functions.allow_productivity("circuit-cpu")
  -- components
  angelsmods.functions.allow_productivity("electronic-parts-resistor")
  angelsmods.functions.allow_productivity("electronic-parts-transistor")
  angelsmods.functions.allow_productivity("electronic-parts-microchip")
  angelsmods.functions.allow_productivity("electronic-parts-transformer")
  angelsmods.functions.allow_productivity("electronic-parts-cpu")
  -- boards
  angelsmods.functions.allow_productivity("circuit-grey-board")
  angelsmods.functions.allow_productivity("circuit-grey-board-alternative")
  angelsmods.functions.allow_productivity("circuit-red-board")
  angelsmods.functions.allow_productivity("circuit-green-board")
  angelsmods.functions.allow_productivity("circuit-orange-board")
  angelsmods.functions.allow_productivity("circuit-blue-board")
  angelsmods.functions.allow_productivity("circuit-yellow-board")
  -- circuit boards
  angelsmods.functions.allow_productivity("circuit-grey")
  angelsmods.functions.allow_productivity("circuit-red")
  angelsmods.functions.allow_productivity("circuit-green")
  angelsmods.functions.allow_productivity("circuit-orange")
  angelsmods.functions.allow_productivity("circuit-blue")
  angelsmods.functions.allow_productivity("circuit-yellow")
  -- loaded circuit boards
  angelsmods.functions.allow_productivity("circuit-red-loaded")
  angelsmods.functions.allow_productivity("circuit-green-loaded")
  angelsmods.functions.allow_productivity("circuit-orange-loaded")
  angelsmods.functions.allow_productivity("circuit-blue-loaded")
  angelsmods.functions.allow_productivity("circuit-yellow-loaded")

  -------------------------------------------------------------------------------
  -- MECHANICAL COMPONENTS ------------------------------------------------------
  -------------------------------------------------------------------------------
  -- motor casting
  -- no productivity, productivity is obtained through metallurgy smelting
  -- motor blocks
  angelsmods.functions.allow_productivity("motor-block-1")
  angelsmods.functions.allow_productivity("motor-block-2")
  angelsmods.functions.allow_productivity("motor-block-3")
  angelsmods.functions.allow_productivity("motor-block-4")
  angelsmods.functions.allow_productivity("motor-block-5")
  -- motors
  angelsmods.functions.allow_productivity("motor-1")
  angelsmods.functions.allow_productivity("motor-2")
  angelsmods.functions.allow_productivity("motor-3")
  angelsmods.functions.allow_productivity("motor-4")
  angelsmods.functions.allow_productivity("motor-5")
  -- subcomponents
  angelsmods.functions.allow_productivity("angels-gear")
  angelsmods.functions.allow_productivity("angels-axle")
  angelsmods.functions.allow_productivity("angels-roller-chain")
  angelsmods.functions.allow_productivity("angels-spring")
  angelsmods.functions.allow_productivity("angels-bearing")
  -- components
  angelsmods.functions.allow_productivity("mechanical-parts-gear")
  angelsmods.functions.allow_productivity("mechanical-parts-axle")
  angelsmods.functions.allow_productivity("mechanical-parts-roller-chain")
  angelsmods.functions.allow_productivity("mechanical-parts-spring")
  angelsmods.functions.allow_productivity("mechanical-parts-bearing")

  -------------------------------------------------------------------------------
  -- CONSTRUCTION COMPONENTS ----------------------------------------------------
  -------------------------------------------------------------------------------
  -- grates
  angelsmods.functions.allow_productivity("grate-iron")
  angelsmods.functions.allow_productivity("grate-steel")
  angelsmods.functions.allow_productivity("grate-aluminium")
  angelsmods.functions.allow_productivity("grate-titanium")
  angelsmods.functions.allow_productivity("grate-tungsten")
  -- frames
  angelsmods.functions.allow_productivity("construction-frame-1")
  angelsmods.functions.allow_productivity("construction-frame-2")
  angelsmods.functions.allow_productivity("construction-frame-3")
  angelsmods.functions.allow_productivity("construction-frame-4")
  angelsmods.functions.allow_productivity("construction-frame-5")
  -- subcomponents
  angelsmods.functions.allow_productivity("angels-girder")
  angelsmods.functions.allow_productivity("angels-rivet")
  angelsmods.functions.allow_productivity("angels-bracket")
  angelsmods.functions.allow_productivity("angels-plating")
  angelsmods.functions.allow_productivity("angels-strut")
  -- components
  angelsmods.functions.allow_productivity("construction-components-girder")
  angelsmods.functions.allow_productivity("construction-components-rivet")
  angelsmods.functions.allow_productivity("construction-components-bracket")
  angelsmods.functions.allow_productivity("construction-components-plating")
  angelsmods.functions.allow_productivity("construction-components-strut")

  -------------------------------------------------------------------------------
  -- WEAPON COMPONENTS ----------------------------------------------------------
  -------------------------------------------------------------------------------
  -- weapon bodies
  angelsmods.functions.allow_productivity("body-1")
  angelsmods.functions.allow_productivity("body-2")
  angelsmods.functions.allow_productivity("body-3")
  angelsmods.functions.allow_productivity("body-4")
  angelsmods.functions.allow_productivity("body-5")
  -- weapons
  angelsmods.functions.allow_productivity("weapon-1")
  angelsmods.functions.allow_productivity("weapon-2")
  angelsmods.functions.allow_productivity("weapon-3")
  angelsmods.functions.allow_productivity("weapon-4")
  angelsmods.functions.allow_productivity("weapon-5")
  -- subcomponents
  angelsmods.functions.allow_productivity("angels-trigger")
  angelsmods.functions.allow_productivity("angels-explosionchamber")
  angelsmods.functions.allow_productivity("angels-fluidchamber")
  angelsmods.functions.allow_productivity("angels-energycrystal")
  angelsmods.functions.allow_productivity("angels-acceleratorcoil")
  -- components
  angelsmods.functions.allow_productivity("weapon-parts-trigger")
  angelsmods.functions.allow_productivity("weapon-parts-explosionchamber")
  angelsmods.functions.allow_productivity("weapon-parts-fluidchamber")
  angelsmods.functions.allow_productivity("weapon-parts-energycrystal")
  angelsmods.functions.allow_productivity("weapon-parts-acceleratorcoil")

  -------------------------------------------------------------------------------
  -- CABLING COMPONENTS ---------------------------------------------------------
  -------------------------------------------------------------------------------
  -- shielding
  angelsmods.functions.allow_productivity("cable-shielding-1")
  angelsmods.functions.allow_productivity("cable-shielding-2")
  angelsmods.functions.allow_productivity("cable-shielding-3")
  angelsmods.functions.allow_productivity("cable-shielding-4")
  angelsmods.functions.allow_productivity("cable-shielding-5")
  -- harness (subcomponents)
  angelsmods.functions.allow_productivity("cable-harness-1")
  angelsmods.functions.allow_productivity("cable-harness-2")
  angelsmods.functions.allow_productivity("cable-harness-3")
  angelsmods.functions.allow_productivity("cable-harness-4")
  angelsmods.functions.allow_productivity("cable-harness-5")
  -- cabling (components)
  angelsmods.functions.allow_productivity("cabling-cable-harness-1")
  angelsmods.functions.allow_productivity("cabling-cable-harness-2")
  angelsmods.functions.allow_productivity("cabling-cable-harness-3")
  angelsmods.functions.allow_productivity("cabling-cable-harness-4")
  angelsmods.functions.allow_productivity("cabling-cable-harness-5")
  -- servo motor
  angelsmods.functions.allow_productivity("angels-servo-motor-1")
  angelsmods.functions.allow_productivity("angels-servo-motor-2")
  angelsmods.functions.allow_productivity("angels-servo-motor-3")
  angelsmods.functions.allow_productivity("angels-servo-motor-4")
  angelsmods.functions.allow_productivity("angels-servo-motor-5")

  -------------------------------------------------------------------------------
  -- BATTERY COMPONENTS ---------------------------------------------------------
  -------------------------------------------------------------------------------
  -- battery casing
  angelsmods.functions.allow_productivity("battery-casing-1")
  angelsmods.functions.allow_productivity("battery-casing-2")
  angelsmods.functions.allow_productivity("battery-casing-3")
  angelsmods.functions.allow_productivity("battery-casing-4")
  angelsmods.functions.allow_productivity("battery-casing-5")
  angelsmods.functions.allow_productivity("battery-casing-6")
  -- battery frame
  angelsmods.functions.allow_productivity("battery-frame-1")
  angelsmods.functions.allow_productivity("battery-frame-2")
  angelsmods.functions.allow_productivity("battery-frame-3")
  angelsmods.functions.allow_productivity("battery-frame-4")
  angelsmods.functions.allow_productivity("battery-frame-5")
  angelsmods.functions.allow_productivity("battery-frame-6")
  -- battery anode
  angelsmods.functions.allow_productivity("battery-anode-1")
  angelsmods.functions.allow_productivity("battery-anode-2")
  angelsmods.functions.allow_productivity("battery-anode-3")
  angelsmods.functions.allow_productivity("battery-anode-4")
  angelsmods.functions.allow_productivity("battery-anode-5")
  angelsmods.functions.allow_productivity("battery-anode-6")
  -- battery cathode
  angelsmods.functions.allow_productivity("battery-cathode-1")
  angelsmods.functions.allow_productivity("battery-cathode-2")
  angelsmods.functions.allow_productivity("battery-cathode-3")
  angelsmods.functions.allow_productivity("battery-cathode-4")
  angelsmods.functions.allow_productivity("battery-cathode-5")
  angelsmods.functions.allow_productivity("battery-cathode-6")
  -- battery electrolyte
  angelsmods.functions.allow_productivity("battery-electrolyte-1")
  angelsmods.functions.allow_productivity("battery-electrolyte-2")
  angelsmods.functions.allow_productivity("battery-electrolyte-3")
  angelsmods.functions.allow_productivity("battery-electrolyte-4")
  angelsmods.functions.allow_productivity("battery-electrolyte-5")
  angelsmods.functions.allow_productivity("battery-electrolyte-6")
  -- battery
  angelsmods.functions.allow_productivity("battery-1")
  angelsmods.functions.allow_productivity("battery-2")
  angelsmods.functions.allow_productivity("battery-3")
  angelsmods.functions.allow_productivity("battery-4")
  angelsmods.functions.allow_productivity("battery-5")
  angelsmods.functions.allow_productivity("battery-6")
end