{
  "glb": "/models/components/987/engine.glb",
  "parts": [
    {
      "id": "intake-manifold",
      "node": "intakeManifold",
      "label": "Intake Manifold",
      "assembly": "Induction",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A111011502",
      "function": "Distributes filtered air from the throttle body through twin bridge tubes into both cylinder banks."
    },
    {
      "id": "throttle-body",
      "node": "throttleBody",
      "label": "Throttle Body",
      "assembly": "Induction",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A110530403",
      "function": "Regulates the volume of air entering the intake plenum based on driver throttle demand."
    },
    {
      "id": "maf-sensor",
      "node": "mafSensor",
      "label": "MAF Sensor / Air Intake",
      "assembly": "Induction",
      "system": "Engine",
      "tier": "primary",
      "partNumber": null,
      "componentId": "airfilter",
      "function": "Measures the mass of incoming air in the intake snorkel so the DME can meter fuel."
    },
    {
      "id": "air-oil-separator",
      "node": "airOilSeparator",
      "label": "Air-Oil Separator (AOS)",
      "assembly": "Induction",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1107042000",
      "function": "Separates oil mist from crankcase blow-by gases and returns clean vapor to the intake."
    },
    {
      "id": "intake-camshaft",
      "node": "camshaft_intake",
      "label": "Intake Camshafts",
      "assembly": "Valvetrain",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105279020",
      "function": "Open and close the intake valves in time with the crankshaft via cam lobes."
    },
    {
      "id": "exhaust-camshaft",
      "node": "camshaft_exhaust",
      "label": "Exhaust Camshafts",
      "assembly": "Valvetrain",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105281010",
      "function": "Open and close the exhaust valves in time with the crankshaft via cam lobes."
    },
    {
      "id": "timing-chain",
      "node": "timingChain",
      "label": "Timing Chain & Tensioner",
      "assembly": "Valvetrain",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105142020",
      "function": "Links the crankshaft to the camshafts to keep valve timing in sync; the tensioner holds chain tension."
    },
    {
      "id": "crankshaft",
      "node": "crankshaft",
      "label": "Crankshaft",
      "assembly": "Rotating Assembly",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1102072000",
      "function": "Converts the reciprocating motion of the pistons into rotational output torque."
    },
    {
      "id": "pistons",
      "node": "pistons",
      "label": "Pistons & Rods",
      "assembly": "Rotating Assembly",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1103926000",
      "function": "Compress the air-fuel mixture and transmit combustion force, via the connecting rods, to the crankshaft."
    },
    {
      "id": "crank-pulley",
      "node": "crankPulley",
      "label": "Crank Pulley / Vibration Damper",
      "assembly": "Rotating Assembly",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1375262000",
      "function": "Drives the serpentine belt and damps torsional vibration of the crankshaft."
    },
    {
      "id": "fuel-rail",
      "node": "fuelRail",
      "label": "Fuel Rail & Injectors",
      "assembly": "Fuel & Ignition",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1110859020",
      "function": "Distributes high-pressure DFI fuel (40–120 bar) to the injectors on the 3.4-litre 987.2 S engines; rails sit under the intake system with the pressure sensor on the bank 2 rail."
    },
    {
      "id": "coil-packs",
      "node": "coilPacks",
      "label": "Ignition Coils (x6, Rod-Type)",
      "assembly": "Fuel & Ignition",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A160210407",
      "componentId": "plugs",
      "function": "Rod-type ignition modules with integral output driver, one per plug, fired individually in the order 1-6-2-4-3-5 by the DME (987.2, 2009 Service Introduction p49/50)."
    },
    {
      "id": "spark-plugs",
      "node": "sparkPlugs",
      "label": "Spark Plugs (x6, Surface-Gap)",
      "assembly": "Fuel & Ignition",
      "system": "Engine",
      "tier": "primary",
      "partNumber": null,
      "componentId": "plugs",
      "function": "Surface-gap plugs with four ground electrodes around the insulator — self-cleaning tip, no gap adjustment (987.2). Ignite the compressed air-fuel mixture in each combustion chamber."
    },
    {
      "id": "alternator",
      "node": "alternator",
      "label": "Alternator",
      "assembly": "Accessory Drive",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A160301600",
      "function": "Generates electrical power and charges the battery while the engine runs."
    },
    {
      "id": "ac-compressor",
      "node": "acCompressor",
      "label": "A/C Compressor",
      "assembly": "Accessory Drive",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A112601105",
      "function": "Pressurizes refrigerant to drive the air-conditioning cooling cycle."
    },
    {
      "id": "water-pump",
      "node": "waterPump",
      "label": "Water Pump",
      "assembly": "Accessory Drive",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1106048010",
      "function": "Circulates coolant between the engine and radiators to regulate temperature."
    },
    {
      "id": "serpentine-belt",
      "node": "serpentineBelt",
      "label": "Serpentine Belt & Pulleys",
      "assembly": "Accessory Drive",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1102218000",
      "componentId": "belt",
      "function": "Transfers crank rotation to the alternator, A/C compressor and water pump; tensioner and idler pulleys guide it."
    },
    {
      "id": "oil-filter-housing",
      "node": "oilFilterHousing",
      "label": "Oil Filter Housing",
      "assembly": "Lubrication & Cooling",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1107024000",
      "componentId": "oil",
      "function": "Holds the cartridge oil filter that removes contaminants from circulating oil."
    },
    {
      "id": "oil-pump",
      "node": "oilPump",
      "label": "Oil Pump (Demand-Controlled)",
      "assembly": "Lubrication & Cooling",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1107050110",
      "function": "Electronically demand-controlled pressure pump in the oil pan (pulley side), chain-driven by the crankshaft; its housing also carries the four cylinder-head extraction pump stages — five pumps in total (987.2, 2009 Service Introduction p20–22)."
    },
    {
      "id": "thermostat-housing",
      "node": "thermostatHousing",
      "label": "Thermostat Housing",
      "assembly": "Lubrication & Cooling",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1106226020",
      "function": "Houses the thermostat that regulates coolant flow so the engine reaches operating temperature."
    },
    {
      "id": "cylinder-head-l",
      "node": "cylHead_L",
      "label": "Cylinder Head (Left Bank)",
      "assembly": "Structure",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1104913150",
      "function": "Caps the left bank cylinders, carrying the valves and combustion chambers."
    },
    {
      "id": "cylinder-head-r",
      "node": "cylHead_R",
      "label": "Cylinder Head (Right Bank)",
      "assembly": "Structure",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1104914150",
      "function": "Caps the right bank cylinders, carrying the valves and combustion chambers."
    },
    {
      "id": "crankcase",
      "node": "crankcase",
      "label": "Crankcase",
      "assembly": "Structure",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1101927010",
      "function": "The split-case aluminum block housing the crankshaft, bores and main bearings."
    },
    {
      "id": "sump",
      "node": "sump",
      "label": "Sump / Oil Pan",
      "assembly": "Structure",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1107032750",
      "function": "Reservoir at the bottom of the engine that collects and holds the oil supply."
    },
    {
      "id": "starter-motor",
      "node": "starterMotor",
      "label": "Starter Motor",
      "assembly": "Structure",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A160410900",
      "function": "Cranks the engine over against the flywheel ring gear to start it."
    },
    {
      "id": "cam-cover-l",
      "node": "camCover_L",
      "label": "Cam Cover (Left Bank)",
      "assembly": "Valvetrain",
      "system": "Engine",
      "tier": "sub",
      "parent": "cylinder-head-l",
      "partNumber": "9A1105231040",
      "function": "Seals the top of the left cylinder head over the camshafts and retains oil in the valvetrain."
    },
    {
      "id": "cam-cover-r",
      "node": "camCover_R",
      "label": "Cam Cover (Right Bank)",
      "assembly": "Valvetrain",
      "system": "Engine",
      "tier": "sub",
      "parent": "cylinder-head-r",
      "partNumber": "9A1105232040",
      "function": "Seals the top of the right cylinder head over the camshafts and retains oil in the valvetrain."
    },
    {
      "id": "variocam-actuator",
      "node": "varioCamActuator",
      "label": "VarioCam Actuators",
      "assembly": "Valvetrain",
      "system": "Engine",
      "tier": "sub",
      "parent": "intake-camshaft",
      "partNumber": "9A1105053010",
      "function": "Oil-pressure solenoids that advance and retard intake cam timing for VarioCam variable valve timing."
    },
    {
      "id": "timing-chain-tensioner",
      "node": "timingChainTensioner",
      "label": "Timing Chain Tensioner",
      "assembly": "Valvetrain",
      "system": "Engine",
      "tier": "sub",
      "parent": "timing-chain",
      "partNumber": "9A1105157020",
      "function": "Hydraulic plunger and shoe that takes up slack in the timing chain to keep cam/crank timing exact."
    },
    {
      "id": "crank-sprocket",
      "node": "crankSprocket",
      "label": "Crankshaft Sprocket",
      "assembly": "Valvetrain",
      "system": "Engine",
      "tier": "sub",
      "parent": "timing-chain",
      "partNumber": "9A1105147020",
      "function": "Toothed gear on the crankshaft nose that drives the timing chain."
    },
    {
      "id": "flywheel",
      "node": "flywheel",
      "label": "Flywheel & Ring Gear",
      "assembly": "Rotating Assembly",
      "system": "Engine",
      "tier": "sub",
      "parent": "crankshaft",
      "partNumber": null,
      "function": "Stores rotational inertia at the crank rear and carries the ring gear the starter engages."
    },
    {
      "id": "connecting-rods",
      "node": "conRods",
      "label": "Connecting Rods",
      "assembly": "Rotating Assembly",
      "system": "Engine",
      "tier": "sub",
      "parent": "pistons",
      "partNumber": "9A1103914020",
      "function": "Link each piston to its crankpin, transmitting combustion force to the crankshaft."
    },
    {
      "id": "injectors",
      "node": "injectors",
      "label": "Fuel Injectors (x6)",
      "assembly": "Fuel & Ignition",
      "system": "Engine",
      "tier": "sub",
      "parent": "fuel-rail",
      "partNumber": "9A1110128110",
      "function": "Spray finely atomized, metered fuel directly into each combustion chamber for DFI."
    },
    {
      "id": "alternator-pulley",
      "node": "alternatorPulley",
      "label": "Alternator Pulley",
      "assembly": "Accessory Drive",
      "system": "Engine",
      "tier": "sub",
      "parent": "alternator",
      "partNumber": "9A1102146020",
      "function": "Belt-driven pulley with one-way clutch that spins the alternator rotor."
    },
    {
      "id": "tensioner-pulley",
      "node": "tensionerPulley",
      "label": "Belt Tensioner Pulley",
      "assembly": "Accessory Drive",
      "system": "Engine",
      "tier": "sub",
      "parent": "serpentine-belt",
      "partNumber": "9A1102212000",
      "componentId": "belt",
      "function": "Spring-loaded pulley that keeps the serpentine belt under constant tension."
    },
    {
      "id": "idler-pulley",
      "node": "idlerPulley",
      "label": "Idler Pulley",
      "assembly": "Accessory Drive",
      "system": "Engine",
      "tier": "sub",
      "parent": "serpentine-belt",
      "partNumber": "9A1106248000",
      "componentId": "belt",
      "function": "Smooth pulley that routes and guides the serpentine belt around the accessory drive."
    },
    {
      "id": "oil-filler-neck",
      "node": "oilFillerNeck",
      "label": "Oil Filler Neck & Cap",
      "assembly": "Lubrication & Cooling",
      "system": "Engine",
      "tier": "sub",
      "parent": "oil-filter-housing",
      "partNumber": "9A1107016220",
      "componentId": "oil",
      "function": "Capped tube where fresh engine oil is poured into the crankcase."
    },
    {
      "id": "oil-pickup-tube",
      "node": "oilPickupTube",
      "label": "Oil Pickup Tube & Strainer",
      "assembly": "Lubrication & Cooling",
      "system": "Engine",
      "tier": "sub",
      "parent": "oil-pump",
      "partNumber": "9A1107075100",
      "function": "Draws oil from the sump through a strainer screen into the oil pump."
    },
    {
      "id": "motor-mount-l",
      "node": "motorMount_L",
      "label": "Engine Mount (Left)",
      "assembly": "Structure",
      "system": "Engine",
      "tier": "sub",
      "parent": "crankcase",
      "partNumber": "9A1375046010",
      "function": "Hydraulic mount that supports the left side of the engine and isolates vibration from the chassis."
    },
    {
      "id": "motor-mount-r",
      "node": "motorMount_R",
      "label": "Engine Mount (Right)",
      "assembly": "Structure",
      "system": "Engine",
      "tier": "sub",
      "parent": "crankcase",
      "partNumber": "9A1375046020",
      "function": "Hydraulic mount that supports the right side of the engine and isolates vibration from the chassis."
    },
    {
      "id": "bellhousing",
      "node": "bellhousing",
      "label": "Bellhousing",
      "assembly": "Structure",
      "system": "Engine",
      "tier": "sub",
      "parent": "crankcase",
      "partNumber": "9A1101022010",
      "function": "Bolts to the rear of the crankcase and mates the engine to the transaxle, enclosing the flywheel."
    },
    {
      "id": "dipstick-tube",
      "node": "dipstickTube",
      "label": "Dipstick Tube",
      "assembly": "Lubrication & Cooling",
      "system": "Engine",
      "tier": "sub",
      "parent": "sump",
      "partNumber": "9A1107264000",
      "componentId": "oil",
      "function": "Guides the oil-level dipstick down into the sump for checking the oil level."
    },
    {
      "id": "eng-block-001",
      "node": "engineBlock",
      "label": "Engine Block (Aluminum Alloy, Flat-Six)",
      "assembly": "Short Block",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1101934070",
      "function": "Horizontally opposed aluminum alloy block with two cylinder banks and Nikasil-lined bores that forms the structural core of the MA1 engine."
    },
    {
      "id": "eng-block-002",
      "node": "crankshaftForged",
      "label": "Crankshaft (Forged Steel)",
      "assembly": "Short Block",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1102077200",
      "function": "Forged steel crankshaft with seven main bearings that converts piston reciprocation into rotational torque."
    },
    {
      "id": "eng-block-003",
      "node": "connectingRods",
      "label": "Connecting Rods x6 (Forged H-Beam)",
      "assembly": "Short Block",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1103914020",
      "function": "Forged steel H-beam connecting rods that transmit combustion force from each piston to the crankshaft."
    },
    {
      "id": "eng-block-004",
      "node": "pistonsDfi",
      "label": "Pistons x6 with Piston Rings",
      "assembly": "Short Block",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1103926000",
      "function": "Bowl-crown pistons designed for DFI spray pattern, sealing combustion gases and transferring force to the connecting rods."
    },
    {
      "id": "eng-block-005",
      "node": "mainBearingCaps",
      "label": "Main Bearing Caps",
      "assembly": "Short Block",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1101052000",
      "function": "Structural caps that clamp the six main bearing journals to retain the crankshaft within the block."
    },
    {
      "id": "eng-block-006",
      "node": "oilPickupStrainer",
      "label": "Oil Pickup Tube and Oil Strainer",
      "assembly": "Short Block",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1107075100",
      "function": "Submerged tube and mesh strainer that draws oil from the wet sump into the oil pump."
    },
    {
      "id": "eng-block-007",
      "node": "oilPanSump",
      "label": "Oil Pan / Sump (Lower Crankcase)",
      "assembly": "Short Block",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1107032750",
      "function": "Aluminum lower crankcase sump of the integrated dry-sump system (approx. 8.3 l with filter on the 987.2 3.4), with a watertight sheet-metal panel between crankcase and oil pan and a drain plug boss."
    },
    {
      "id": "eng-block-008",
      "node": "intermediateShaft",
      "label": "Intermediate Shaft (IMS) — 987.1 Engines",
      "assembly": "Short Block",
      "system": "Engine",
      "tier": "primary",
      "partNumber": null,
      "function": "Applies to the 987.1 M96/M97: the intermediate shaft relays crankshaft drive to the cam chains and its bearing is the model's notorious failure point. The 987.2 9A1 shown here has NO intermediate shaft — each bank's camshafts are driven directly by the crankshaft via a duplex sleeve-type chain (2009 Service Introduction, p16)."
    },
    {
      "id": "eng-block-009",
      "node": "flexPlate",
      "label": "Dual-Mass Flywheel (PDK / Manual)",
      "assembly": "Short Block",
      "system": "Engine",
      "tier": "primary",
      "partNumber": null,
      "function": "Dual-mass flywheel bolted to the crankshaft rear: on 987.2 PDK cars it transmits engine torque into the wet double clutch (2009 Service Introduction, p90); on manuals it carries the 240 mm single-plate dry clutch (self-adjusting X-Tend on S models)."
    },
    {
      "id": "eng-head-001",
      "node": "cylinderHeadBank1",
      "label": "Cylinder Head Bank 1 (Driver Side)",
      "assembly": "Cylinder Heads & Valvetrain",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1104913150",
      "function": "DOHC aluminum cylinder head for the driver-side bank, housing four valves per cylinder and the combustion chambers."
    },
    {
      "id": "eng-head-002",
      "node": "cylinderHeadBank2",
      "label": "Cylinder Head Bank 2 (Passenger Side)",
      "assembly": "Cylinder Heads & Valvetrain",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1104914150",
      "function": "Mirror DOHC aluminum cylinder head for the passenger-side bank, housing four valves per cylinder."
    },
    {
      "id": "eng-head-003",
      "node": "intakeCamBank1",
      "label": "Intake Camshaft Bank 1",
      "assembly": "Cylinder Heads & Valvetrain",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105279020",
      "function": "VarioCam Plus intake camshaft for Bank 1 providing variable timing and two-stage valve lift."
    },
    {
      "id": "eng-head-004",
      "node": "exhaustCamBank1",
      "label": "Exhaust Camshaft Bank 1",
      "assembly": "Cylinder Heads & Valvetrain",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105281010",
      "function": "VarioCam Plus exhaust camshaft for Bank 1 providing variable valve timing on the exhaust side."
    },
    {
      "id": "eng-head-005",
      "node": "intakeCamBank2",
      "label": "Intake Camshaft Bank 2",
      "assembly": "Cylinder Heads & Valvetrain",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105280020",
      "function": "VarioCam Plus intake camshaft for Bank 2, same specification as Bank 1."
    },
    {
      "id": "eng-head-006",
      "node": "exhaustCamBank2",
      "label": "Exhaust Camshaft Bank 2",
      "assembly": "Cylinder Heads & Valvetrain",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105282010",
      "function": "VarioCam Plus exhaust camshaft for Bank 2, same specification as Bank 1."
    },
    {
      "id": "eng-head-007",
      "node": "intakeValves",
      "label": "Intake Valves x12",
      "assembly": "Cylinder Heads & Valvetrain",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105312020",
      "function": "Sodium-filled intake valves that open to admit the air-fuel charge into each combustion chamber while dissipating heat."
    },
    {
      "id": "eng-head-008",
      "node": "exhaustValves",
      "label": "Exhaust Valves x12",
      "assembly": "Cylinder Heads & Valvetrain",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105322020",
      "function": "Exhaust valves that open to expel combustion gases from each cylinder after the power stroke."
    },
    {
      "id": "eng-head-009",
      "node": "hydraulicTappets",
      "label": "Hydraulic Valve Lifters / Tappets x24",
      "assembly": "Cylinder Heads & Valvetrain",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105070040",
      "function": "Bucket-type hydraulic tappets positioned under each cam lobe that automatically maintain zero valve clearance."
    },
    {
      "id": "eng-head-010",
      "node": "valveSprings",
      "label": "Valve Springs x24",
      "assembly": "Cylinder Heads & Valvetrain",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105110010",
      "function": "Coil springs that return each valve to its closed seat after the cam lobe passes."
    },
    {
      "id": "eng-head-011",
      "node": "camBearingCaps",
      "label": "Camshaft Bearing Caps",
      "assembly": "Cylinder Heads & Valvetrain",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105275070",
      "function": "Precision caps that clamp the camshaft journals in the cylinder head to retain the cams in position."
    },
    {
      "id": "eng-head-012",
      "node": "headGaskets",
      "label": "Cylinder Head Gaskets x2 (MLS)",
      "assembly": "Cylinder Heads & Valvetrain",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1104142040",
      "function": "Multi-layer steel head gaskets that seal combustion pressure and coolant passages between each cylinder head and the block."
    },
    {
      "id": "eng-vc-001",
      "node": "vanosSolenoidB1Intake",
      "label": "VarioCam Solenoid Bank 1 Intake",
      "assembly": "VarioCam Plus",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "99860619100",
      "function": "Electrohydraulic solenoid that controls oil flow to the Bank 1 intake cam phaser for variable timing adjustment."
    },
    {
      "id": "eng-vc-002",
      "node": "vanosSolenoidB1Exhaust",
      "label": "VarioCam Solenoid Bank 1 Exhaust",
      "assembly": "VarioCam Plus",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "94810711311",
      "function": "Electrohydraulic solenoid that controls oil flow to the Bank 1 exhaust cam phaser for variable timing."
    },
    {
      "id": "eng-vc-003",
      "node": "vanosSolenoidB2Intake",
      "label": "VarioCam Solenoid Bank 2 Intake",
      "assembly": "VarioCam Plus",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "99860619100",
      "function": "Electrohydraulic solenoid for Bank 2 intake cam phasing; susceptible to contamination faults (P0000C area)."
    },
    {
      "id": "eng-vc-004",
      "node": "vanosSolenoidB2Exhaust",
      "label": "VarioCam Solenoid Bank 2 Exhaust",
      "assembly": "VarioCam Plus",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "94810711311",
      "function": "Electrohydraulic solenoid that controls oil flow to the Bank 2 exhaust cam phaser for variable timing."
    },
    {
      "id": "eng-vc-005",
      "node": "camPositionSensors",
      "label": "Camshaft Position Sensors x4",
      "assembly": "VarioCam Plus",
      "system": "Engine",
      "tier": "primary",
      "partNumber": null,
      "function": "Hall-effect sensors, one per camshaft, that report cam phase angle to the DME for closed-loop VarioCam control."
    },
    {
      "id": "eng-vc-006",
      "node": "camPhasers",
      "label": "Cam Phasers / VVT Actuators x4",
      "assembly": "VarioCam Plus",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105053010",
      "function": "Vane-type hydraulic phasers bolted to each cam nose that rotate the camshaft relative to the drive sprocket."
    },
    {
      "id": "eng-vc-007",
      "node": "variocamLiftActuators",
      "label": "VarioCam Plus Lift Actuators x12",
      "assembly": "VarioCam Plus",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105053050",
      "function": "Two-stage lift switching pins, one per cylinder per bank, that engage a second cam lobe profile for high-lift operation."
    },
    {
      "id": "eng-timing-001",
      "node": "primaryTimingChain",
      "label": "Timing Chain (Duplex, Crank to Cams)",
      "assembly": "Timing System",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105142020",
      "function": "On the 987.2 9A1 the camshafts of each bank are driven DIRECTLY by the crankshaft via one duplex sleeve-type chain per bank — there is no intermediate shaft (2009 Service Introduction, p16). On 987.1 M96/M97 engines a primary chain drives the IMS instead."
    },
    {
      "id": "eng-timing-002",
      "node": "secondaryTimingChains",
      "label": "Camshaft Timing Chains x2 (One per Bank)",
      "assembly": "Timing System",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105233020",
      "function": "One duplex sleeve-type chain per cylinder bank, driven directly by the crankshaft on the 9A1, turning that bank's camshafts for precise valve timing (2009 Service Introduction, p16)."
    },
    {
      "id": "eng-timing-003",
      "node": "chainTensioners",
      "label": "Chain Tensioners x3",
      "assembly": "Timing System",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105157020",
      "function": "Hydraulic self-adjusting tensioners that maintain correct tension in the primary and secondary timing chains."
    },
    {
      "id": "eng-timing-004",
      "node": "chainGuides",
      "label": "Chain Guides and Tensioner Rails",
      "assembly": "Timing System",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105153030",
      "function": "Plastic guide rails that support and direct the timing chains to prevent vibration and wear."
    },
    {
      "id": "eng-timing-005",
      "node": "timingChainCovers",
      "label": "Timing Chain Covers x2",
      "assembly": "Timing System",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1105038000",
      "function": "Aluminum covers, one per bank, that enclose the secondary timing chain assemblies and retain oil."
    },
    {
      "id": "eng-timing-006",
      "node": "crankPositionSensor",
      "label": "Crankshaft Position Sensor (CKP)",
      "assembly": "Timing System",
      "system": "Engine",
      "tier": "primary",
      "partNumber": null,
      "function": "Reads the toothed tone wheel on the crankshaft to provide engine speed and crank angle data to the DME."
    },
    {
      "id": "eng-fuel-hpfp",
      "node": "highPressureFuelPump",
      "label": "High-Pressure Fuel Pump (DFI, 3-Piston)",
      "assembly": "Fuel System",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A111050101",
      "function": "Three-piston pump on the bank 1 cylinder head, driven by the exhaust camshaft; builds 40–120 bar (up to ~180 l/h) with integrated flow control valve, pressure control valve and temperature compensator. Fitted to the 3.4-litre DFI engines (2009 Service Introduction, p42)."
    },
    {
      "id": "eng-fuel-portinj",
      "node": "portInjectors",
      "label": "Port Injectors x6 (EV14 — 2.9 MPI)",
      "assembly": "Fuel System",
      "system": "Engine",
      "tier": "primary",
      "partNumber": null,
      "function": "Bosch EV14 intake-manifold injectors used on the 987.2 2.9-litre MPI engines (~4 bar system pressure, DME ME 7.8.2). The 3.4-litre S engines use direct injection only — they have no port injectors."
    },
    {
      "id": "eng-fuel-lowline",
      "node": "fuelLineLow",
      "label": "Low-Pressure Fuel Lines (Tank\u2192HPFP)",
      "assembly": "Fuel System",
      "system": "Engine",
      "tier": "sub",
      "parent": "eng-fuel-hpfp",
      "partNumber": "9A111090614",
      "function": "Rubber/metal fuel delivery lines from the fuel tank to the high-pressure pump inlet."
    },
    {
      "id": "eng-fuel-hpsen",
      "node": "fuelPressureSensorHP",
      "label": "Fuel Pressure Sensor (High-Side)",
      "assembly": "Fuel System",
      "system": "Engine",
      "tier": "sub",
      "parent": "eng-fuel-hpfp",
      "partNumber": null,
      "function": "Fitted on the bank 2 rail; reports rail pressure (40–120 bar) to the DME for closed-loop control via the pump's flow control valve (2009 Service Introduction, p46)."
    },
    {
      "id": "eng-fuel-regreg",
      "node": "fuelPressureRegLow",
      "label": "Fuel Pressure Regulator (Low-Side)",
      "assembly": "Fuel System",
      "system": "Engine",
      "tier": "sub",
      "parent": "eng-fuel-hpfp",
      "partNumber": null,
      "function": "In-tank regulator maintaining approx. 5.0 bar low-side pressure to the high-pressure pump on DFI cars (approx. 4.0 bar on the 2.9 MPI) — 2009 Service Introduction, p39/40."
    },
    {
      "id": "eng-mgmt-001",
      "node": "dmeEcu",
      "label": "DME / Engine Control Unit",
      "assembly": "Engine Management",
      "system": "Engine",
      "tier": "primary",
      "partNumber": null,
      "function": "987.2 engine control: Bosch ME 7.8.2 on the 2.9-litre MPI engines, EMS SDI 3.1 on the 3.4-litre DFI engines (2009 Service Introduction, p34/58). Manages injection, ignition, VarioCam Plus and drive-by-wire throttle."
    },
    {
      "id": "eng-mgmt-002",
      "node": "throttlePositionSensors",
      "label": "Throttle Position Sensors (Dual Track)",
      "assembly": "Engine Management",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1110530600",
      "function": "Redundant dual-track TPS sensors integrated in each throttle body that relay throttle plate angle to the DME."
    },
    {
      "id": "eng-mgmt-003",
      "node": "coolantTempSensor",
      "label": "Coolant Temperature Sensor (ECT)",
      "assembly": "Engine Management",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "99760621300",
      "function": "NTC sensor that monitors engine coolant temperature and enables the DME to adjust fuelling and ignition during warm-up."
    },
    {
      "id": "eng-mgmt-004",
      "node": "acceleratorPedalSensor",
      "label": "Accelerator Pedal Position Sensor (APP)",
      "assembly": "Engine Management",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "98112301200",
      "function": "Drive-by-wire pedal sensor that sends driver throttle demand to the DME for electronic throttle control."
    },
    {
      "id": "eng-mgmt-005",
      "node": "engineWiringHarness",
      "label": "Engine Wiring Harness",
      "assembly": "Engine Management",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1612201300",
      "function": "Main engine loom that interconnects all sensors, actuators, injectors, coils, and solenoids with the DME."
    },
    {
      "id": "engine-new-001",
      "node": "airFilterElement",
      "label": "Air Filter Element",
      "assembly": "Induction",
      "system": "Engine",
      "tier": "sub",
      "parent": "maf-sensor",
      "partNumber": "98111013000",
      "function": "Replaceable paper/foam filter element inside the airbox that traps dust and debris before air enters the engine."
    },
    {
      "id": "engine-new-002",
      "node": "airFilterHousing",
      "label": "Air Filter Housing",
      "assembly": "Induction",
      "system": "Engine",
      "tier": "sub",
      "parent": "maf-sensor",
      "partNumber": "98111021101",
      "function": "Plastic airbox that holds the air filter element and channels filtered air to the throttle body."
    },
    {
      "id": "engine-new-003",
      "node": "highPressureFuelPump",
      "label": "High-Pressure Fuel Pump (DFI)",
      "assembly": "Fuel & Ignition",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1110315060",
      "function": "Cam-driven high-pressure pump that pressurizes fuel to 150+ bar for direct fuel injection into the combustion chambers."
    },
    {
      "id": "engine-new-004",
      "node": "oilSumpUpperPart",
      "label": "Oil Sump Upper Part (Internal Baffle)",
      "assembly": "Lubrication & Cooling",
      "system": "Engine",
      "tier": "sub",
      "parent": "sump",
      "partNumber": "9A1107031200",
      "function": "Upper sump section with baffles that prevents oil starvation during high-g cornering in the mid-engine layout."
    },
    {
      "id": "engine-new-005",
      "node": "oilSumpGasket",
      "label": "Oil Sump Gasket",
      "assembly": "Lubrication & Cooling",
      "system": "Engine",
      "tier": "sub",
      "parent": "sump",
      "partNumber": "9A1107315030",
      "function": "Formed gasket that seals the oil sump to the crankcase to prevent oil leaks at the sump flange."
    },
    {
      "id": "engine-new-006",
      "node": "oilFilterInsert",
      "label": "Oil Filter Insert (Cartridge)",
      "assembly": "Lubrication & Cooling",
      "system": "Engine",
      "tier": "sub",
      "parent": "oil-filter-housing",
      "partNumber": "9A1107224000",
      "function": "Replaceable cartridge filter element that removes metallic and carbon contaminants from the engine oil circuit."
    },
    {
      "id": "engine-new-007",
      "node": "crankshaftMainBearings",
      "label": "Crankshaft Main Bearings",
      "assembly": "Short Block",
      "system": "Engine",
      "tier": "sub",
      "parent": "crankshaft",
      "partNumber": "9A1101052000",
      "function": "Plain shell bearings that support the crankshaft main journals inside the crankcase under full oil-film lubrication."
    },
    {
      "id": "engine-new-008",
      "node": "conRodBearings",
      "label": "Connecting Rod Bearing Shells",
      "assembly": "Short Block",
      "system": "Engine",
      "tier": "sub",
      "parent": "connecting-rods",
      "partNumber": "9A1103053000",
      "function": "Tri-metal shell bearings at the big-end of each connecting rod that ride on the crankshaft rod journals."
    },
    {
      "id": "engine-new-009",
      "node": "pistonRings",
      "label": "Piston Ring Sets x6",
      "assembly": "Short Block",
      "system": "Engine",
      "tier": "sub",
      "parent": "pistons",
      "partNumber": "9A1103050020",
      "function": "Compression and oil-control rings that seal combustion pressure above each piston and scrape excess oil from the bore walls."
    },
    {
      "id": "engine-new-010",
      "node": "crankshaftOilSeal",
      "label": "Crankshaft Oil Seals (Front & Rear)",
      "assembly": "Short Block",
      "system": "Engine",
      "tier": "sub",
      "parent": "crankshaft",
      "partNumber": "9A1101222020",
      "function": "Radial shaft seals at the front and rear of the crankshaft that prevent oil leaking out of the crankcase."
    },
    {
      "id": "engine-new-011",
      "node": "oilHeatExchanger",
      "label": "Oil-to-Water Heat Exchanger",
      "assembly": "Lubrication & Cooling",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A1107450100",
      "function": "Engine-mounted oil cooler that transfers heat between engine oil and coolant to maintain optimal oil temperature."
    },
    {
      "id": "engine-new-012",
      "node": "valveStemSeals",
      "label": "Valve Stem Seals x24",
      "assembly": "Cylinder Heads & Valvetrain",
      "system": "Engine",
      "tier": "sub",
      "parent": "eng-head-007",
      "partNumber": "99610511552",
      "function": "Rubber seals fitted to each valve guide that prevent engine oil from being drawn down the valve stems into the combustion chamber."
    },
    {
      "id": "engine-new-013",
      "node": "timingChainSprocketCam",
      "label": "Cam Sprockets x4",
      "assembly": "Timing System",
      "system": "Engine",
      "tier": "sub",
      "parent": "eng-timing-002",
      "partNumber": "9A1105148020",
      "function": "Toothed sprockets at each camshaft nose that receive drive from the secondary timing chains."
    },
    {
      "id": "engine-new-014",
      "node": "oilSeparatorCrankcase",
      "label": "Crankcase Oil Separator",
      "assembly": "Induction",
      "system": "Engine",
      "tier": "sub",
      "parent": "air-oil-separator",
      "partNumber": "9A1107380010",
      "function": "Secondary cyclonic oil separator mounted on the crankcase that scavenges oil mist from blow-by gases before they re-enter the intake."
    },
    {
      "id": "eng-new-015",
      "node": "headBolts",
      "label": "Cylinder Head Bolts (TTY) x12 per Bank",
      "assembly": "Cylinder Heads & Valvetrain",
      "system": "Engine",
      "tier": "sub",
      "parent": "cylinder-head-l",
      "partNumber": "9A1104213020",
      "function": "Torque-to-yield head bolts that clamp each cylinder head to the block; single-use fasteners replaced at every head-off service."
    },
    {
      "id": "eng-new-016",
      "node": "valveCoverGasketL",
      "label": "Valve Cover Gasket (Left Bank)",
      "assembly": "Valvetrain",
      "system": "Engine",
      "tier": "sub",
      "parent": "cam-cover-l",
      "partNumber": "9A1105441140",
      "function": "Formed rubber gasket that seals the left cam cover to the cylinder head to prevent oil leaks."
    },
    {
      "id": "eng-new-017",
      "node": "valveCoverGasketR",
      "label": "Valve Cover Gasket (Right Bank)",
      "assembly": "Valvetrain",
      "system": "Engine",
      "tier": "sub",
      "parent": "cam-cover-r",
      "partNumber": "9A1105441150",
      "function": "Formed rubber gasket that seals the right cam cover to the cylinder head to prevent oil leaks."
    },
    {
      "id": "eng-new-018",
      "node": "knockSensors",
      "label": "Knock Sensors x2",
      "assembly": "Engine Management",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "99760627200",
      "function": "Piezoelectric sensors, one per cylinder bank, that detect combustion knock and signal the DME to retard ignition timing."
    },
    {
      "id": "eng-new-019",
      "node": "lambdaSensors",
      "label": "Lambda / O2 Sensors x4",
      "assembly": "Engine Management",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A160618301",
      "function": "Wideband lambda sensors upstream and downstream of each catalytic converter for closed-loop AFR and OBD monitoring."
    },
    {
      "id": "eng-new-020",
      "node": "mapSensor",
      "label": "MAP Sensor (Manifold Absolute Pressure)",
      "assembly": "Engine Management",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "99760613502",
      "function": "Measures intake manifold pressure so the DME can calculate air-charge density for accurate fuelling at all load points."
    },
    {
      "id": "eng-new-021",
      "node": "imsBearing",
      "label": "IMS Bearing (Intermediate Shaft Bearing)",
      "assembly": "Short Block",
      "system": "Engine",
      "tier": "sub",
      "parent": "eng-block-008",
      "partNumber": "9A1105183060",
      "function": "Ball or roller bearing supporting the rear of the intermediate shaft; the known 9A1 wear item replaced as a preventive measure."
    },
    {
      "id": "eng-new-022",
      "node": "harmonicBalancer",
      "label": "Harmonic Balancer / Vibration Damper",
      "assembly": "Rotating Assembly",
      "system": "Engine",
      "tier": "sub",
      "parent": "crank-pulley",
      "partNumber": "9A1375262000",
      "function": "Rubber-bonded inertia ring on the crank pulley that damps high-frequency torsional vibrations in the crankshaft."
    },
    {
      "id": "eng-new-023",
      "node": "intakeAirBypassActuator",
      "label": "Intake Air Bypass / Resonance Flap Actuator",
      "assembly": "Induction",
      "system": "Engine",
      "tier": "sub",
      "parent": "intake-manifold",
      "partNumber": "9A1111185200",
      "function": "Electric actuator that opens and closes the resonance flap inside the intake manifold to tune volumetric efficiency across the rev range."
    },
    {
      "id": "eng-new-024",
      "node": "exhaustGasTempSensor",
      "label": "Exhaust Gas Temperature Sensors x2",
      "assembly": "Engine Management",
      "system": "Engine",
      "tier": "primary",
      "partNumber": "9A160621200",
      "function": "Thermocouple sensors upstream of each catalytic converter that monitor exhaust temperature for catalyst protection and OBD compliance."
    }
  ]
}