- type: entity
  id: AutolatheMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: autolathe machine board
  description: A machine printed circuit board for an autolathe.
  components:
    - type: MachineBoard
      prototype: Autolathe
      requirements: # Frontier
        MatterBin: 3 # Frontier stackRequirements<requirements
        Manipulator: 1 # Frontier stackRequirements<requirements
      stackRequirements:
        # Manipulator: 4 # Frontier
        Glass: 1

- type: entity
  parent: BaseMachineCircuitboard
  id: AutolatheHyperConvectionMachineCircuitboard
  name: hyper convection autolathe machine board
  description: A machine printed circuit board for a hyper convection autolathe.
  components:
  - type: MachineBoard
    prototype: AutolatheHyperConvection
    requirements: # Frontier
      MatterBin: 3 # Frontier stackRequirements<requirements
    stackRequirements:
      # Manipulator: 3 # Frontier
      Glass: 1
    tagRequirements:
      Igniter:
        amount: 1
        defaultPrototype: Igniter

- type: entity
  id: ProtolatheMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: protolathe machine board
  description: A machine printed circuit board for a protolathe.
  components:
  - type: Sprite
    state: science
  - type: MachineBoard
    prototype: Protolathe
    requirements: # Frontier
      MatterBin: 2 # Frontier stackRequirements<requirements
      Manipulator: 2 # Frontier stackRequirements<requirements
   # stackRequirements: # Frontier
      # Manipulator: 4 # Frontier
    tagRequirements:
      GlassBeaker:
        amount: 2
        defaultPrototype: Beaker

- type: entity
  parent: BaseMachineCircuitboard
  id: ProtolatheHyperConvectionMachineCircuitboard
  name: hyper convection protolathe machine board
  description: A machine printed circuit board for a hyper convection protolathe.
  components:
  - type: Sprite
    state: science
  - type: MachineBoard
    prototype: ProtolatheHyperConvection
    requirements: # Frontier
      MatterBin: 4 # Frontier stackRequirements<requirements
    # stackRequirements: # Frontier
    #   Manipulator: 4 # Frontier
    tagRequirements:
      GlassBeaker:
        amount: 2
        defaultPrototype: Beaker
      Igniter:
        amount: 1
        defaultPrototype: Igniter

- type: entity
  id: BiofabricatorMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: biocube fabricator machine board
  description: A machine printed circuit board for a biocube fabricator.
  components:
  - type: Sprite
    state: service
  - type: MachineBoard
    prototype: Biofabricator
    requirements: # Frontier
      MatterBin: 4 # Frontier stackRequirements<requirements
    stackRequirements:
      # Manipulator: 4 # Frontier
      Glass: 1

- type: entity
  id: SecurityTechFabCircuitboard
  parent: BaseMachineCircuitboard
  name: security techfab machine board
  categories: [ HideSpawnMenu ] # Frontier
  description: A machine printed circuit board for a security techfab.
  components:
    - type: Sprite
      state: security
    - type: MachineBoard
      prototype: SecurityTechFab
      requirements: # Frontier
        MatterBin: 2 # Frontier stackRequirements<requirements
        Manipulator: 2 # Frontier stackRequirements<requirements
      # stackRequirements: # Frontier
      #   Manipulator: 4 # Frontier
      tagRequirements:
        GlassBeaker:
          amount: 2
          defaultPrototype: Beaker

- type: entity
  id: AmmoTechFabCircuitboard
  parent: BaseMachineCircuitboard
  name: ammo techfab circuit board
  description: A machine printed circuit board for an ammo techfab.
  components:
    - type: Sprite
      state: security
    - type: MachineBoard
      prototype: AmmoTechFab
      requirements: # Frontier
        MatterBin: 1 # Frontier
        Manipulator: 1 # Frontier
      # stackRequirements: # Frontier
      #   Manipulator: 2 # Frontier

- type: entity
  id: MedicalTechFabCircuitboard
  parent: BaseMachineCircuitboard
  name: medical techfab machine board
  description: A machine printed circuit board for a medical techfab.
  components:
    - type: Sprite
      state: medical
    - type: MachineBoard
      prototype: MedicalTechFab
      requirements: # Frontier
        MatterBin: 2 # Frontier
        Manipulator: 2 # Frontier
      # stackRequirements: # Frontier
        # Manipulator: 4 # Frontier
      tagRequirements:
        GlassBeaker:
          amount: 2
          defaultPrototype: Beaker
    - type: StealTarget
      stealGroup: MedicalTechFabCircuitboard
    - type: PirateBountyItem # Frontier
      id: MedicalTechFabCircuitboard # Frontier

- type: entity
  id: CircuitImprinterMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: circuit imprinter machine board
  components:
  - type: Sprite
    state: science
  - type: MachineBoard
    prototype: CircuitImprinter
    requirements: # Frontier
      MatterBin: 1 # Frontier
      Manipulator: 1 # Frontier
    # stackRequirements: # Frontier
    #   Manipulator: 2 # Frontier
    tagRequirements:
      GlassBeaker:
        amount: 2
        defaultPrototype: Beaker

- type: entity
  parent: BaseMachineCircuitboard
  id: CircuitImprinterHyperConvectionMachineCircuitboard
  name: hyper convection circuit imprinter machine board
  description: A machine printed circuit board for a hyper convection circuit imprinter.
  components:
  - type: Sprite
    state: science
  - type: MachineBoard
    prototype: CircuitImprinterHyperConvection
    requirements: # Frontier
      MatterBin: 2 # Frontier
    # stackRequirements: # Frontier
    #   Manipulator: 2 # Frontier
    tagRequirements:
      GlassBeaker:
        amount: 2
        defaultPrototype: Beaker
      Igniter:
        amount: 1
        defaultPrototype: Igniter

- type: entity
  id: ExosuitFabricatorMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: exosuit fabricator machine board
  components:
  - type: Sprite
    state: science
  - type: MachineBoard
    prototype: ExosuitFabricator
    requirements: # Frontier
      MatterBin: 1 # Frontier
      Manipulator: 3 # Frontier
    stackRequirements:
      # Manipulator: 4 # Frontier
      Glass: 5
  - type: GuideHelp
    guides:
    - Robotics

# yes i know this prototype name is long i'm just following conventions
- type: entity
  id: ResearchAndDevelopmentServerMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: R&D server machine board
  description: A machine printed circuit board for the R&D server.
  components:
  - type: Sprite
    state: science
  - type: MachineBoard
    prototype: ResearchAndDevelopmentServer
    stackRequirements:
      Plasma: 5
  - type: BindToStation # Frontier
    enabled: false # Frontier - should be draggable between stations

- type: entity
  id: BiogeneratorMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: biogenerator machine board
  description: A machine printed circuit board for a biogenerator.
  components:
  - type: Sprite
    state: service
  - type: MachineBoard
    prototype: Biogenerator
    # requirements: # Frontier
    #   MatterBin: 2 # Frontier
    # stackRequirements:
    #   Manipulator: 2
    tagRequirements:
      GlassBeaker:
        amount: 1
        defaultPrototype: Beaker

- type: entity
  id: UniformPrinterMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: uniform printer machine board
  components:
  - type: MachineBoard
    prototype: UniformPrinter
    requirements: # Frontier
      MatterBin: 1 # Frontier stackRequirements<requirements
      Manipulator: 2 # Frontier stackRequirements<requirements
    # stackRequirements: # Frontier
    #   Manipulator: 3 # Frontier

- type: entity
  id: VaccinatorMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: vaccinator machine board
  components:
  - type: Sprite
    state: medical
  - type: MachineBoard
    prototype: Vaccinator
    requirements: # Frontier
      MatterBin: 1 # Frontier stackRequirements<requirements
      Manipulator: 1 # Frontier stackRequirements<requirements
    stackRequirements:
      # Manipulator: 2 # Frontier
      Cable: 5
    tagRequirements:
        GlassBeaker:
          amount: 1
          defaultPrototype: Beaker

- type: entity
  id: DiagnoserMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: diagnoser machine board
  components:
  - type: Sprite
    state: medical
  - type: MachineBoard
    prototype: DiseaseDiagnoser
    stackRequirements:
      Cable: 5
    tagRequirements:
      GlassBeaker:
        amount: 1
        defaultPrototype: Beaker
    componentRequirements:
      BotanySwab:
        amount: 1
        defaultPrototype: DiseaseSwab

- type: entity
  id: ArtifactAnalyzerMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: artifact analyzer machine board
  description: A machine printed circuit board for an artifact analyzer.
  components:
    - type: Sprite
      state: science
    - type: MachineBoard
      prototype: MachineArtifactAnalyzer
      requirements: # Frontier
        Manipulator: 3 # Frontier
        Capacitor: 1 # Frontier
      stackRequirements:
        # Manipulator: 1 # Frontier
        Glass: 5
    - type: PirateBountyItem # Frontier
      id: ArtifactAnalyzerMachineCircuitboard # Frontier

- type: entity
  id: ArtifactCrusherMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: artifact crusher machine board
  description: A machine printed circuit board for an artifact crusher.
  components:
  - type: Sprite
    state: science
  - type: MachineBoard
    prototype: MachineArtifactCrusher
    requirements: # Frontier
      Manipulator: 2 # Frontier stackRequirements<requirements
    stackRequirements:
      Glass: 1
      Steel: 5

- type: entity
  parent: BaseMachineCircuitboard
  id: AnomalyVesselCircuitboard
  name: anomaly vessel machine board
  description: A machine printed circuit board for an anomaly vessel.
  components:
    - type: Sprite
      state: science
    - type: MachineBoard
      prototype: MachineAnomalyVessel
      requirements: # Frontier
        Capacitor: 3 # Frontier
      stackRequirements:
        # Manipulator: 3 # Frontier
        Cable: 1
        PlasmaGlass: 10

- type: entity
  parent: BaseMachineCircuitboard
  id: AnomalyVesselExperimentalCircuitboard
  name: experimental anomaly vessel machine board
  description: A machine printed circuit board for an experimental anomaly vessel.
  components:
  - type: Sprite
    state: science
  - type: MachineBoard
    prototype: MachineAnomalyVesselExperimental
    requirements: # Frontier
      Capacitor: 3 # Frontier
    stackRequirements:
      # Manipulator: 3 # Frontier
      Cable: 5
      PlasmaGlass: 15
      MetalRod: 4

- type: entity
  parent: BaseMachineCircuitboard
  id: AnomalySynchronizerCircuitboard
  name: anomaly synchronizer machine board
  description: A machine printed circuit board for an anomaly synchronizer.
  components:
    - type: Sprite
      state: science
    - type: MachineBoard
      prototype: MachineAnomalySynchronizer
      requirements: # Frontier
        Manipulator: 2 # Frontier
        Capacitor: 5 # Frontier
      stackRequirements:
        # Manipulator: 7 # Frontier
        PlasmaGlass: 5
        Cable: 5

- type: entity
  parent: BaseMachineCircuitboard
  id: APECircuitboard
  name: A.P.E. machine board
  description: A machine printed circuit board for an A.P.E.
  components:
    - type: Sprite
      state: science
    - type: MachineBoard
      prototype: MachineAPE
      requirements: # Frontier
        Capacitor: 2 # Frontier
      stackRequirements:
        # Manipulator: 2 # Frontier
        Cable: 1
        Glass: 1
    - type: BindToStation # Frontier
      enabled: false # Frontier - should be draggable between stations

- type: entity
  id: ThermomachineFreezerMachineCircuitBoard
  parent: BaseMachineCircuitboard
  name: freezer thermomachine machine board
  description: Looks like you could use a screwdriver to change the board type.
  components:
  - type: Sprite
    state: engineering
  - type: MachineBoard
    prototype: GasThermoMachineFreezer
    requirements: # Frontier
      MatterBin: 2 # Frontier
      Capacitor: 2 # Frontier
    stackRequirements:
      # Manipulator: 4 # Frontier
      Cable: 5
  - type: Construction
    deconstructionTarget: null
    graph: ThermomachineBoard
    node: freezer

- type: entity
  id: ThermomachineHeaterMachineCircuitBoard
  parent: BaseMachineCircuitboard
  name: heater thermomachine machine board
  description: Looks like you could use a screwdriver to change the board type.
  components:
  - type: Sprite
    state: engineering
  - type: MachineBoard
    prototype: GasThermoMachineHeater
    requirements: # Frontier
      MatterBin: 2 # Frontier
      Capacitor: 2 # Frontier
    stackRequirements:
      # Manipulator: 4 # Frontier
      Cable: 5
  - type: Construction
    graph: ThermomachineBoard
    deconstructionTarget: null
    node: heater

- type: entity
  parent: BaseMachineCircuitboard
  id: HellfireFreezerMachineCircuitBoard
  name: hellfire freezer machine board
  description: Looks like you could use a screwdriver to change the board type.
  components:
  - type: Sprite
    state: engineering
  - type: MachineBoard
    prototype: GasThermoMachineHellfireFreezer
    requirements: # Frontier
      MatterBin: 2 # Frontier
      Capacitor: 2 # Frontier
    stackRequirements:
      # Manipulator: 4 # Frontier
      Plasma: 1
  - type: Construction
    deconstructionTarget: null
    graph: ThermomachineBoard
    node: hellfirefreezer

- type: entity
  parent: BaseMachineCircuitboard
  id: HellfireHeaterMachineCircuitBoard
  name: hellfire heater machine board
  description: Looks like you could use a screwdriver to change the board type.
  components:
  - type: Sprite
    state: engineering
  - type: MachineBoard
    prototype: GasThermoMachineHellfireHeater
    requirements: # Frontier
      MatterBin: 2 # Frontier
      Capacitor: 2 # Frontier
    stackRequirements:
      # Manipulator: 4 # Frontier
      Plasma: 1
  - type: Construction
    graph: ThermomachineBoard
    deconstructionTarget: null
    node: hellfireheater

- type: entity
  id: CondenserMachineCircuitBoard
  parent: BaseMachineCircuitboard
  name: condenser machine board
  description: A machine printed circuit board for a condenser.
  components:
  - type: Sprite
    state: engineering
  - type: MachineBoard
    prototype: BaseGasCondenser
    requirements: # Frontier
      MatterBin: 1 # Frontier
    stackRequirements:
      # Manipulator: 1 # Frontier
      Glass: 1

- type: entity
  id: PortableScrubberMachineCircuitBoard
  parent: BaseMachineCircuitboard
  name: portable scrubber machine board
  description: A machine printed circuit board for a portable scrubber.
  components:
  - type: Sprite
    state: engineering
  - type: MachineBoard
    prototype: PortableScrubber
    requirements: # Frontier
      MatterBin: 1 # Frontier
      Manipulator: 2 # Frontier
    stackRequirements:
      # Manipulator: 3 # Frontier
      Cable: 5
      Glass: 2
  - type: BindToStation # Frontier
    enabled: false # Frontier - should be draggable between stations

- type: entity
  id: SpaceHeaterMachineCircuitBoard
  parent: BaseMachineCircuitboard
  name: space heater machine board
  description: A machine printed circuit board for a space heater.
  components:
  - type: Sprite
    state: engineering
  - type: MachineBoard
    prototype: SpaceHeater
    requirements: # Frontier
      MatterBin: 1 # Frontier
      Capacitor: 2 # Frontier
    stackRequirements:
      # Manipulator: 3 # Frontier
      Cable: 5

- type: entity
  id: CloningPodMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: cloning pod machine board
  description: A machine printed circuit board for a cloning pod.
  components:
    - type: Sprite
      state: medical
    - type: MachineBoard
      prototype: CloningPod
      requirements: # Frontier
        MatterBin: 2 # Frontier
        Manipulator: 2 # Frontier
      stackRequirements:
        # Manipulator: 4 # Frontier
        Glass: 1
        Cable: 1

- type: entity
  id: MedicalScannerMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: medical scanner machine board
  description: A machine printed circuit board for a medical scanner.
  components:
    - type: Sprite
      state: medical
    - type: MachineBoard
      prototype: MedicalScanner
      requirements: # Frontier
        Capacitor: 1 # Frontier
      stackRequirements:
        # Manipulator: 1 # Frontier
        Glass: 5
        Cable: 1

- type: entity
  id: CrewMonitoringServerMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: crew monitoring server machine board
  description: A machine printed circuit board for a crew monitoring server.
  components:
    - type: MachineBoard
      prototype: CrewMonitoringServer
      stackRequirements:
        Steel: 1
        Cable: 2

- type: entity
  id: CryoPodMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: cryo pod machine board
  description: A machine printed circuit board for a cryo pod.
  components:
    - type: Sprite
      state: medical
    - type: MachineBoard
      prototype: CryoPod
      stackRequirements:
        Glass: 5
        Cable: 1

- type: entity
  id: ChemMasterMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: ChemMaster 4000 machine board
  description: A machine printed circuit board for a ChemMaster 4000.
  components:
    - type: Sprite
      state: medical
    - type: MachineBoard
      prototype: ChemMaster
      requirements: # Frontier
        Capacitor: 1 # Frontier stackRequirements<requirements
      stackRequirements:
        # Manipulator: 1 # Frontier
        Glass: 1
        Cable: 1
      tagRequirements:
        GlassBeaker:
          amount: 2
          defaultPrototype: Beaker

- type: entity
  id: ChemDispenserMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: chem dispenser machine board
  description: A machine printed circuit board for a chem dispenser.
  components:
    - type: Sprite
      state: medical
    - type: MachineBoard
      prototype: ChemDispenserEmpty
      requirements: # Frontier
        # Capacitor: 1 # Frontier stackRequirements<requirements
        MatterBin: 1 # Frontier: upgrades number of stored jugs
      stackRequirements:
        # Manipulator: 1 # Frontier
        Glass: 1
        Steel: 3
      tagRequirements:
        GlassBeaker:
          amount: 2
          defaultPrototype: Beaker

- type: entity
  id: BiomassReclaimerMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: biomass reclaimer machine board
  description: A machine printed circuit board for a biomass reclaimer.
  components:
  - type: Sprite
    state: medical
  - type: MachineBoard
    prototype: BiomassReclaimer
    requirements: # Frontier
      MatterBin: 2 # Frontier
      Manipulator: 1 # Frontier
    stackRequirements:
      # Manipulator: 3 # Frontier
      Steel: 5
    tagRequirements:
      Knife:
        amount: 2
        defaultPrototype: KitchenKnife
        examineName: construction-insert-info-examine-name-knife

- type: entity
  id: HydroponicsTrayMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: hydroponics tray machine board
  description: A machine printed circuit board for a hydroponics tray.
  components:
    - type: Sprite
      state: service
    - type: MachineBoard
      prototype: HydroponicsTrayEmpty
      stackRequirements:
        # replacing the console screen
        Glass: 5
        Cable: 2
      tagRequirements:
        GlassBeaker:
          amount: 2
          defaultPrototype: Beaker

- type: entity
  id: SeedExtractorMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: seed extractor machine board
  description: A machine printed circuit board for a seed extractor.
  components:
    - type: Sprite
      state: service
    - type: MachineBoard
      prototype: SeedExtractor
      requirements: # Frontier
        Manipulator: 2 # Frontier
        Capacitor: 1 # Frontier
      stackRequirements:
        # Manipulator: 3 # Frontier
        # replacing the console screen
        Glass: 1
        Cable: 2

- type: entity
  id: SMESMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: SMES machine board
  description: A machine printed circuit board for a SMES.
  components:
    - type: Sprite
      sprite: Objects/Misc/module.rsi
      state: power_mod
    - type: MachineBoard
      prototype: SMESBasicEmpty
      requirements: # Frontier
        Capacitor: 1 # Frontier
        PowerCell: 4 # Frontier
      stackRequirements:
        # Manipulator: 1 # Frontier
        CableHV: 10

- type: entity
  id: SMESAdvancedMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: advanced SMES machine board
  description: A machine printed circuit board for an Advanced SMES.
  components:
  - type: Sprite
    sprite: Objects/Misc/module.rsi
    state: power_mod
  - type: MachineBoard
    prototype: SMESAdvancedEmpty
    requirements: # Frontier
        Capacitor: 2 # Frontier
        PowerCell: 8 # Frontier
    stackRequirements:
      # Manipulator: 2 # Frontier
      # PowerCell: 4 # Frontier
      CableHV: 20

- type: entity
  id: CellRechargerCircuitboard
  parent: BaseMachineCircuitboard
  name: cell recharger machine board
  description: A machine printed circuit board for a cell recharger.
  categories: [HideSpawnMenu] # Frontier: use recharger machine board
  components:
    - type: Sprite
      sprite: Objects/Misc/module.rsi
      state: charger_APC
    - type: MachineBoard
      prototype: PowerCellRecharger
      requirements: # Frontier
        Capacitor: 2 # Frontier
      stackRequirements:
        # Manipulator: 2 # Frontier
        Cable: 5
    - type: PhysicalComposition
      materialComposition:
        Steel: 30
        Plastic: 30
    - type: StaticPrice
      price: 15

- type: entity
  id: PowerCageRechargerCircuitboard
  parent: BaseMachineCircuitboard
  name: cage recharger machine board
  description: A machine printed circuit board for a energy cage recharger.
  components:
    - type: Sprite
      sprite: Objects/Misc/module.rsi
      state: charger_APC
    - type: MachineBoard
      prototype: PowerCageRecharger
      requirements: # Frontier
        Capacitor: 4 # Frontier
      stackRequirements:
        # Manipulator: 4 # Frontier
        Steel: 5
        Cable: 10
    - type: PhysicalComposition
      materialComposition:
        Steel: 30
        Plastic: 30
    - type: StaticPrice
      price: 30

- type: entity
  id: BorgChargerCircuitboard
  parent: BaseMachineCircuitboard
  name: cyborg recharging station machine board
  description: A machine printed circuit board for a robot recharging station.
  components:
    - type: Sprite
      sprite: Objects/Misc/module.rsi
      state: charger_APC
    - type: MachineBoard
      prototype: BorgCharger
      requirements: # Frontier
        Capacitor: 2 # Frontier
      stackRequirements:
        # Manipulator: 2 # Frontier
        Cable: 5
    - type: PhysicalComposition
      materialComposition:
        Steel: 30
        Plastic: 30
    - type: StaticPrice
      price: 15

- type: entity
  id: WeaponCapacitorRechargerCircuitboard
  parent: BaseMachineCircuitboard
  name: recharger machine board
  description: A machine printed circuit board for a recharger.
  components:
    - type: Sprite
      sprite: Objects/Misc/module.rsi
      state: charger_APC
    - type: MachineBoard
      prototype: WeaponCapacitorRecharger
      requirements: # Frontier
        Capacitor: 2 # Frontier
      stackRequirements:
        # Manipulator: 2 # Frontier
        CableMV: 5
    - type: PhysicalComposition
      materialComposition:
        Steel: 30
        Plastic: 30
    - type: StaticPrice
      price: 15
    - type: NFWeaponChargerCircuitboard # Frontier

- type: entity
  id: TurboItemRechargerCircuitboard
  parent: BaseMachineCircuitboard
  name: turbo recharger machine board
  description: A machine printed circuit board for a turbo recharger.
  components:
  - type: Sprite
    sprite: Objects/Misc/module.rsi
    state: charger_APC
  - type: MachineBoard
    prototype: TurboItemRecharger
    requirements: # Frontier
      Capacitor: 2 # Frontier
    stackRequirements:
      # Manipulator: 2 # Frontier
      CableMV: 5
  - type: PhysicalComposition
    materialComposition:
      Steel: 30
      Plastic: 30

- type: entity
  id: SubstationMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: substation machine board
  description: A machine printed circuit board for a substation.
  components:
    - type: MachineBoard
      prototype: SubstationBasicEmpty
      requirements: # Frontier
        Capacitor: 1 # Frontier
        PowerCell: 1 # Frontier componentRequirements<requirements
      stackRequirements:
        # Manipulator: 1 # Frontier
        CableMV: 5
        CableHV: 5
    - type: PhysicalComposition
      materialComposition:
        Glass: 200
      chemicalComposition:
        Silicon: 20
    - type: StaticPrice
      price: 58

- type: entity
  parent: BaseMachineCircuitboard
  id: DawInstrumentMachineCircuitboard
  name: digital audio workstation machine board
  components:
  - type: Sprite
    state: service
  - type: MachineBoard
    prototype: DawInstrument
    stackRequirements:
      Glass: 1
      Cable: 1
    tagRequirements:
#      One instrument to bring them all and in the darkness bind them...
       KeyedInstrument:
          amount: 1
          defaultPrototype: SynthesizerInstrument
          examineName: construction-insert-info-examine-name-instrument-keyed
       StringInstrument:
          amount: 1
          defaultPrototype: AcousticGuitarInstrument
          examineName: construction-insert-info-examine-name-instrument-string
       PercussionInstrument:
          amount: 1
          defaultPrototype: GlockenspielInstrument
          examineName: construction-insert-info-examine-name-instrument-percussion
       BrassInstrument:
          amount: 1
          defaultPrototype: TrumpetInstrument
          examineName: construction-insert-info-examine-name-instrument-brass
       WoodwindInstrument:
          amount: 1
          defaultPrototype: SaxophoneInstrument
          examineName: construction-insert-info-examine-name-instrument-woodwind

- type: entity
  id: PortableGeneratorPacmanMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: P.A.C.M.A.N. portable generator machine board # Frontier: no -type
  components:
    - type: Sprite
      state: engineering
    - type: MachineBoard
      prototype: PortableGeneratorPacman
      requirements: # Frontier
        Capacitor: 1 # Frontier
      stackRequirements:
        # Manipulator: 1 # Frontier
        CableHV: 5
    - type: PhysicalComposition
      materialComposition:
        Glass: 200
      chemicalComposition:
        Silicon: 20
    - type: StaticPrice
      price: 40

- type: entity
  id: ThrusterMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: thruster machine board
  components:
  - type: Sprite
    state: supply
  - type: MachineBoard
    prototype: Thruster
    requirements: # Frontier
      Capacitor: 4 # Frontier
    stackRequirements:
      # Manipulator: 4 # Frontier
      Steel: 5

- type: entity
  id: GyroscopeMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: gyroscope machine board
  components:
  - type: Sprite
    state: supply
  - type: MachineBoard
    prototype: Gyroscope
    requirements: # Frontier
      Manipulator: 2 # Frontier
      Capacitor: 1 # Frontier
    stackRequirements:
      # Manipulator: 3 # Frontier
      Glass: 2

- type: entity
  id: PortableGeneratorSuperPacmanMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: S.U.P.E.R.P.A.C.M.A.N. portable generator machine board # Frontier: no -type
  components:
    - type: Sprite
      state: engineering
    - type: MachineBoard
      prototype: PortableGeneratorSuperPacman
      requirements: # Frontier
        Capacitor: 2 # Frontier
      stackRequirements:
        # Manipulator: 2 # Frontier
        CableHV: 10
    - type: PhysicalComposition
      materialComposition:
        Glass: 200
      chemicalComposition:
        Silicon: 20
    - type: StaticPrice
      price: 40

- type: entity
  id: PortableGeneratorJrPacmanMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: J.R.P.A.C.M.A.N. portable generator machine board # Frontier: no -type
  components:
    - type: Sprite
      state: engineering
    - type: MachineBoard
      prototype: PortableGeneratorJrPacman
      requirements: # Frontier
        Capacitor: 1 # Frontier
      stackRequirements:
        # Manipulator: 1 # Frontier
        Cable: 10
    - type: PhysicalComposition
      materialComposition:
        Glass: 200
      chemicalComposition:
        Silicon: 20
    - type: StaticPrice
      price: 40
    - type: BindToStation # Frontier
      enabled: false # Frontier - should be draggable between stations

- type: entity
  id: ReagentGrinderMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: reagent grinder machine board
  description: A machine printed circuit board for a reagent grinder.
  components:
    - type: MachineBoard
      prototype: KitchenReagentGrinder
      requirements: # Frontier
        MatterBin: 2 # Frontier
        Manipulator: 2 # Frontier
      # stackRequirements: # Frontier
      #   Manipulator: 4 # Frontier
      tagRequirements:
        GlassBeaker:
          amount: 1
          defaultPrototype: Beaker

- type: entity
  id: HotplateMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: hotplate machine board
  description: A machine printed circuit board for a hotplate.
  components:
  - type: Sprite
    state: medical
  - type: MachineBoard
    prototype: ChemistryHotplate
    requirements: # Frontier
      Capacitor: 2 # Frontier
    stackRequirements:
      # Manipulator: 2 # Frontier
      Glass: 1

- type: entity
  parent: BaseMachineCircuitboard
  id: ElectricGrillMachineCircuitboard
  name: electric grill machine board
  description: A machine printed circuit board for an electric grill.
  components:
  - type: Sprite
    state: service
  - type: MachineBoard
    prototype: KitchenElectricGrill
    requirements: # Frontier
      Capacitor: 4 # Frontier
    stackRequirements:
      # Manipulator: 4 # Frontier
      Glass: 2
      Cable: 5

- type: entity
  id: StasisBedMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: stasis bed machine board
  components:
    - type: Sprite
      state: medical
    - type: MachineBoard
      prototype: StasisBed
      requirements: # Frontier
        Capacitor: 1 # Frontier
        Manipulator: 1 # Frontier
      stackRequirements:
        # Manipulator: 2 # Frontier
        Cable: 3
        Steel: 2

- type: entity
  id: ElectrolysisUnitMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: electrolysis unit machine board
  description: A machine printed circuit board for an electrolysis unit.
  components:
  - type: Sprite
    state: medical
  - type: MachineBoard
    prototype: MachineElectrolysisUnit
    requirements: # Frontier
      Capacitor: 2 # Frontier
    stackRequirements:
      # Manipulator: 2 # Frontier
      Cable: 1

- type: entity
  id: CentrifugeMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: centrifuge machine board
  description: A machine printed circuit board for a centrifuge.
  components:
  - type: Sprite
    state: medical
  - type: MachineBoard
    prototype: MachineCentrifuge
    requirements: # Frontier
      Manipulator: 1 # Frontier stackRequirements<requirements
    stackRequirements:
      Steel: 1

- type: entity
  id: MaterialSiloMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: material silo machine board
  components:
  - type: Sprite
    state: supply
  - type: MachineBoard
    prototype: MachineMaterialSilo
    requirements: # Frontier
      MatterBin: 4 # Frontier
    stackRequirements:
      # Manipulator: 4 # Frontier
      Cable: 1

- type: entity
  id: OreProcessorMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: ore processor machine board
  components:
    - type: Sprite
      state: supply
    - type: MachineBoard
      prototype: OreProcessor
      requirements: # Frontier
        MatterBin: 1 # Frontier stackRequirements<requirements
        Manipulator: 3 # Frontier stackRequirements<requirements
      stackRequirements:
        # Manipulator: 4 # Frontier
        Glass: 1

- type: entity
  parent: BaseMachineCircuitboard
  id: OreProcessorIndustrialMachineCircuitboard
  name: industrial ore processor machine board
  components:
  - type: Sprite
    state: supply
  - type: MachineBoard
    prototype: OreProcessorIndustrial
    requirements: # Frontier
      MatterBin: 1 # Frontier
      Manipulator: 3 # Frontier
    stackRequirements:
      # Manipulator: 4 # Frontier
      Glass: 1

- type: entity
  id: SheetifierMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: sheet-meister 2000 machine board
  components:
  - type: MachineBoard
    prototype: Sheetifier
    requirements: # Frontier
      MatterBin: 1 # Frontier
      Manipulator: 1 # Frontier
    # stackRequirements: # Frontier
      # Manipulator: 2 # Frontier

- type: entity
  id: MicrowaveMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: microwave machine board
  components:
    - type: Sprite
      state: service
    - type: MachineBoard
      prototype: KitchenMicrowave
      requirements: # Frontier
        Capacitor: 1 # Frontier
      stackRequirements:
        # Manipulator: 1 # Frontier
        Glass: 2
        Cable: 2
    - type: Tag
      tags:
      - MicrowaveMachineBoard

- type: entity
  id: SyndicateMicrowaveMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: donk co. microwave machine board
  components:
    - type: Sprite
      state: service
    - type: MachineBoard
      prototype: SyndicateMicrowave
      requirements: # Frontier
        Capacitor: 1 # Frontier
      stackRequirements:
        # Manipulator: 1 # Frontier
        Glass: 2
        Cable: 2

- type: entity
  id: FatExtractorMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: lipid extractor machine board
  components:
    - type: Sprite
      state: service
    - type: MachineBoard
      prototype: FatExtractor
      requirements: # Frontier
        Manipulator: 1 # Frontier stackRequirements<requirements
      componentRequirements:
        Utensil:
          amount: 1
          defaultPrototype: ForkPlastic
          examineName: construction-insert-info-examine-name-utensil

- type: entity
  parent: BaseMachineCircuitboard
  id: FlatpackerMachineCircuitboard
  name: Flatpacker 1001 machine board
  components:
  - type: MachineBoard
    prototype: MachineFlatpacker
    requirements: # Frontier
      Manipulator: 2 # Frontier stackRequirements<requirements
      MatterBin: 1 # Frontier stackRequirements<requirements
    stackRequirements:
      # Manipulator: 3 # Frontier
      Steel: 1

- type: entity
  id: EmitterCircuitboard
  parent: BaseMachineCircuitboard
  name: emitter machine board
  components:
    - type: Sprite
      state: engineering
    - type: MachineBoard
      prototype: Emitter
      requirements: # Frontier
        Capacitor: 2 # Frontier stackRequirements<requirements
      stackRequirements:
        # Manipulator: 2 # Frontier
        CableHV: 5
        Glass: 2

- type: entity
  id: SurveillanceCameraRouterCircuitboard
  parent: BaseMachineCircuitboard
  name: surveillance camera router board
  description: A machine printed circuit board for a surveillance camera router.
  components:
  - type: Sprite
    state: security
  - type: MachineBoard
    prototype: SurveillanceCameraRouterConstructed
    stackRequirements:
      Cable: 1

- type: entity
  id: SurveillanceCameraWirelessRouterCircuitboard
  parent: BaseMachineCircuitboard
  name: surveillance camera wireless router board
  description: A machine printed circuit board for a surveillance camera wireless router.
  components:
  - type: Sprite
    state: service
  - type: MachineBoard
    prototype: SurveillanceCameraWirelessRouterConstructed
    stackRequirements:
      Cable: 2
      Glass: 1

- type: entity
  id: SurveillanceWirelessCameraMovableCircuitboard
  parent: BaseMachineCircuitboard
  name: movable wireless camera board
  description: A machine printed circuit board for a movable wireless camera.
  components:
  - type: Sprite
    state: service
  - type: MachineBoard
    prototype: SurveillanceWirelessCameraMovableConstructed
    stackRequirements:
      Glass: 2
      Cable: 2

- type: entity
  id: SurveillanceWirelessCameraAnchoredCircuitboard
  parent: BaseMachineCircuitboard
  name: wireless camera board
  description: A machine printed circuit board for a wireless camera.
  components:
  - type: Sprite
    state: service
  - type: MachineBoard
    prototype: SurveillanceWirelessCameraAnchoredConstructed
    stackRequirements:
      Cable: 2
      Glass: 1

- type: entity
  id: GasRecyclerMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: gas recycler board
  description: A printed circuit board for a gas recycler.
  components:
  - type: Sprite
    state: engineering
  - type: MachineBoard
    prototype: GasRecycler
    requirements: # Frontier
      Capacitor: 1 # Frontier stackRequirements<requirements
      Manipulator: 1 # Frontier stackRequirements<requirements
    stackRequirements:
      # Manipulator: 2 # Frontier
      Steel: 10
      Plasma: 5

- type: entity
  id: BoozeDispenserMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: booze dispenser machine board
  description: A machine printed circuit board for a booze dispenser.
  components:
    - type: Sprite
      state: service
    - type: MachineBoard
      prototype: BoozeDispenserEmpty
      requirements: # Frontier
        MatterBin: 1 # Frontier
      stackRequirements:
        Steel: 5
      tagRequirements:
          GlassBeaker:
            amount: 1
            defaultPrototype: Beaker

- type: entity
  id: CargoTelepadMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: cargo telepad machine board
  description: A machine printed circuit board for a cargo telepad.
  components:
    - type: Sprite
      state: supply
    - type: MachineBoard
      prototype: CargoTelepad
      requirements: # Frontier
        Capacitor: 2 # Frontier
      stackRequirements:
        # Manipulator: 2 # Frontier
        Steel: 5

- type: entity
  id: MailTeleporterMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: mail teleporter machine board
  description: A machine printed circuit board for a mail teleporter.
  components:
  - type: Sprite
    state: supply
  - type: MachineBoard
    prototype: CargoMailTeleporter
    requirements: # Frontier
      Capacitor: 2 # Frontier
    stackRequirements:
      # Manipulator: 2 # Frontier
      Steel: 5

- type: entity
  id: SodaDispenserMachineCircuitboard
  parent: BaseMachineCircuitboard
  name: soda dispenser machine board
  description: A machine printed circuit board for a soda dispenser.
  components:
    - type: Sprite
      state: service
    - type: MachineBoard
      prototype: SodaDispenserEmpty
      requirements: # Frontier
        MatterBin: 1 # Frontier
      stackRequirements:
        Steel: 5
      tagRequirements:
          GlassBeaker:
            amount: 1
            defaultPrototype: Beaker

- type: entity
  id: TelecomServerCircuitboard
  parent: BaseMachineCircuitboard
  name: telecommunication server machine board
  description: A machine printed circuit board for an telecommunication server.
  components:
  - type: Sprite
    state: engineering
  - type: MachineBoard
    prototype: TelecomServer
    stackRequirements:
      Steel: 1
      Cable: 2

- type: entity
  parent: BaseMachineCircuitboard
  id: SalvageMagnetMachineCircuitboard
  name: salvage magnet machine board
  description: A machine printed circuit board for a salvage magnet.
  components:
  - type: Sprite
    state: supply
  - type: MachineBoard
    prototype: SalvageMagnet
    requirements: # Frontier
      Capacitor: 4 # Frontier
    stackRequirements:
      # Manipulator: 4 # Frontier
      Steel: 5
      CableHV: 5
      Cable: 2

- type: entity
  parent: BaseMachineCircuitboard
  id: MiniGravityGeneratorCircuitboard
  name: mini gravity generator machine board
  description: A machine printed circuit board for a mini gravity generator.
  components:
  - type: Sprite
    state: supply
  - type: MachineBoard
    prototype: GravityGeneratorMini
    requirements: # Frontier
      Capacitor: 4 # Frontier
      MatterBin: 3 # Frontier
    stackRequirements:
      # Manipulator: 7 # Frontier
      Steel: 5
      CableHV: 5
      Uranium: 2

- type: entity
  parent: BaseMachineCircuitboard
  id: StationAnchorCircuitboard
  name: station anchor machine board
  description: A machine printed circuit board for a station anchor.
  components:
  - type: MachineBoard
    prototype: StationAnchor
    requirements: # Frontier
      Capacitor: 4 # Frontier
      MatterBin: 3 # Frontier
    stackRequirements:
      # Manipulator: 7 # Frontier
      Steel: 10
      Glass: 5
      CableHV: 8
      Uranium: 2

- type: entity
  parent: BaseMachineCircuitboard
  id: ReagentGrinderIndustrialMachineCircuitboard
  name: industrial reagent grinder machine board
  components:
  - type: MachineBoard
    prototype: ReagentGrinderIndustrial
    requirements: # Frontier
      MatterBin: 1 # Frontier
      Manipulator: 3 # Frontier
    stackRequirements:
      # Manipulator: 4 # Frontier
      Glass: 1

- type: entity
  parent: BaseMachineCircuitboard
  id: JukeboxCircuitBoard
  name: jukebox machine board
  description: A machine printed circuit board for a jukebox.
  components:
  - type: Sprite
    state: service
  - type: MachineBoard
    prototype: JukeboxEmpty # Frontier Jukebox>JukeboxEmpty
    stackRequirements:
      WoodPlank: 5
      Steel: 2
      Glass: 5
      Cable: 2

- type: entity
  parent: BaseMachineCircuitboard
  id: CutterMachineCircuitboard
  name: cutter machine board
  components:
  - type: MachineBoard
    prototype: CutterMachine
    requirements: # Frontier
      Capacitor: 1 # Frontier
      Manipulator: 1 # Frontier
    stackRequirements:
      Steel: 2
      # Manipulator: 2 # Frontier
      Cable: 1
