;; (define-type dim (record time::int length::int mass::int))

(define-block
  sldemo_enginewc


  (
    sldemo_enginewc__crank_speed__In1_1_1
  )

  (
    sldemo_enginewc__Combustion__AirCharge__Out1_1_1
    sldemo_enginewc__Combustion__N__Out1_1_1
    sldemo_enginewc__Combustion__Torque__In1_1_1
    sldemo_enginewc__Compression__mass_kplus1__Out1_1_1
    sldemo_enginewc__Compression__mass_k__In1_1_1
    sldemo_enginewc__Compression__trigger__In1_1_1
    sldemo_enginewc__Controller__Desired_rpm__Out1_1_1
    sldemo_enginewc__Controller__N__Out1_1_1
    sldemo_enginewc__Controller__ThrottleAng.__In1_1_1
    sldemo_enginewc__ThrottleAndManifold__ThrottleAngle__Out1_1_1
    sldemo_enginewc__ThrottleAndManifold__EngineSpeedN__Out1_1_1
    sldemo_enginewc__ThrottleAndManifold__trigger__Out1_1_1
    sldemo_enginewc__ThrottleAndManifold__mass_kplus1__In1_1_1
    sldemo_enginewc__VehicleDynamics__Teng__Out1_1_1
    sldemo_enginewc__VehicleDynamics__Tload__Out1_1_1
    sldemo_enginewc__VehicleDynamics__N__In1_1_1
    sldemo_enginewc__dragtorque__Load__In1_1_1
    sldemo_enginewc__valvetiming__N__Out1_1_1
    sldemo_enginewc__valvetiming__edge180__In1_1_1
    sldemo_enginewc__EngineSpeed__In1_1_1
    sldemo_enginewc__Mux__In1_1_1
    sldemo_enginewc__Mux__In2_1_1
    sldemo_enginewc__Mux__Out1_1_1
    sldemo_enginewc__Mux__Out1_2_1
    sldemo_enginewc__SimulationInputs__In1_1_1
    sldemo_enginewc__SimulationInputs__In1_2_1
    sldemo_enginewc__SpeedSetpoint__Out1_1_1
    sldemo_enginewc__radpers_to_rpm__In1_1_1
    sldemo_enginewc__radpers_to_rpm__Out1_1_1
    sldemo_enginewc__radpers_to_rpm__Constant_1_1
    sldemo_enginewc__SimulationInputs_1_1
    sldemo_enginewc__SimulationInputs_2_1
    sldemo_enginewc__EngineSpeed_1_1
    sldemo_enginewc__ThrottleAngle_1_1
    sldemo_enginewc__LoadTorque_1_1
  )

  (
    (sldemo_enginewc__Combustion sldemo_enginewc__Combustion__AirCharge__Out1_1_1 sldemo_enginewc__Combustion__N__Out1_1_1 sldemo_enginewc__Combustion__Torque__In1_1_1)
    (sldemo_enginewc__Compression sldemo_enginewc__Compression__mass_kplus1__Out1_1_1 sldemo_enginewc__Compression__mass_k__In1_1_1 sldemo_enginewc__Compression__trigger__In1_1_1)
    (sldemo_enginewc__Controller sldemo_enginewc__Controller__Desired_rpm__Out1_1_1 sldemo_enginewc__Controller__N__Out1_1_1 sldemo_enginewc__Controller__ThrottleAng.__In1_1_1)
    (sldemo_enginewc__ThrottleAndManifold sldemo_enginewc__ThrottleAndManifold__ThrottleAngle__Out1_1_1 sldemo_enginewc__ThrottleAndManifold__EngineSpeedN__Out1_1_1 sldemo_enginewc__ThrottleAndManifold__trigger__Out1_1_1 sldemo_enginewc__ThrottleAndManifold__mass_kplus1__In1_1_1)
    (sldemo_enginewc__VehicleDynamics sldemo_enginewc__VehicleDynamics__Teng__Out1_1_1 sldemo_enginewc__VehicleDynamics__Tload__Out1_1_1 sldemo_enginewc__VehicleDynamics__N__In1_1_1)
    (sldemo_enginewc__dragtorque sldemo_enginewc__dragtorque__Load__In1_1_1)
    (sldemo_enginewc__valvetiming sldemo_enginewc__valvetiming__N__Out1_1_1 sldemo_enginewc__valvetiming__edge180__In1_1_1)
  )

  (
    (- sldemo_enginewc__EngineSpeed__In1_1_1 (mk-record -1 0 0))
    (- sldemo_enginewc__SimulationInputs__In1_1_1 (mk-record -2 2 1))
    (- sldemo_enginewc__SimulationInputs__In1_2_1 (mk-record 0 0 0))
    (- sldemo_enginewc__SpeedSetpoint__Out1_1_1 (mk-record -1 0 0))
    (- sldemo_enginewc__radpers_to_rpm__Constant_1_1 (mk-record 0 0 0))
    (- sldemo_enginewc__crank_speed__In1_1_1 (mk-record -1 0 0))

    (- sldemo_enginewc__Mux__Out1_1_1 sldemo_enginewc__Mux__In1_1_1)
    (- sldemo_enginewc__Mux__Out1_2_1 sldemo_enginewc__Mux__In2_1_1)
    (- sldemo_enginewc__radpers_to_rpm__Out1_1_1 (+ sldemo_enginewc__radpers_to_rpm__In1_1_1 sldemo_enginewc__radpers_to_rpm__Constant_1_1))
    
    (- sldemo_enginewc__Mux__In1_1_1 sldemo_enginewc__LoadTorque_1_1)
    (- sldemo_enginewc__VehicleDynamics__Tload__Out1_1_1 sldemo_enginewc__LoadTorque_1_1)
    (- sldemo_enginewc__EngineSpeed__In1_1_1 sldemo_enginewc__EngineSpeed_1_1)
    (- sldemo_enginewc__LoadTorque_1_1 sldemo_enginewc__dragtorque__Load__In1_1_1)
    (- sldemo_enginewc__Mux__In1_1_1 sldemo_enginewc__dragtorque__Load__In1_1_1)
    (- sldemo_enginewc__VehicleDynamics__Tload__Out1_1_1 sldemo_enginewc__dragtorque__Load__In1_1_1)
    (- sldemo_enginewc__VehicleDynamics__Teng__Out1_1_1 sldemo_enginewc__Combustion__Torque__In1_1_1)
    (- sldemo_enginewc__EngineSpeed_1_1 sldemo_enginewc__radpers_to_rpm__Out1_1_1)
    (- sldemo_enginewc__EngineSpeed__In1_1_1 sldemo_enginewc__radpers_to_rpm__Out1_1_1)
    (- sldemo_enginewc__Mux__In2_1_1 sldemo_enginewc__ThrottleAngle_1_1)
    (- sldemo_enginewc__ThrottleAndManifold__ThrottleAngle__Out1_1_1 sldemo_enginewc__ThrottleAngle_1_1)
    (- sldemo_enginewc__Controller__N__Out1_1_1 sldemo_enginewc__VehicleDynamics__N__In1_1_1)
    (- sldemo_enginewc__ThrottleAndManifold__EngineSpeedN__Out1_1_1 sldemo_enginewc__VehicleDynamics__N__In1_1_1)
    (- sldemo_enginewc__Combustion__N__Out1_1_1 sldemo_enginewc__VehicleDynamics__N__In1_1_1)
    (- sldemo_enginewc__valvetiming__N__Out1_1_1 sldemo_enginewc__VehicleDynamics__N__In1_1_1)
    (- sldemo_enginewc__crank_speed__In1_1_1 sldemo_enginewc__VehicleDynamics__N__In1_1_1)
    (- sldemo_enginewc__radpers_to_rpm__In1_1_1 sldemo_enginewc__VehicleDynamics__N__In1_1_1)
    (- sldemo_enginewc__SimulationInputs_1_1 sldemo_enginewc__Mux__Out1_1_1)
    (- sldemo_enginewc__SimulationInputs_2_1 sldemo_enginewc__Mux__Out1_2_1)
    (- sldemo_enginewc__SimulationInputs__In1_1_1 sldemo_enginewc__Mux__Out1_1_1)
    (- sldemo_enginewc__SimulationInputs__In1_2_1 sldemo_enginewc__Mux__Out1_2_1)
    (- sldemo_enginewc__SimulationInputs__In1_1_1 sldemo_enginewc__SimulationInputs_1_1)
    (- sldemo_enginewc__SimulationInputs__In1_2_1 sldemo_enginewc__SimulationInputs_2_1)
    (- sldemo_enginewc__Controller__Desired_rpm__Out1_1_1 sldemo_enginewc__SpeedSetpoint__Out1_1_1)
    (- sldemo_enginewc__Combustion__AirCharge__Out1_1_1 sldemo_enginewc__Compression__mass_k__In1_1_1)
    (- sldemo_enginewc__Compression__mass_kplus1__Out1_1_1 sldemo_enginewc__ThrottleAndManifold__mass_kplus1__In1_1_1)
    (- sldemo_enginewc__ThrottleAngle_1_1 sldemo_enginewc__Controller__ThrottleAng.__In1_1_1)
    (- sldemo_enginewc__Mux__In2_1_1 sldemo_enginewc__Controller__ThrottleAng.__In1_1_1)
    (- sldemo_enginewc__ThrottleAndManifold__ThrottleAngle__Out1_1_1 sldemo_enginewc__Controller__ThrottleAng.__In1_1_1)
  )
)