from __future__ import annotations
from typing import List, Optional, Union, Any
from enum import Enum
from pydantic import Field
from ..base import CIMBase, CIMModelRegistry
from rdflib import URIRef

CIM = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#')

from .DiagramLayout import IdentifiedObject

class DynamicsVersion(CIMBase):
    __cim_class__ = URIRef('http://entsoe.eu/CIM/SchemaExtension/3/1#DynamicsVersion')
    baseUML: Optional[str] = Field(default=None, alias='http://entsoe.eu/CIM/SchemaExtension/3/1#DynamicsVersion.baseUML')
    baseURI: Optional[str] = Field(default=None, alias='http://entsoe.eu/CIM/SchemaExtension/3/1#DynamicsVersion.baseURI')
    date: Optional[str] = Field(default=None, alias='http://entsoe.eu/CIM/SchemaExtension/3/1#DynamicsVersion.date')
    differenceModelURI: Optional[str] = Field(default=None, alias='http://entsoe.eu/CIM/SchemaExtension/3/1#DynamicsVersion.differenceModelURI')
    entsoeUML: Optional[str] = Field(default=None, alias='http://entsoe.eu/CIM/SchemaExtension/3/1#DynamicsVersion.entsoeUML')
    entsoeURI: Optional[str] = Field(default=None, alias='http://entsoe.eu/CIM/SchemaExtension/3/1#DynamicsVersion.entsoeURI')
    modelDescriptionURI: Optional[str] = Field(default=None, alias='http://entsoe.eu/CIM/SchemaExtension/3/1#DynamicsVersion.modelDescriptionURI')
    namespaceRDF: Optional[str] = Field(default=None, alias='http://entsoe.eu/CIM/SchemaExtension/3/1#DynamicsVersion.namespaceRDF')
    namespaceUML: Optional[str] = Field(default=None, alias='http://entsoe.eu/CIM/SchemaExtension/3/1#DynamicsVersion.namespaceUML')
    shortName: Optional[str] = Field(default=None, alias='http://entsoe.eu/CIM/SchemaExtension/3/1#DynamicsVersion.shortName')

CIMModelRegistry.register(URIRef('http://entsoe.eu/CIM/SchemaExtension/3/1#DynamicsVersion'), DynamicsVersion)

class ACDCTerminal(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ACDCTerminal')
    BusNameMarker: Optional['BusNameMarker'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ACDCTerminal.BusNameMarker')
    Measurements: List['Measurement'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ACDCTerminal.Measurements')
    OperationalLimitSet: List['OperationalLimitSet'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ACDCTerminal.OperationalLimitSet')
    connected: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ACDCTerminal.connected')
    sequenceNumber: Optional[int] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ACDCTerminal.sequenceNumber')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ACDCTerminal'), ACDCTerminal)

class PowerSystemResource(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PowerSystemResource')
    Controls: List['Control'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PowerSystemResource.Controls')
    Location: Optional['Location'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PowerSystemResource.Location')
    Measurements: List['Measurement'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PowerSystemResource.Measurements')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PowerSystemResource'), PowerSystemResource)

class Terminal(ACDCTerminal):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Terminal')
    ConductingEquipment: Optional['ConductingEquipment'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Terminal.ConductingEquipment')
    ConnectivityNode: Optional['ConnectivityNode'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Terminal.ConnectivityNode')
    ConverterDCSides: List['ACDCConverter'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Terminal.ConverterDCSides')
    HasFirstMutualCoupling: List['MutualCoupling'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Terminal.HasFirstMutualCoupling')
    HasSecondMutualCoupling: List['MutualCoupling'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Terminal.HasSecondMutualCoupling')
    RegulatingControl: Optional['RegulatingControl'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Terminal.RegulatingControl')
    RemoteInputSignal: List['RemoteInputSignal'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Terminal.RemoteInputSignal')
    SvPowerFlow: Optional['SvPowerFlow'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Terminal.SvPowerFlow')
    TieFlow: List['TieFlow'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Terminal.TieFlow')
    TopologicalNode: Optional['TopologicalNode'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Terminal.TopologicalNode')
    TransformerEnd: List['TransformerEnd'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Terminal.TransformerEnd')
    phases: Optional['PhaseCode'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Terminal.phases')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Terminal'), Terminal)

class RemoteInputSignal(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#RemoteInputSignal')
    DiscontinuousExcitationControlDynamics: Optional['DiscontinuousExcitationControlDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RemoteInputSignal.DiscontinuousExcitationControlDynamics')
    PFVArControllerType1Dynamics: Optional['PFVArControllerType1Dynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RemoteInputSignal.PFVArControllerType1Dynamics')
    PowerSystemStabilizerDynamics: Optional['PowerSystemStabilizerDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RemoteInputSignal.PowerSystemStabilizerDynamics')
    Terminal: Optional['Terminal'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RemoteInputSignal.Terminal')
    UnderexcitationLimiterDynamics: Optional['UnderexcitationLimiterDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RemoteInputSignal.UnderexcitationLimiterDynamics')
    VoltageCompensatorDynamics: Optional['VoltageCompensatorDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RemoteInputSignal.VoltageCompensatorDynamics')
    WindPlantDynamics: Optional['WindPlantDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RemoteInputSignal.WindPlantDynamics')
    WindTurbineType1or2Dynamics: Optional['WindTurbineType1or2Dynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RemoteInputSignal.WindTurbineType1or2Dynamics')
    WindTurbineType3or4Dynamics: Optional['WindTurbineType3or4Dynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RemoteInputSignal.WindTurbineType3or4Dynamics')
    remoteSignalType: Optional['RemoteSignalKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RemoteInputSignal.remoteSignalType')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#RemoteInputSignal'), RemoteInputSignal)

class RemoteSignalKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#RemoteSignalKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#RemoteSignalKind'), RemoteSignalKind)

class DynamicsFunctionBlock(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#DynamicsFunctionBlock')
    enabled: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DynamicsFunctionBlock.enabled')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#DynamicsFunctionBlock'), DynamicsFunctionBlock)

class RotatingMachineDynamics(DynamicsFunctionBlock):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachineDynamics')
    damping: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachineDynamics.damping')
    inertia: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachineDynamics.inertia')
    saturationFactor: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachineDynamics.saturationFactor')
    saturationFactor120: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachineDynamics.saturationFactor120')
    statorLeakageReactance: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachineDynamics.statorLeakageReactance')
    statorResistance: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachineDynamics.statorResistance')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachineDynamics'), RotatingMachineDynamics)

class Seconds(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Seconds')
    multiplier: Optional['UnitMultiplier'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Seconds.multiplier')
    unit: Optional['UnitSymbol'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Seconds.unit')
    value: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Seconds.value')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Seconds'), Seconds)

class PU(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PU')
    multiplier: Optional['UnitMultiplier'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PU.multiplier')
    unit: Optional['UnitSymbol'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PU.unit')
    value: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PU.value')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PU'), PU)

class ProprietaryParameterDynamics(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics')
    AsynchronousMachineUserDefined: Optional['AsynchronousMachineUserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.AsynchronousMachineUserDefined')
    DiscontinuousExcitationControlUserDefined: Optional['DiscontinuousExcitationControlUserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.DiscontinuousExcitationControlUserDefined')
    ExcitationSystemUserDefined: Optional['ExcitationSystemUserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.ExcitationSystemUserDefined')
    LoadUserDefined: Optional['LoadUserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.LoadUserDefined')
    MechanicalLoadUserDefined: Optional['MechanicalLoadUserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.MechanicalLoadUserDefined')
    OverexcitationLimiterUserDefined: Optional['OverexcitationLimiterUserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.OverexcitationLimiterUserDefined')
    PFVArControllerType1UserDefined: Optional['PFVArControllerType1UserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.PFVArControllerType1UserDefined')
    PFVArControllerType2UserDefined: Optional['PFVArControllerType2UserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.PFVArControllerType2UserDefined')
    PowerSystemStabilizerUserDefined: Optional['PowerSystemStabilizerUserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.PowerSystemStabilizerUserDefined')
    SynchronousMachineUserDefined: Optional['SynchronousMachineUserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.SynchronousMachineUserDefined')
    TurbineGovernorUserDefined: Optional['TurbineGovernorUserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.TurbineGovernorUserDefined')
    TurbineLoadControllerUserDefined: Optional['TurbineLoadControllerUserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.TurbineLoadControllerUserDefined')
    UnderexcitationLimiterUserDefined: Optional['UnderexcitationLimiterUserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.UnderexcitationLimiterUserDefined')
    VoltageAdjusterUserDefined: Optional['VoltageAdjusterUserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.VoltageAdjusterUserDefined')
    VoltageCompensatorUserDefined: Optional['VoltageCompensatorUserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.VoltageCompensatorUserDefined')
    WindPlantUserDefined: Optional['WindPlantUserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.WindPlantUserDefined')
    WindType1or2UserDefined: Optional['WindType1or2UserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.WindType1or2UserDefined')
    WindType3or4UserDefined: Optional['WindType3or4UserDefined'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.WindType3or4UserDefined')
    booleanParameterValue: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.booleanParameterValue')
    floatParameterValue: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.floatParameterValue')
    integerParameterValue: Optional[int] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.integerParameterValue')
    parameterNumber: Optional[int] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics.parameterNumber')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ProprietaryParameterDynamics'), ProprietaryParameterDynamics)

class SynchronousMachineDynamics(RotatingMachineDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineDynamics')
    ExcitationSystemDynamics: Optional['ExcitationSystemDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineDynamics.ExcitationSystemDynamics')
    GenICompensationForGenJ: List['GenICompensationForGenJ'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineDynamics.GenICompensationForGenJ')
    MechanicalLoadDynamics: Optional['MechanicalLoadDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineDynamics.MechanicalLoadDynamics')
    SynchronousMachine: Optional['SynchronousMachine'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineDynamics.SynchronousMachine')
    TurbineGovernorDynamics: List['TurbineGovernorDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineDynamics.TurbineGovernorDynamics')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineDynamics'), SynchronousMachineDynamics)

class SynchronousMachineDetailed(SynchronousMachineDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineDetailed')
    efdBaseRatio: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineDetailed.efdBaseRatio')
    ifdBaseType: Optional['IfdBaseKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineDetailed.ifdBaseType')
    ifdBaseValue: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineDetailed.ifdBaseValue')
    saturationFactor120QAxis: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineDetailed.saturationFactor120QAxis')
    saturationFactorQAxis: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineDetailed.saturationFactorQAxis')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineDetailed'), SynchronousMachineDetailed)

class IfdBaseKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#IfdBaseKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#IfdBaseKind'), IfdBaseKind)

class CurrentFlow(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#CurrentFlow')
    multiplier: Optional['UnitMultiplier'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#CurrentFlow.multiplier')
    unit: Optional['UnitSymbol'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#CurrentFlow.unit')
    value: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#CurrentFlow.value')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#CurrentFlow'), CurrentFlow)

class SynchronousMachineTimeConstantReactance(SynchronousMachineDetailed):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineTimeConstantReactance')
    ks: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineTimeConstantReactance.ks')
    modelType: Optional['SynchronousMachineModelKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineTimeConstantReactance.modelType')
    rotorType: Optional['RotorKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineTimeConstantReactance.rotorType')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineTimeConstantReactance.tc')
    tpdo: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineTimeConstantReactance.tpdo')
    tppdo: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineTimeConstantReactance.tppdo')
    tppqo: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineTimeConstantReactance.tppqo')
    tpqo: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineTimeConstantReactance.tpqo')
    xDirectSubtrans: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineTimeConstantReactance.xDirectSubtrans')
    xDirectSync: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineTimeConstantReactance.xDirectSync')
    xDirectTrans: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineTimeConstantReactance.xDirectTrans')
    xQuadSubtrans: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineTimeConstantReactance.xQuadSubtrans')
    xQuadSync: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineTimeConstantReactance.xQuadSync')
    xQuadTrans: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineTimeConstantReactance.xQuadTrans')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineTimeConstantReactance'), SynchronousMachineTimeConstantReactance)

class RotorKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#RotorKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#RotorKind'), RotorKind)

class SynchronousMachineModelKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineModelKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineModelKind'), SynchronousMachineModelKind)

class SynchronousMachineEquivalentCircuit(SynchronousMachineDetailed):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineEquivalentCircuit')
    r1d: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineEquivalentCircuit.r1d')
    r1q: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineEquivalentCircuit.r1q')
    r2q: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineEquivalentCircuit.r2q')
    rfd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineEquivalentCircuit.rfd')
    x1d: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineEquivalentCircuit.x1d')
    x1q: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineEquivalentCircuit.x1q')
    x2q: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineEquivalentCircuit.x2q')
    xad: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineEquivalentCircuit.xad')
    xaq: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineEquivalentCircuit.xaq')
    xf1d: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineEquivalentCircuit.xf1d')
    xfd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineEquivalentCircuit.xfd')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineEquivalentCircuit'), SynchronousMachineEquivalentCircuit)

class AsynchronousMachineDynamics(RotatingMachineDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineDynamics')
    AsynchronousMachine: Optional['AsynchronousMachine'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineDynamics.AsynchronousMachine')
    MechanicalLoadDynamics: Optional['MechanicalLoadDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineDynamics.MechanicalLoadDynamics')
    TurbineGovernorDynamics: Optional['TurbineGovernorDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineDynamics.TurbineGovernorDynamics')
    WindTurbineType1or2Dynamics: Optional['WindTurbineType1or2Dynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineDynamics.WindTurbineType1or2Dynamics')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineDynamics'), AsynchronousMachineDynamics)

class AsynchronousMachineTimeConstantReactance(AsynchronousMachineDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineTimeConstantReactance')
    tpo: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineTimeConstantReactance.tpo')
    tppo: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineTimeConstantReactance.tppo')
    xp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineTimeConstantReactance.xp')
    xpp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineTimeConstantReactance.xpp')
    xs: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineTimeConstantReactance.xs')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineTimeConstantReactance'), AsynchronousMachineTimeConstantReactance)

class AsynchronousMachineEquivalentCircuit(AsynchronousMachineDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineEquivalentCircuit')
    rr1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineEquivalentCircuit.rr1')
    rr2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineEquivalentCircuit.rr2')
    xlr1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineEquivalentCircuit.xlr1')
    xlr2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineEquivalentCircuit.xlr2')
    xm: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineEquivalentCircuit.xm')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineEquivalentCircuit'), AsynchronousMachineEquivalentCircuit)

class TurbineGovernorDynamics(DynamicsFunctionBlock):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#TurbineGovernorDynamics')
    AsynchronousMachineDynamics: Optional['AsynchronousMachineDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbineGovernorDynamics.AsynchronousMachineDynamics')
    SynchronousMachineDynamics: List['SynchronousMachineDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbineGovernorDynamics.SynchronousMachineDynamics')
    TurbineLoadControllerDynamics: Optional['TurbineLoadControllerDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbineGovernorDynamics.TurbineLoadControllerDynamics')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#TurbineGovernorDynamics'), TurbineGovernorDynamics)

class GovHydroIEEE0(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE0')
    k: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE0.k')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE0.mwbase')
    pmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE0.pmax')
    pmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE0.pmin')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE0.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE0.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE0.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE0.t4')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE0'), GovHydroIEEE0)

class ActivePower(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ActivePower')
    multiplier: Optional['UnitMultiplier'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ActivePower.multiplier')
    unit: Optional['UnitSymbol'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ActivePower.unit')
    value: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ActivePower.value')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ActivePower'), ActivePower)

class GovHydroIEEE2(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2')
    aturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.aturb')
    bturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.bturb')
    gv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.gv1')
    gv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.gv2')
    gv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.gv3')
    gv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.gv4')
    gv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.gv5')
    gv6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.gv6')
    kturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.kturb')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.mwbase')
    pgv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.pgv1')
    pgv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.pgv2')
    pgv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.pgv3')
    pgv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.pgv4')
    pgv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.pgv5')
    pgv6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.pgv6')
    pmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.pmax')
    pmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.pmin')
    rperm: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.rperm')
    rtemp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.rtemp')
    tg: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.tg')
    tp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.tp')
    tr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.tr')
    tw: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.tw')
    uc: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.uc')
    uo: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2.uo')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroIEEE2'), GovHydroIEEE2)

class GovSteamIEEE1(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1')
    k: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.k')
    k1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.k1')
    k2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.k2')
    k3: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.k3')
    k4: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.k4')
    k5: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.k5')
    k6: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.k6')
    k7: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.k7')
    k8: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.k8')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.mwbase')
    pmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.pmax')
    pmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.pmin')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.t4')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.t5')
    t6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.t6')
    t7: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.t7')
    uc: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.uc')
    uo: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1.uo')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamIEEE1'), GovSteamIEEE1)

class GovCT1(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1')
    aset: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.aset')
    db: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.db')
    dm: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.dm')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.ka')
    kdgov: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.kdgov')
    kigov: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.kigov')
    kiload: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.kiload')
    kimw: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.kimw')
    kpgov: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.kpgov')
    kpload: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.kpload')
    kturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.kturb')
    ldref: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.ldref')
    maxerr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.maxerr')
    minerr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.minerr')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.mwbase')
    r: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.r')
    rclose: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.rclose')
    rdown: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.rdown')
    ropen: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.ropen')
    rselect: Optional['DroopSignalFeedbackKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.rselect')
    rup: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.rup')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.ta')
    tact: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.tact')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.tc')
    tdgov: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.tdgov')
    teng: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.teng')
    tfload: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.tfload')
    tpelec: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.tpelec')
    tsa: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.tsa')
    tsb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.tsb')
    vmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.vmax')
    vmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.vmin')
    wfnl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.wfnl')
    wfspd: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1.wfspd')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT1'), GovCT1)

class DroopSignalFeedbackKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#DroopSignalFeedbackKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#DroopSignalFeedbackKind'), DroopSignalFeedbackKind)

class GovCT2(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2')
    aset: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.aset')
    db: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.db')
    dm: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.dm')
    flim1: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.flim1')
    flim10: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.flim10')
    flim2: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.flim2')
    flim3: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.flim3')
    flim4: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.flim4')
    flim5: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.flim5')
    flim6: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.flim6')
    flim7: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.flim7')
    flim8: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.flim8')
    flim9: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.flim9')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.ka')
    kdgov: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.kdgov')
    kigov: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.kigov')
    kiload: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.kiload')
    kimw: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.kimw')
    kpgov: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.kpgov')
    kpload: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.kpload')
    kturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.kturb')
    ldref: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.ldref')
    maxerr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.maxerr')
    minerr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.minerr')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.mwbase')
    plim1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.plim1')
    plim10: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.plim10')
    plim2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.plim2')
    plim3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.plim3')
    plim4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.plim4')
    plim5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.plim5')
    plim6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.plim6')
    plim7: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.plim7')
    plim8: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.plim8')
    plim9: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.plim9')
    prate: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.prate')
    r: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.r')
    rclose: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.rclose')
    rdown: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.rdown')
    ropen: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.ropen')
    rselect: Optional['DroopSignalFeedbackKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.rselect')
    rup: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.rup')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.ta')
    tact: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.tact')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.tc')
    tdgov: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.tdgov')
    teng: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.teng')
    tfload: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.tfload')
    tpelec: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.tpelec')
    tsa: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.tsa')
    tsb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.tsb')
    vmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.vmax')
    vmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.vmin')
    wfnl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.wfnl')
    wfspd: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2.wfspd')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovCT2'), GovCT2)

class Frequency(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Frequency')
    multiplier: Optional['UnitMultiplier'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Frequency.multiplier')
    unit: Optional['UnitSymbol'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Frequency.unit')
    value: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Frequency.value')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Frequency'), Frequency)

class GovGAST(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST')
    at: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST.at')
    dturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST.dturb')
    kt: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST.kt')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST.mwbase')
    r: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST.r')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST.t3')
    vmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST.vmax')
    vmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST.vmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST'), GovGAST)

class GovGAST1(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1')
    a: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.a')
    b: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.b')
    db1: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.db1')
    db2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.db2')
    eps: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.eps')
    fidle: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.fidle')
    gv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.gv1')
    gv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.gv2')
    gv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.gv3')
    gv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.gv4')
    gv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.gv5')
    gv6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.gv6')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.ka')
    kt: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.kt')
    lmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.lmax')
    loadinc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.loadinc')
    ltrate: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.ltrate')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.mwbase')
    pgv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.pgv1')
    pgv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.pgv2')
    pgv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.pgv3')
    pgv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.pgv4')
    pgv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.pgv5')
    pgv6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.pgv6')
    r: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.r')
    rmax: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.rmax')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.t4')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.t5')
    tltr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.tltr')
    vmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.vmax')
    vmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1.vmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST1'), GovGAST1)

class GovGAST2(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2')
    a: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.a')
    af1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.af1')
    af2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.af2')
    b: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.b')
    bf1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.bf1')
    bf2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.bf2')
    c: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.c')
    cf2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.cf2')
    ecr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.ecr')
    etd: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.etd')
    k3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.k3')
    k4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.k4')
    k5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.k5')
    k6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.k6')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.kf')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.mwbase')
    t: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.t')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.t4')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.t5')
    tc: Optional['Temperature'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.tc')
    tcd: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.tcd')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.tf')
    tmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.tmax')
    tmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.tmin')
    tr: Optional['Temperature'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.tr')
    trate: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.trate')
    tt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.tt')
    w: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.w')
    x: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.x')
    y: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.y')
    z: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2.z')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST2'), GovGAST2)

class Temperature(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Temperature')
    multiplier: Optional['UnitMultiplier'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Temperature.multiplier')
    unit: Optional['UnitSymbol'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Temperature.unit')
    value: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Temperature.value')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Temperature'), Temperature)

class GovGAST3(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3')
    bca: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.bca')
    bp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.bp')
    dtc: Optional['Temperature'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.dtc')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.ka')
    kac: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.kac')
    kca: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.kca')
    ksi: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.ksi')
    ky: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.ky')
    mnef: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.mnef')
    mxef: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.mxef')
    rcmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.rcmn')
    rcmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.rcmx')
    tac: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.tac')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.tc')
    td: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.td')
    tfen: Optional['Temperature'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.tfen')
    tg: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.tg')
    tsi: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.tsi')
    tt: Optional['Temperature'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.tt')
    ttc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.ttc')
    ty: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3.ty')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST3'), GovGAST3)

class GovGAST4(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST4')
    bp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST4.bp')
    ktm: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST4.ktm')
    mnef: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST4.mnef')
    mxef: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST4.mxef')
    rymn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST4.rymn')
    rymx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST4.rymx')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST4.ta')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST4.tc')
    tcm: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST4.tcm')
    tm: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST4.tm')
    tv: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST4.tv')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovGAST4'), GovGAST4)

class GovGASTWD(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD')
    a: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.a')
    af1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.af1')
    af2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.af2')
    b: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.b')
    bf1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.bf1')
    bf2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.bf2')
    c: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.c')
    cf2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.cf2')
    ecr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.ecr')
    etd: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.etd')
    k3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.k3')
    k4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.k4')
    k5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.k5')
    k6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.k6')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.kd')
    kdroop: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.kdroop')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.kf')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.ki')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.kp')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.mwbase')
    t: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.t')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.t4')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.t5')
    tc: Optional['Temperature'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.tc')
    tcd: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.tcd')
    td: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.td')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.tf')
    tmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.tmax')
    tmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.tmin')
    tr: Optional['Temperature'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.tr')
    trate: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.trate')
    tt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD.tt')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovGASTWD'), GovGASTWD)

class GovHydro1(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro1')
    at: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro1.at')
    dturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro1.dturb')
    gmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro1.gmax')
    gmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro1.gmin')
    hdam: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro1.hdam')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro1.mwbase')
    qnl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro1.qnl')
    rperm: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro1.rperm')
    rtemp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro1.rtemp')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro1.tf')
    tg: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro1.tg')
    tr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro1.tr')
    tw: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro1.tw')
    velm: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro1.velm')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro1'), GovHydro1)

class GovHydro2(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2')
    aturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.aturb')
    bturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.bturb')
    db1: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.db1')
    db2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.db2')
    eps: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.eps')
    gv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.gv1')
    gv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.gv2')
    gv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.gv3')
    gv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.gv4')
    gv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.gv5')
    gv6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.gv6')
    kturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.kturb')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.mwbase')
    pgv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.pgv1')
    pgv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.pgv2')
    pgv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.pgv3')
    pgv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.pgv4')
    pgv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.pgv5')
    pgv6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.pgv6')
    pmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.pmax')
    pmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.pmin')
    rperm: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.rperm')
    rtemp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.rtemp')
    tg: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.tg')
    tp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.tp')
    tr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.tr')
    tw: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.tw')
    uc: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.uc')
    uo: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2.uo')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro2'), GovHydro2)

class GovHydro3(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3')
    at: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.at')
    db1: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.db1')
    db2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.db2')
    dturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.dturb')
    eps: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.eps')
    governorControl: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.governorControl')
    gv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.gv1')
    gv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.gv2')
    gv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.gv3')
    gv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.gv4')
    gv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.gv5')
    gv6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.gv6')
    h0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.h0')
    k1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.k1')
    k2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.k2')
    kg: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.kg')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.ki')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.mwbase')
    pgv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.pgv1')
    pgv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.pgv2')
    pgv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.pgv3')
    pgv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.pgv4')
    pgv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.pgv5')
    pgv6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.pgv6')
    pmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.pmax')
    pmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.pmin')
    qnl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.qnl')
    relec: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.relec')
    rgate: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.rgate')
    td: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.td')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.tf')
    tp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.tp')
    tt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.tt')
    tw: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.tw')
    velcl: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.velcl')
    velop: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3.velop')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro3'), GovHydro3)

class GovHydro4(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4')
    at: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.at')
    bgv0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.bgv0')
    bgv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.bgv1')
    bgv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.bgv2')
    bgv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.bgv3')
    bgv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.bgv4')
    bgv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.bgv5')
    bmax: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.bmax')
    db1: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.db1')
    db2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.db2')
    dturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.dturb')
    eps: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.eps')
    gmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.gmax')
    gmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.gmin')
    gv0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.gv0')
    gv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.gv1')
    gv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.gv2')
    gv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.gv3')
    gv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.gv4')
    gv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.gv5')
    hdam: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.hdam')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.mwbase')
    pgv0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.pgv0')
    pgv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.pgv1')
    pgv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.pgv2')
    pgv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.pgv3')
    pgv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.pgv4')
    pgv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.pgv5')
    qn1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.qn1')
    rperm: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.rperm')
    rtemp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.rtemp')
    tblade: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.tblade')
    tg: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.tg')
    tp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.tp')
    tr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.tr')
    tw: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.tw')
    uc: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.uc')
    uo: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4.uo')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydro4'), GovHydro4)

class GovHydroDD(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD')
    aturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.aturb')
    bturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.bturb')
    db1: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.db1')
    db2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.db2')
    eps: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.eps')
    gmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.gmax')
    gmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.gmin')
    gv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.gv1')
    gv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.gv2')
    gv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.gv3')
    gv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.gv4')
    gv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.gv5')
    gv6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.gv6')
    inputSignal: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.inputSignal')
    k1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.k1')
    k2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.k2')
    kg: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.kg')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.ki')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.mwbase')
    pgv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.pgv1')
    pgv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.pgv2')
    pgv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.pgv3')
    pgv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.pgv4')
    pgv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.pgv5')
    pgv6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.pgv6')
    pmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.pmax')
    pmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.pmin')
    r: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.r')
    td: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.td')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.tf')
    tp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.tp')
    tt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.tt')
    tturb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.tturb')
    velcl: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.velcl')
    velop: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD.velop')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroDD'), GovHydroDD)

class GovHydroFrancis(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis')
    am: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.am')
    av0: Optional['Area'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.av0')
    av1: Optional['Area'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.av1')
    bp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.bp')
    db1: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.db1')
    etamax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.etamax')
    governorControl: Optional['FrancisGovernorControlKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.governorControl')
    h1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.h1')
    h2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.h2')
    hn: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.hn')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.kc')
    kg: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.kg')
    kt: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.kt')
    qc0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.qc0')
    qn: Optional['VolumeFlowRate'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.qn')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.ta')
    td: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.td')
    ts: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.ts')
    twnc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.twnc')
    twng: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.twng')
    tx: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.tx')
    va: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.va')
    valvmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.valvmax')
    valvmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.valvmin')
    vc: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.vc')
    waterTunnelSurgeChamberSimulation: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.waterTunnelSurgeChamberSimulation')
    zsfc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis.zsfc')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroFrancis'), GovHydroFrancis)

class Area(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Area')
    multiplier: Optional['UnitMultiplier'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Area.multiplier')
    unit: Optional['UnitSymbol'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Area.unit')
    value: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Area.value')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Area'), Area)

class FrancisGovernorControlKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#FrancisGovernorControlKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#FrancisGovernorControlKind'), FrancisGovernorControlKind)

class Length(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Length')
    multiplier: Optional['UnitMultiplier'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Length.multiplier')
    unit: Optional['UnitSymbol'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Length.unit')
    value: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Length.value')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Length'), Length)

class VolumeFlowRate(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#VolumeFlowRate')
    denominatorMultiplier: Optional['UnitMultiplier'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VolumeFlowRate.denominatorMultiplier')
    denominatorUnit: Optional['UnitSymbol'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VolumeFlowRate.denominatorUnit')
    multiplier: Optional['UnitMultiplier'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VolumeFlowRate.multiplier')
    unit: Optional['UnitSymbol'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VolumeFlowRate.unit')
    value: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VolumeFlowRate.value')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#VolumeFlowRate'), VolumeFlowRate)

class GovHydroPelton(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton')
    av0: Optional['Area'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.av0')
    av1: Optional['Area'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.av1')
    bp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.bp')
    db1: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.db1')
    db2: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.db2')
    h1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.h1')
    h2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.h2')
    hn: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.hn')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.kc')
    kg: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.kg')
    qc0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.qc0')
    qn: Optional['VolumeFlowRate'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.qn')
    simplifiedPelton: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.simplifiedPelton')
    staticCompensating: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.staticCompensating')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.ta')
    ts: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.ts')
    tv: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.tv')
    twnc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.twnc')
    twng: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.twng')
    tx: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.tx')
    va: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.va')
    valvmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.valvmax')
    valvmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.valvmin')
    vav: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.vav')
    vc: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.vc')
    vcv: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.vcv')
    waterTunnelSurgeChamberSimulation: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.waterTunnelSurgeChamberSimulation')
    zsfc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton.zsfc')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPelton'), GovHydroPelton)

class GovHydroPID(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID')
    aturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.aturb')
    bturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.bturb')
    db1: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.db1')
    db2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.db2')
    eps: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.eps')
    gv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.gv1')
    gv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.gv2')
    gv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.gv3')
    gv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.gv4')
    gv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.gv5')
    gv6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.gv6')
    inputSignal: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.inputSignal')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.kd')
    kg: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.kg')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.ki')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.kp')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.mwbase')
    pgv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.pgv1')
    pgv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.pgv2')
    pgv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.pgv3')
    pgv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.pgv4')
    pgv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.pgv5')
    pgv6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.pgv6')
    pmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.pmax')
    pmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.pmin')
    r: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.r')
    td: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.td')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.tf')
    tp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.tp')
    tt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.tt')
    tturb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.tturb')
    velcl: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.velcl')
    velop: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID.velop')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID'), GovHydroPID)

class GovHydroPID2(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2')
    atw: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.atw')
    d: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.d')
    feedbackSignal: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.feedbackSignal')
    g0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.g0')
    g1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.g1')
    g2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.g2')
    gmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.gmax')
    gmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.gmin')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.kd')
    ki: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.ki')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.kp')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.mwbase')
    p1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.p1')
    p2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.p2')
    p3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.p3')
    rperm: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.rperm')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.tb')
    treg: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.treg')
    tw: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.tw')
    velmax: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.velmax')
    velmin: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2.velmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroPID2'), GovHydroPID2)

class GovHydroR(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR')
    at: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.at')
    db1: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.db1')
    db2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.db2')
    dturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.dturb')
    eps: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.eps')
    gmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.gmax')
    gmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.gmin')
    gv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.gv1')
    gv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.gv2')
    gv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.gv3')
    gv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.gv4')
    gv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.gv5')
    gv6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.gv6')
    h0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.h0')
    inputSignal: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.inputSignal')
    kg: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.kg')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.ki')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.mwbase')
    pgv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.pgv1')
    pgv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.pgv2')
    pgv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.pgv3')
    pgv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.pgv4')
    pgv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.pgv5')
    pgv6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.pgv6')
    pmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.pmax')
    pmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.pmin')
    qnl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.qnl')
    r: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.r')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.t4')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.t5')
    t6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.t6')
    t7: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.t7')
    t8: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.t8')
    td: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.td')
    tp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.tp')
    tt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.tt')
    tw: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.tw')
    velcl: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.velcl')
    velop: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR.velop')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroR'), GovHydroR)

class GovHydroWEH(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH')
    db: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.db')
    dicn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.dicn')
    dpv: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.dpv')
    dturb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.dturb')
    feedbackSignal: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.feedbackSignal')
    fl1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.fl1')
    fl2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.fl2')
    fl3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.fl3')
    fl4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.fl4')
    fl5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.fl5')
    fp1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.fp1')
    fp10: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.fp10')
    fp2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.fp2')
    fp3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.fp3')
    fp4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.fp4')
    fp5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.fp5')
    fp6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.fp6')
    fp7: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.fp7')
    fp8: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.fp8')
    fp9: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.fp9')
    gmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.gmax')
    gmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.gmin')
    gtmxcl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.gtmxcl')
    gtmxop: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.gtmxop')
    gv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.gv1')
    gv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.gv2')
    gv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.gv3')
    gv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.gv4')
    gv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.gv5')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.kd')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.ki')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.kp')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.mwbase')
    pmss1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.pmss1')
    pmss10: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.pmss10')
    pmss2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.pmss2')
    pmss3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.pmss3')
    pmss4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.pmss4')
    pmss5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.pmss5')
    pmss6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.pmss6')
    pmss7: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.pmss7')
    pmss8: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.pmss8')
    pmss9: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.pmss9')
    rpg: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.rpg')
    rpp: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.rpp')
    td: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.td')
    tdv: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.tdv')
    tg: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.tg')
    tp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.tp')
    tpe: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.tpe')
    tw: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH.tw')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWEH'), GovHydroWEH)

class GovHydroWPID(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID')
    d: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.d')
    gatmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.gatmax')
    gatmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.gatmin')
    gv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.gv1')
    gv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.gv2')
    gv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.gv3')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.kd')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.ki')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.kp')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.mwbase')
    pgv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.pgv1')
    pgv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.pgv2')
    pgv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.pgv3')
    pmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.pmax')
    pmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.pmin')
    reg: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.reg')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.tb')
    treg: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.treg')
    tw: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.tw')
    velmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.velmax')
    velmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID.velmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovHydroWPID'), GovHydroWPID)

class GovSteam0(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam0')
    dt: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam0.dt')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam0.mwbase')
    r: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam0.r')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam0.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam0.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam0.t3')
    vmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam0.vmax')
    vmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam0.vmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam0'), GovSteam0)

class GovSteam1(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1')
    db1: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.db1')
    db2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.db2')
    eps: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.eps')
    gv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.gv1')
    gv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.gv2')
    gv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.gv3')
    gv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.gv4')
    gv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.gv5')
    gv6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.gv6')
    k: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.k')
    k1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.k1')
    k2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.k2')
    k3: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.k3')
    k4: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.k4')
    k5: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.k5')
    k6: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.k6')
    k7: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.k7')
    k8: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.k8')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.mwbase')
    pgv1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.pgv1')
    pgv2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.pgv2')
    pgv3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.pgv3')
    pgv4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.pgv4')
    pgv5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.pgv5')
    pgv6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.pgv6')
    pmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.pmax')
    pmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.pmin')
    sdb1: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.sdb1')
    sdb2: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.sdb2')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.t4')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.t5')
    t6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.t6')
    t7: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.t7')
    uc: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.uc')
    uo: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.uo')
    valve: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1.valve')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam1'), GovSteam1)

class GovSteam2(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam2')
    dbf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam2.dbf')
    k: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam2.k')
    mnef: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam2.mnef')
    mxef: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam2.mxef')
    pmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam2.pmax')
    pmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam2.pmin')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam2.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam2.t2')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteam2'), GovSteam2)

class GovSteamCC(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC')
    dhp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.dhp')
    dlp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.dlp')
    fhp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.fhp')
    flp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.flp')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.mwbase')
    pmaxhp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.pmaxhp')
    pmaxlp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.pmaxlp')
    rhp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.rhp')
    rlp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.rlp')
    t1hp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.t1hp')
    t1lp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.t1lp')
    t3hp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.t3hp')
    t3lp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.t3lp')
    t4hp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.t4hp')
    t4lp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.t4lp')
    t5hp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.t5hp')
    t5lp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC.t5lp')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamCC'), GovSteamCC)

class GovSteamEU(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU')
    chc: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.chc')
    cho: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.cho')
    cic: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.cic')
    cio: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.cio')
    db1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.db1')
    db2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.db2')
    hhpmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.hhpmax')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.ke')
    kfcor: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.kfcor')
    khp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.khp')
    klp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.klp')
    kwcor: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.kwcor')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.mwbase')
    pmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.pmax')
    prhmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.prhmax')
    simx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.simx')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.tb')
    tdp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.tdp')
    ten: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.ten')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.tf')
    tfp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.tfp')
    thp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.thp')
    tip: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.tip')
    tlp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.tlp')
    tp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.tp')
    trh: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.trh')
    tvhp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.tvhp')
    tvip: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.tvip')
    tw: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.tw')
    wfmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.wfmax')
    wfmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.wfmin')
    wmax1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.wmax1')
    wmax2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.wmax2')
    wwmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.wwmax')
    wwmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU.wwmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamEU'), GovSteamEU)

class GovSteamFV2(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV2')
    dt: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV2.dt')
    k: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV2.k')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV2.mwbase')
    r: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV2.r')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV2.t1')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV2.t3')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV2.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV2.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV2.tc')
    ti: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV2.ti')
    tt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV2.tt')
    vmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV2.vmax')
    vmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV2.vmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV2'), GovSteamFV2)

class GovSteamFV3(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3')
    k: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.k')
    k1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.k1')
    k2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.k2')
    k3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.k3')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.mwbase')
    pmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.pmax')
    pmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.pmin')
    prmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.prmax')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.t4')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.t5')
    t6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.t6')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.tc')
    uc: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.uc')
    uo: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3.uo')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV3'), GovSteamFV3)

class GovSteamFV4(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4')
    cpsmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.cpsmn')
    cpsmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.cpsmx')
    crmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.crmn')
    crmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.crmx')
    kdc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.kdc')
    kf1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.kf1')
    kf3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.kf3')
    khp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.khp')
    kic: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.kic')
    kip: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.kip')
    kit: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.kit')
    kmp1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.kmp1')
    kmp2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.kmp2')
    kpc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.kpc')
    kpp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.kpp')
    kpt: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.kpt')
    krc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.krc')
    ksh: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.ksh')
    lpi: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.lpi')
    lps: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.lps')
    mnef: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.mnef')
    mxef: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.mxef')
    pr1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.pr1')
    pr2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.pr2')
    psmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.psmn')
    rsmimn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.rsmimn')
    rsmimx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.rsmimx')
    rvgmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.rvgmn')
    rvgmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.rvgmx')
    srmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.srmn')
    srmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.srmx')
    srsmp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.srsmp')
    svmn: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.svmn')
    svmx: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.svmx')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.ta')
    tam: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.tam')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.tc')
    tcm: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.tcm')
    tdc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.tdc')
    tf1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.tf1')
    tf2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.tf2')
    thp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.thp')
    tmp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.tmp')
    trh: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.trh')
    tv: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.tv')
    ty: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.ty')
    y: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.y')
    yhpmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.yhpmn')
    yhpmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.yhpmx')
    ympmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.ympmn')
    ympmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4.ympmx')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamFV4'), GovSteamFV4)

class GovSteamSGO(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamSGO')
    k1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamSGO.k1')
    k2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamSGO.k2')
    k3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamSGO.k3')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamSGO.mwbase')
    pmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamSGO.pmax')
    pmin: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamSGO.pmin')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamSGO.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamSGO.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamSGO.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamSGO.t4')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamSGO.t5')
    t6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamSGO.t6')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GovSteamSGO'), GovSteamSGO)

class TurbineLoadControllerDynamics(DynamicsFunctionBlock):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#TurbineLoadControllerDynamics')
    TurbineGovernorDynamics: Optional['TurbineGovernorDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbineLoadControllerDynamics.TurbineGovernorDynamics')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#TurbineLoadControllerDynamics'), TurbineLoadControllerDynamics)

class TurbLCFB1(TurbineLoadControllerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#TurbLCFB1')
    db: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbLCFB1.db')
    emax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbLCFB1.emax')
    fb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbLCFB1.fb')
    fbf: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbLCFB1.fbf')
    irmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbLCFB1.irmax')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbLCFB1.ki')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbLCFB1.kp')
    mwbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbLCFB1.mwbase')
    pbf: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbLCFB1.pbf')
    pmwset: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbLCFB1.pmwset')
    speedReferenceGovernor: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbLCFB1.speedReferenceGovernor')
    tpelec: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbLCFB1.tpelec')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#TurbLCFB1'), TurbLCFB1)

class MechanicalLoadDynamics(DynamicsFunctionBlock):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#MechanicalLoadDynamics')
    AsynchronousMachineDynamics: Optional['AsynchronousMachineDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#MechanicalLoadDynamics.AsynchronousMachineDynamics')
    SynchronousMachineDynamics: Optional['SynchronousMachineDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#MechanicalLoadDynamics.SynchronousMachineDynamics')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#MechanicalLoadDynamics'), MechanicalLoadDynamics)

class MechLoad1(MechanicalLoadDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#MechLoad1')
    a: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#MechLoad1.a')
    b: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#MechLoad1.b')
    d: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#MechLoad1.d')
    e: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#MechLoad1.e')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#MechLoad1'), MechLoad1)

class ExcIEEEST1AUELselectorKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1AUELselectorKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1AUELselectorKind'), ExcIEEEST1AUELselectorKind)

class ExcREXSFeedbackSignalKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXSFeedbackSignalKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXSFeedbackSignalKind'), ExcREXSFeedbackSignalKind)

class ExcST6BOELselectorKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6BOELselectorKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6BOELselectorKind'), ExcST6BOELselectorKind)

class ExcST7BOELselectorKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7BOELselectorKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7BOELselectorKind'), ExcST7BOELselectorKind)

class ExcST7BUELselectorKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7BUELselectorKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7BUELselectorKind'), ExcST7BUELselectorKind)

class ExcitationSystemDynamics(DynamicsFunctionBlock):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcitationSystemDynamics')
    DiscontinuousExcitationControlDynamics: Optional['DiscontinuousExcitationControlDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcitationSystemDynamics.DiscontinuousExcitationControlDynamics')
    OverexcitationLimiterDynamics: Optional['OverexcitationLimiterDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcitationSystemDynamics.OverexcitationLimiterDynamics')
    PFVArControllerType1Dynamics: Optional['PFVArControllerType1Dynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcitationSystemDynamics.PFVArControllerType1Dynamics')
    PFVArControllerType2Dynamics: Optional['PFVArControllerType2Dynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcitationSystemDynamics.PFVArControllerType2Dynamics')
    PowerSystemStabilizerDynamics: Optional['PowerSystemStabilizerDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcitationSystemDynamics.PowerSystemStabilizerDynamics')
    SynchronousMachineDynamics: Optional['SynchronousMachineDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcitationSystemDynamics.SynchronousMachineDynamics')
    UnderexcitationLimiterDynamics: Optional['UnderexcitationLimiterDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcitationSystemDynamics.UnderexcitationLimiterDynamics')
    VoltageCompensatorDynamics: Optional['VoltageCompensatorDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcitationSystemDynamics.VoltageCompensatorDynamics')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcitationSystemDynamics'), ExcitationSystemDynamics)

class ExcIEEEAC1A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.kc')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.kd')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.kf')
    seve1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.seve1')
    seve2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.seve2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.tf')
    vamax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.vamax')
    vamin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.vamin')
    ve1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.ve1')
    ve2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.ve2')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC1A'), ExcIEEEAC1A)

class ExcIEEEAC2A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.ka')
    kb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.kb')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.kc')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.kd')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.kf')
    kh: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.kh')
    seve1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.seve1')
    seve2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.seve2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.tf')
    vamax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.vamax')
    vamin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.vamin')
    ve1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.ve1')
    ve2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.ve2')
    vfemax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.vfemax')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC2A'), ExcIEEEAC2A)

class ExcIEEEAC3A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A')
    efdn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.efdn')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.kc')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.kd')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.kf')
    kn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.kn')
    kr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.kr')
    seve1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.seve1')
    seve2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.seve2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.tf')
    vamax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.vamax')
    vamin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.vamin')
    ve1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.ve1')
    ve2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.ve2')
    vemin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.vemin')
    vfemax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A.vfemax')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC3A'), ExcIEEEAC3A)

class ExcIEEEAC4A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC4A')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC4A.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC4A.kc')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC4A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC4A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC4A.tc')
    vimax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC4A.vimax')
    vimin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC4A.vimin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC4A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC4A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC4A'), ExcIEEEAC4A)

class ExcIEEEAC5A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC5A')
    efd1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC5A.efd1')
    efd2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC5A.efd2')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC5A.ka')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC5A.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC5A.kf')
    seefd1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC5A.seefd1')
    seefd2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC5A.seefd2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC5A.ta')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC5A.te')
    tf1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC5A.tf1')
    tf2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC5A.tf2')
    tf3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC5A.tf3')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC5A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC5A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC5A'), ExcIEEEAC5A)

class ExcIEEEAC6A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.kc')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.kd')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.ke')
    kh: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.kh')
    seve1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.seve1')
    seve2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.seve2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.te')
    th: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.th')
    tj: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.tj')
    tk: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.tk')
    vamax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.vamax')
    vamin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.vamin')
    ve1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.ve1')
    ve2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.ve2')
    vfelim: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.vfelim')
    vhmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.vhmax')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC6A'), ExcIEEEAC6A)

class ExcIEEEAC7B(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.kc')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.kd')
    kdr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.kdr')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.ke')
    kf1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.kf1')
    kf2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.kf2')
    kf3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.kf3')
    kia: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.kia')
    kir: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.kir')
    kl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.kl')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.kp')
    kpa: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.kpa')
    kpr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.kpr')
    seve1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.seve1')
    seve2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.seve2')
    tdr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.tdr')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.tf')
    vamax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.vamax')
    vamin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.vamin')
    ve1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.ve1')
    ve2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.ve2')
    vemin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.vemin')
    vfemax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.vfemax')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC7B'), ExcIEEEAC7B)

class ExcIEEEAC8B(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.kc')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.kd')
    kdr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.kdr')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.ke')
    kir: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.kir')
    kpr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.kpr')
    seve1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.seve1')
    seve2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.seve2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.ta')
    tdr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.tdr')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.te')
    ve1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.ve1')
    ve2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.ve2')
    vemin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.vemin')
    vfemax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.vfemax')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEAC8B'), ExcIEEEAC8B)

class ExcIEEEDC1A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A')
    efd1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A.efd1')
    efd2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A.efd2')
    exclim: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A.exclim')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A.ka')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A.kf')
    seefd1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A.seefd1')
    seefd2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A.seefd2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A.tf')
    uelin: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A.uelin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC1A'), ExcIEEEDC1A)

class ExcIEEEDC2A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A')
    efd1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A.efd1')
    efd2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A.efd2')
    exclim: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A.exclim')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A.ka')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A.kf')
    seefd1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A.seefd1')
    seefd2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A.seefd2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A.tf')
    uelin: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A.uelin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC2A'), ExcIEEEDC2A)

class ExcIEEEDC3A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC3A')
    efd1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC3A.efd1')
    efd2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC3A.efd2')
    exclim: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC3A.exclim')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC3A.ke')
    kv: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC3A.kv')
    seefd1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC3A.seefd1')
    seefd2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC3A.seefd2')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC3A.te')
    trh: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC3A.trh')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC3A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC3A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC3A'), ExcIEEEDC3A)

class ExcIEEEDC4B(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B')
    efd1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.efd1')
    efd2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.efd2')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.ka')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.kd')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.kf')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.ki')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.kp')
    oelin: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.oelin')
    seefd1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.seefd1')
    seefd2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.seefd2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.ta')
    td: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.td')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.tf')
    uelin: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.uelin')
    vemin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.vemin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEDC4B'), ExcIEEEDC4B)

class ExcIEEEST1A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A')
    ilr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.ilr')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.kc')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.kf')
    klr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.klr')
    pssin: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.pssin')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.tb')
    tb1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.tb1')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.tc')
    tc1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.tc1')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.tf')
    uelin: Optional['ExcIEEEST1AUELselectorKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.uelin')
    vamax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.vamax')
    vamin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.vamin')
    vimax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.vimax')
    vimin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.vimin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST1A'), ExcIEEEST1A)

class ExcIEEEST2A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST2A')
    efdmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST2A.efdmax')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST2A.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST2A.kc')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST2A.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST2A.kf')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST2A.ki')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST2A.kp')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST2A.ta')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST2A.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST2A.tf')
    uelin: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST2A.uelin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST2A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST2A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST2A'), ExcIEEEST2A)

class ExcIEEEST3A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.kc')
    kg: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.kg')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.ki')
    km: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.km')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.kp')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.tc')
    thetap: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.thetap')
    tm: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.tm')
    vbmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.vbmax')
    vgmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.vgmax')
    vimax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.vimax')
    vimin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.vimin')
    vmmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.vmmax')
    vmmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.vmmin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.vrmin')
    xl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A.xl')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST3A'), ExcIEEEST3A)

class ExcIEEEST4B(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B.kc')
    kg: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B.kg')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B.ki')
    kim: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B.kim')
    kir: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B.kir')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B.kp')
    kpm: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B.kpm')
    kpr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B.kpr')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B.ta')
    thetap: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B.thetap')
    vbmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B.vbmax')
    vmmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B.vmmax')
    vmmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B.vmmin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B.vrmin')
    xl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B.xl')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST4B'), ExcIEEEST4B)

class ExcIEEEST5B(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.kc')
    kr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.kr')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.t1')
    tb1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.tb1')
    tb2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.tb2')
    tc1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.tc1')
    tc2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.tc2')
    tob1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.tob1')
    tob2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.tob2')
    toc1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.toc1')
    toc2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.toc2')
    tub1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.tub1')
    tub2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.tub2')
    tuc1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.tuc1')
    tuc2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.tuc2')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST5B'), ExcIEEEST5B)

class ExcIEEEST6B(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST6B')
    ilr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST6B.ilr')
    kci: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST6B.kci')
    kff: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST6B.kff')
    kg: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST6B.kg')
    kia: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST6B.kia')
    klr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST6B.klr')
    km: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST6B.km')
    kpa: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST6B.kpa')
    oelin: Optional['ExcST6BOELselectorKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST6B.oelin')
    tg: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST6B.tg')
    vamax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST6B.vamax')
    vamin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST6B.vamin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST6B.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST6B.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST6B'), ExcIEEEST6B)

class ExcIEEEST7B(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B')
    kh: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B.kh')
    kia: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B.kia')
    kl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B.kl')
    kpa: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B.kpa')
    oelin: Optional['ExcST7BOELselectorKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B.oelin')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B.tc')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B.tf')
    tg: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B.tg')
    tia: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B.tia')
    uelin: Optional['ExcST7BUELselectorKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B.uelin')
    vmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B.vmax')
    vmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B.vmin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcIEEEST7B'), ExcIEEEST7B)

class ExcAC1A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A')
    hvlvgates: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.hvlvgates')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.kc')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.kd')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.kf')
    kf1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.kf1')
    kf2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.kf2')
    ks: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.ks')
    seve1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.seve1')
    seve2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.seve2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.tf')
    vamax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.vamax')
    vamin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.vamin')
    ve1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.ve1')
    ve2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.ve2')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC1A'), ExcAC1A)

class ExcAC2A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A')
    hvgate: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.hvgate')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.ka')
    kb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.kb')
    kb1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.kb1')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.kc')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.kd')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.kf')
    kh: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.kh')
    kl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.kl')
    kl1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.kl1')
    ks: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.ks')
    lvgate: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.lvgate')
    seve1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.seve1')
    seve2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.seve2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.tf')
    vamax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.vamax')
    vamin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.vamin')
    ve1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.ve1')
    ve2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.ve2')
    vfemax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.vfemax')
    vlr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.vlr')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC2A'), ExcAC2A)

class ExcAC3A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A')
    efdn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.efdn')
    ka: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.kc')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.kd')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.kf')
    kf1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.kf1')
    kf2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.kf2')
    klv: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.klv')
    kn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.kn')
    kr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.kr')
    ks: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.ks')
    seve1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.seve1')
    seve2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.seve2')
    ta: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.tf')
    vamax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.vamax')
    vamin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.vamin')
    ve1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.ve1')
    ve2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.ve2')
    vemin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.vemin')
    vfemax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.vfemax')
    vlv: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A.vlv')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC3A'), ExcAC3A)

class ExcAC4A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC4A')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC4A.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC4A.kc')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC4A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC4A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC4A.tc')
    vimax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC4A.vimax')
    vimin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC4A.vimin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC4A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC4A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC4A'), ExcAC4A)

class ExcAC5A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A')
    a: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.a')
    efd1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.efd1')
    efd2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.efd2')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.ka')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.kf')
    ks: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.ks')
    seefd1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.seefd1')
    seefd2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.seefd2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.te')
    tf1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.tf1')
    tf2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.tf2')
    tf3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.tf3')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC5A'), ExcAC5A)

class ExcAC6A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.kc')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.kd')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.ke')
    kh: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.kh')
    ks: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.ks')
    seve1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.seve1')
    seve2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.seve2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.te')
    th: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.th')
    tj: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.tj')
    tk: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.tk')
    vamax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.vamax')
    vamin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.vamin')
    ve1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.ve1')
    ve2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.ve2')
    vfelim: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.vfelim')
    vhmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.vhmax')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC6A'), ExcAC6A)

class ExcAC8B(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B')
    inlim: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.inlim')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.kc')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.kd')
    kdr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.kdr')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.ke')
    kir: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.kir')
    kpr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.kpr')
    ks: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.ks')
    pidlim: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.pidlim')
    seve1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.seve1')
    seve2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.seve2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.ta')
    tdr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.tdr')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.te')
    telim: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.telim')
    ve1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.ve1')
    ve2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.ve2')
    vemin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.vemin')
    vfemax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.vfemax')
    vimax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.vimax')
    vimin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.vimin')
    vpidmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.vpidmax')
    vpidmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.vpidmin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.vrmin')
    vtmult: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B.vtmult')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAC8B'), ExcAC8B)

class ExcANS(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcANS')
    blint: Optional[int] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcANS.blint')
    ifmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcANS.ifmn')
    ifmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcANS.ifmx')
    k2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcANS.k2')
    k3: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcANS.k3')
    kce: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcANS.kce')
    krvecc: Optional[int] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcANS.krvecc')
    kvfif: Optional[int] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcANS.kvfif')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcANS.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcANS.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcANS.t3')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcANS.tb')
    vrmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcANS.vrmn')
    vrmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcANS.vrmx')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcANS'), ExcANS)

class ExcAVR1(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR1')
    e1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR1.e1')
    e2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR1.e2')
    ka: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR1.ka')
    kf: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR1.kf')
    se1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR1.se1')
    se2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR1.se2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR1.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR1.tb')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR1.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR1.tf')
    vrmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR1.vrmn')
    vrmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR1.vrmx')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR1'), ExcAVR1)

class ExcAVR2(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR2')
    e1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR2.e1')
    e2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR2.e2')
    ka: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR2.ka')
    kf: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR2.kf')
    se1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR2.se1')
    se2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR2.se2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR2.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR2.tb')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR2.te')
    tf1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR2.tf1')
    tf2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR2.tf2')
    vrmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR2.vrmn')
    vrmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR2.vrmx')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR2'), ExcAVR2)

class ExcAVR3(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR3')
    e1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR3.e1')
    e2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR3.e2')
    ka: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR3.ka')
    se1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR3.se1')
    se2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR3.se2')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR3.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR3.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR3.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR3.t4')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR3.te')
    vrmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR3.vrmn')
    vrmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR3.vrmx')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR3'), ExcAVR3)

class ExcAVR4(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR4')
    imul: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR4.imul')
    ka: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR4.ka')
    ke: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR4.ke')
    kif: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR4.kif')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR4.t1')
    t1if: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR4.t1if')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR4.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR4.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR4.t4')
    tif: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR4.tif')
    vfmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR4.vfmn')
    vfmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR4.vfmx')
    vrmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR4.vrmn')
    vrmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR4.vrmx')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR4'), ExcAVR4)

class ExcAVR5(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR5')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR5.ka')
    rex: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR5.rex')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR5.ta')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR5'), ExcAVR5)

class ExcAVR7(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7')
    a1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.a1')
    a2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.a2')
    a3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.a3')
    a4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.a4')
    a5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.a5')
    a6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.a6')
    k1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.k1')
    k3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.k3')
    k5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.k5')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.t4')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.t5')
    t6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.t6')
    vmax1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.vmax1')
    vmax3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.vmax3')
    vmax5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.vmax5')
    vmin1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.vmin1')
    vmin3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.vmin3')
    vmin5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7.vmin5')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcAVR7'), ExcAVR7)

class ExcBBC(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcBBC')
    efdmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcBBC.efdmax')
    efdmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcBBC.efdmin')
    k: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcBBC.k')
    switch: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcBBC.switch')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcBBC.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcBBC.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcBBC.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcBBC.t4')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcBBC.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcBBC.vrmin')
    xe: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcBBC.xe')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcBBC'), ExcBBC)

class ExcCZ(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcCZ')
    efdmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcCZ.efdmax')
    efdmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcCZ.efdmin')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcCZ.ka')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcCZ.ke')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcCZ.kp')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcCZ.ta')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcCZ.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcCZ.te')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcCZ.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcCZ.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcCZ'), ExcCZ)

class ExcDC1A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A')
    edfmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.edfmax')
    efd1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.efd1')
    efd2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.efd2')
    efdmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.efdmin')
    exclim: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.exclim')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.ka')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.kf')
    ks: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.ks')
    seefd1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.seefd1')
    seefd2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.seefd2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.tf')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC1A'), ExcDC1A)

class ExcDC2A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A')
    efd1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.efd1')
    efd2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.efd2')
    exclim: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.exclim')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.ka')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.kf')
    ks: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.ks')
    seefd1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.seefd1')
    seefd2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.seefd2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.tf')
    tf1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.tf1')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.vrmin')
    vtlim: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A.vtlim')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC2A'), ExcDC2A)

class ExcDC3A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A')
    edfmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A.edfmax')
    efd1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A.efd1')
    efd2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A.efd2')
    efdlim: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A.efdlim')
    efdmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A.efdmin')
    exclim: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A.exclim')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A.ke')
    kr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A.kr')
    ks: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A.ks')
    kv: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A.kv')
    seefd1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A.seefd1')
    seefd2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A.seefd2')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A.te')
    trh: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A.trh')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A'), ExcDC3A)

class ExcDC3A1(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A1')
    exclim: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A1.exclim')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A1.ka')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A1.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A1.kf')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A1.ki')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A1.kp')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A1.ta')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A1.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A1.tf')
    vb1max: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A1.vb1max')
    vblim: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A1.vblim')
    vbmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A1.vbmax')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A1.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A1.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcDC3A1'), ExcDC3A1)

class ExcELIN1(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1')
    dpnf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1.dpnf')
    efmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1.efmax')
    efmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1.efmin')
    ks1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1.ks1')
    ks2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1.ks2')
    smax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1.smax')
    tfi: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1.tfi')
    tnu: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1.tnu')
    ts1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1.ts1')
    ts2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1.ts2')
    tsw: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1.tsw')
    vpi: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1.vpi')
    vpnf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1.vpnf')
    vpu: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1.vpu')
    xe: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1.xe')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN1'), ExcELIN1)

class ExcELIN2(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2')
    efdbas: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.efdbas')
    iefmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.iefmax')
    iefmax2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.iefmax2')
    iefmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.iefmin')
    k1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.k1')
    k1ec: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.k1ec')
    k2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.k2')
    k3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.k3')
    k4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.k4')
    kd1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.kd1')
    ke2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.ke2')
    ketb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.ketb')
    pid1max: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.pid1max')
    seve1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.seve1')
    seve2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.seve2')
    tb1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.tb1')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.te')
    te2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.te2')
    ti1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.ti1')
    ti3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.ti3')
    ti4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.ti4')
    tr4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.tr4')
    upmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.upmax')
    upmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.upmin')
    ve1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.ve1')
    ve2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.ve2')
    xp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2.xp')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcELIN2'), ExcELIN2)

class ExcHU(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcHU')
    ae: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcHU.ae')
    ai: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcHU.ai')
    atr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcHU.atr')
    emax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcHU.emax')
    emin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcHU.emin')
    imax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcHU.imax')
    imin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcHU.imin')
    ke: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcHU.ke')
    ki: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcHU.ki')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcHU.te')
    ti: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcHU.ti')
    tr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcHU.tr')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcHU'), ExcHU)

class ExcOEX3T(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T')
    e1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.e1')
    e2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.e2')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.kc')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.kd')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.kf')
    see1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.see1')
    see2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.see2')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.t4')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.t5')
    t6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.t6')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.tf')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcOEX3T'), ExcOEX3T)

class ExcPIC(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC')
    e1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.e1')
    e2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.e2')
    efdmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.efdmax')
    efdmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.efdmin')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.kc')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.kf')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.ki')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.kp')
    se1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.se1')
    se2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.se2')
    ta1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.ta1')
    ta2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.ta2')
    ta3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.ta3')
    ta4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.ta4')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.te')
    tf1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.tf1')
    tf2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.tf2')
    vr1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.vr1')
    vr2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.vr2')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcPIC'), ExcPIC)

class ExcREXS(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS')
    e1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.e1')
    e2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.e2')
    fbf: Optional['ExcREXSFeedbackSignalKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.fbf')
    flimf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.flimf')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.kc')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.kd')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.ke')
    kefd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.kefd')
    kf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.kf')
    kh: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.kh')
    kii: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.kii')
    kip: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.kip')
    ks: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.ks')
    kvi: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.kvi')
    kvp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.kvp')
    kvphz: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.kvphz')
    nvphz: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.nvphz')
    se1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.se1')
    se2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.se2')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.ta')
    tb1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.tb1')
    tb2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.tb2')
    tc1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.tc1')
    tc2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.tc2')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.tf')
    tf1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.tf1')
    tf2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.tf2')
    tp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.tp')
    vcmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.vcmax')
    vfmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.vfmax')
    vfmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.vfmin')
    vimax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.vimax')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.vrmin')
    xc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS.xc')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcREXS'), ExcREXS)

class ExcSCRX(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSCRX')
    cswitch: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSCRX.cswitch')
    emax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSCRX.emax')
    emin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSCRX.emin')
    k: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSCRX.k')
    rcrfd: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSCRX.rcrfd')
    tatb: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSCRX.tatb')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSCRX.tb')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSCRX.te')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSCRX'), ExcSCRX)

class ExcSEXS(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSEXS')
    efdmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSEXS.efdmax')
    efdmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSEXS.efdmin')
    emax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSEXS.emax')
    emin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSEXS.emin')
    k: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSEXS.k')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSEXS.kc')
    tatb: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSEXS.tatb')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSEXS.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSEXS.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSEXS.te')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSEXS'), ExcSEXS)

class ExcSK(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK')
    efdmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.efdmax')
    efdmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.efdmin')
    emax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.emax')
    emin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.emin')
    k: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.k')
    k1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.k1')
    k2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.k2')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.kc')
    kce: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.kce')
    kd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.kd')
    kgob: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.kgob')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.kp')
    kqi: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.kqi')
    kqob: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.kqob')
    kqp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.kqp')
    nq: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.nq')
    qconoff: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.qconoff')
    qz: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.qz')
    remote: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.remote')
    sbase: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.sbase')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.te')
    ti: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.ti')
    tp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.tp')
    tr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.tr')
    uimax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.uimax')
    uimin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.uimin')
    urmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.urmax')
    urmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.urmin')
    vtmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.vtmax')
    vtmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.vtmin')
    yp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK.yp')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcSK'), ExcSK)

class ApparentPower(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ApparentPower')
    multiplier: Optional['UnitMultiplier'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ApparentPower.multiplier')
    unit: Optional['UnitSymbol'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ApparentPower.unit')
    value: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ApparentPower.value')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ApparentPower'), ApparentPower)

class ExcST1A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A')
    ilr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.ilr')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.kc')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.kf')
    klr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.klr')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.tb')
    tb1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.tb1')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.tc')
    tc1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.tc1')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.tf')
    vamax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.vamax')
    vamin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.vamin')
    vimax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.vimax')
    vimin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.vimin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.vrmin')
    xe: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A.xe')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST1A'), ExcST1A)

class ExcST2A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A')
    efdmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A.efdmax')
    ka: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A.ka')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A.kc')
    ke: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A.ke')
    kf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A.kf')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A.ki')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A.kp')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A.tc')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A.te')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A.tf')
    uelin: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A.uelin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST2A'), ExcST2A)

class ExcST3A(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A')
    efdmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.efdmax')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.kc')
    kg: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.kg')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.ki')
    kj: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.kj')
    km: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.km')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.kp')
    ks: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.ks')
    ks1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.ks1')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.tc')
    thetap: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.thetap')
    tm: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.tm')
    vbmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.vbmax')
    vgmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.vgmax')
    vimax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.vimax')
    vimin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.vimin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.vrmin')
    xl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A.xl')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST3A'), ExcST3A)

class ExcST4B(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B')
    kc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.kc')
    kg: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.kg')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.ki')
    kim: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.kim')
    kir: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.kir')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.kp')
    kpm: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.kpm')
    kpr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.kpr')
    lvgate: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.lvgate')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.ta')
    thetap: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.thetap')
    uel: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.uel')
    vbmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.vbmax')
    vgmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.vgmax')
    vmmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.vmmax')
    vmmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.vmmin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.vrmin')
    xl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B.xl')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST4B'), ExcST4B)

class ExcST6B(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B')
    ilr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.ilr')
    k1: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.k1')
    kcl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.kcl')
    kff: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.kff')
    kg: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.kg')
    kia: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.kia')
    klr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.klr')
    km: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.km')
    kpa: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.kpa')
    kvd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.kvd')
    oelin: Optional['ExcST6BOELselectorKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.oelin')
    tg: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.tg')
    ts: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.ts')
    tvd: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.tvd')
    vamax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.vamax')
    vamin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.vamin')
    vilim: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.vilim')
    vimax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.vimax')
    vimin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.vimin')
    vmult: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.vmult')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.vrmin')
    xc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B.xc')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST6B'), ExcST6B)

class ExcST7B(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B')
    kh: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B.kh')
    kia: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B.kia')
    kl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B.kl')
    kpa: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B.kpa')
    oelin: Optional['ExcST7BOELselectorKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B.oelin')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B.tc')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B.tf')
    tg: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B.tg')
    tia: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B.tia')
    ts: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B.ts')
    uelin: Optional['ExcST7BUELselectorKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B.uelin')
    vmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B.vmax')
    vmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B.vmin')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcST7B'), ExcST7B)

class OverexcitationLimiterDynamics(DynamicsFunctionBlock):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcitationLimiterDynamics')
    ExcitationSystemDynamics: Optional['ExcitationSystemDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcitationLimiterDynamics.ExcitationSystemDynamics')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcitationLimiterDynamics'), OverexcitationLimiterDynamics)

class OverexcLimIEEE(OverexcitationLimiterDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimIEEE')
    hyst: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimIEEE.hyst')
    ifdlim: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimIEEE.ifdlim')
    ifdmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimIEEE.ifdmax')
    itfpu: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimIEEE.itfpu')
    kcd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimIEEE.kcd')
    kramp: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimIEEE.kramp')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimIEEE'), OverexcLimIEEE)

class OverexcLim2(OverexcitationLimiterDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLim2')
    ifdlim: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLim2.ifdlim')
    koi: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLim2.koi')
    voimax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLim2.voimax')
    voimin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLim2.voimin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLim2'), OverexcLim2)

class OverexcLimX1(OverexcitationLimiterDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX1')
    efd1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX1.efd1')
    efd2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX1.efd2')
    efd3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX1.efd3')
    efddes: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX1.efddes')
    efdrated: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX1.efdrated')
    kmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX1.kmx')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX1.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX1.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX1.t3')
    vlow: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX1.vlow')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX1'), OverexcLimX1)

class OverexcLimX2(OverexcitationLimiterDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX2')
    efd1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX2.efd1')
    efd2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX2.efd2')
    efd3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX2.efd3')
    efddes: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX2.efddes')
    efdrated: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX2.efdrated')
    kmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX2.kmx')
    m: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX2.m')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX2.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX2.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX2.t3')
    vlow: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX2.vlow')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcLimX2'), OverexcLimX2)

class UnderexcitationLimiterDynamics(DynamicsFunctionBlock):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcitationLimiterDynamics')
    ExcitationSystemDynamics: Optional['ExcitationSystemDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcitationLimiterDynamics.ExcitationSystemDynamics')
    RemoteInputSignal: Optional['RemoteInputSignal'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcitationLimiterDynamics.RemoteInputSignal')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcitationLimiterDynamics'), UnderexcitationLimiterDynamics)

class UnderexcLimIEEE1(UnderexcitationLimiterDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1')
    kuc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1.kuc')
    kuf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1.kuf')
    kui: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1.kui')
    kul: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1.kul')
    kur: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1.kur')
    tu1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1.tu1')
    tu2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1.tu2')
    tu3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1.tu3')
    tu4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1.tu4')
    vucmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1.vucmax')
    vuimax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1.vuimax')
    vuimin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1.vuimin')
    vulmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1.vulmax')
    vulmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1.vulmin')
    vurmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1.vurmax')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE1'), UnderexcLimIEEE1)

class UnderexcLimIEEE2(UnderexcitationLimiterDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2')
    k1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.k1')
    k2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.k2')
    kfb: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.kfb')
    kuf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.kuf')
    kui: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.kui')
    kul: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.kul')
    p0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.p0')
    p1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.p1')
    p10: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.p10')
    p2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.p2')
    p3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.p3')
    p4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.p4')
    p5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.p5')
    p6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.p6')
    p7: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.p7')
    p8: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.p8')
    p9: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.p9')
    q0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.q0')
    q1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.q1')
    q10: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.q10')
    q2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.q2')
    q3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.q3')
    q4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.q4')
    q5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.q5')
    q6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.q6')
    q7: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.q7')
    q8: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.q8')
    q9: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.q9')
    tu1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.tu1')
    tu2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.tu2')
    tu3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.tu3')
    tu4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.tu4')
    tul: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.tul')
    tup: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.tup')
    tuq: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.tuq')
    tuv: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.tuv')
    vuimax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.vuimax')
    vuimin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.vuimin')
    vulmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.vulmax')
    vulmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2.vulmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimIEEE2'), UnderexcLimIEEE2)

class UnderexcLim2Simplified(UnderexcitationLimiterDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLim2Simplified')
    kui: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLim2Simplified.kui')
    p0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLim2Simplified.p0')
    p1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLim2Simplified.p1')
    q0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLim2Simplified.q0')
    q1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLim2Simplified.q1')
    vuimax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLim2Simplified.vuimax')
    vuimin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLim2Simplified.vuimin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLim2Simplified'), UnderexcLim2Simplified)

class UnderexcLimX1(UnderexcitationLimiterDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX1')
    k: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX1.k')
    kf2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX1.kf2')
    km: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX1.km')
    melmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX1.melmax')
    tf2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX1.tf2')
    tm: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX1.tm')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX1'), UnderexcLimX1)

class UnderexcLimX2(UnderexcitationLimiterDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX2')
    kf2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX2.kf2')
    km: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX2.km')
    melmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX2.melmax')
    qo: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX2.qo')
    r: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX2.r')
    tf2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX2.tf2')
    tm: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX2.tm')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcLimX2'), UnderexcLimX2)

class PowerSystemStabilizerDynamics(DynamicsFunctionBlock):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PowerSystemStabilizerDynamics')
    ExcitationSystemDynamics: Optional['ExcitationSystemDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PowerSystemStabilizerDynamics.ExcitationSystemDynamics')
    RemoteInputSignal: List['RemoteInputSignal'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PowerSystemStabilizerDynamics.RemoteInputSignal')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PowerSystemStabilizerDynamics'), PowerSystemStabilizerDynamics)

class PssIEEE1A(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE1A')
    a1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE1A.a1')
    a2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE1A.a2')
    inputSignalType: Optional['InputSignalKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE1A.inputSignalType')
    ks: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE1A.ks')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE1A.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE1A.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE1A.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE1A.t4')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE1A.t5')
    t6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE1A.t6')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE1A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE1A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE1A'), PssIEEE1A)

class InputSignalKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#InputSignalKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#InputSignalKind'), InputSignalKind)

class PssIEEE2B(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B')
    inputSignal1Type: Optional['InputSignalKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.inputSignal1Type')
    inputSignal2Type: Optional['InputSignalKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.inputSignal2Type')
    ks1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.ks1')
    ks2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.ks2')
    ks3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.ks3')
    m: Optional[int] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.m')
    n: Optional[int] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.n')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.t1')
    t10: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.t10')
    t11: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.t11')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.t4')
    t6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.t6')
    t7: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.t7')
    t8: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.t8')
    t9: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.t9')
    tw1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.tw1')
    tw2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.tw2')
    tw3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.tw3')
    tw4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.tw4')
    vsi1max: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.vsi1max')
    vsi1min: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.vsi1min')
    vsi2max: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.vsi2max')
    vsi2min: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.vsi2min')
    vstmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.vstmax')
    vstmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B.vstmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE2B'), PssIEEE2B)

class PssIEEE3B(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B')
    a1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.a1')
    a2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.a2')
    a3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.a3')
    a4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.a4')
    a5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.a5')
    a6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.a6')
    a7: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.a7')
    a8: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.a8')
    inputSignal1Type: Optional['InputSignalKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.inputSignal1Type')
    inputSignal2Type: Optional['InputSignalKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.inputSignal2Type')
    ks1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.ks1')
    ks2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.ks2')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.t2')
    tw1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.tw1')
    tw2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.tw2')
    tw3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.tw3')
    vstmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.vstmax')
    vstmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B.vstmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE3B'), PssIEEE3B)

class PssIEEE4B(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B')
    bwh1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.bwh1')
    bwh2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.bwh2')
    bwl1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.bwl1')
    bwl2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.bwl2')
    kh: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.kh')
    kh1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.kh1')
    kh11: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.kh11')
    kh17: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.kh17')
    kh2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.kh2')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ki')
    ki1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ki1')
    ki11: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ki11')
    ki17: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ki17')
    ki2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ki2')
    kl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.kl')
    kl1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.kl1')
    kl11: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.kl11')
    kl17: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.kl17')
    kl2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.kl2')
    omeganh1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.omeganh1')
    omeganh2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.omeganh2')
    omeganl1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.omeganl1')
    omeganl2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.omeganl2')
    th1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.th1')
    th10: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.th10')
    th11: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.th11')
    th12: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.th12')
    th2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.th2')
    th3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.th3')
    th4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.th4')
    th5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.th5')
    th6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.th6')
    th7: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.th7')
    th8: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.th8')
    th9: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.th9')
    ti1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ti1')
    ti10: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ti10')
    ti11: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ti11')
    ti12: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ti12')
    ti2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ti2')
    ti3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ti3')
    ti4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ti4')
    ti5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ti5')
    ti6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ti6')
    ti7: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ti7')
    ti8: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ti8')
    ti9: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.ti9')
    tl1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.tl1')
    tl10: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.tl10')
    tl11: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.tl11')
    tl12: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.tl12')
    tl2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.tl2')
    tl3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.tl3')
    tl4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.tl4')
    tl5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.tl5')
    tl6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.tl6')
    tl7: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.tl7')
    tl8: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.tl8')
    tl9: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.tl9')
    vhmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.vhmax')
    vhmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.vhmin')
    vimax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.vimax')
    vimin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.vimin')
    vlmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.vlmax')
    vlmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.vlmin')
    vstmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.vstmax')
    vstmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B.vstmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssIEEE4B'), PssIEEE4B)

class Pss1(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1')
    kf: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1.kf')
    kpe: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1.kpe')
    ks: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1.ks')
    kw: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1.kw')
    pmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1.pmin')
    t10: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1.t10')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1.t5')
    t6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1.t6')
    t7: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1.t7')
    t8: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1.t8')
    t9: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1.t9')
    tpe: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1.tpe')
    vadat: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1.vadat')
    vsmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1.vsmn')
    vsmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1.vsmx')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1'), Pss1)

class Pss1A(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A')
    a1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.a1')
    a2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.a2')
    a3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.a3')
    a4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.a4')
    a5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.a5')
    a6: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.a6')
    a7: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.a7')
    a8: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.a8')
    inputSignalType: Optional['InputSignalKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.inputSignalType')
    kd: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.kd')
    ks: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.ks')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.t4')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.t5')
    t6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.t6')
    tdelay: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.tdelay')
    vcl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.vcl')
    vcu: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.vcu')
    vrmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.vrmax')
    vrmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A.vrmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Pss1A'), Pss1A)

class Pss2B(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B')
    a: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.a')
    inputSignal1Type: Optional['InputSignalKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.inputSignal1Type')
    inputSignal2Type: Optional['InputSignalKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.inputSignal2Type')
    ks1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.ks1')
    ks2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.ks2')
    ks3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.ks3')
    ks4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.ks4')
    m: Optional[int] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.m')
    n: Optional[int] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.n')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.t1')
    t10: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.t10')
    t11: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.t11')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.t4')
    t6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.t6')
    t7: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.t7')
    t8: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.t8')
    t9: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.t9')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.tb')
    tw1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.tw1')
    tw2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.tw2')
    tw3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.tw3')
    tw4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.tw4')
    vsi1max: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.vsi1max')
    vsi1min: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.vsi1min')
    vsi2max: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.vsi2max')
    vsi2min: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.vsi2min')
    vstmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.vstmax')
    vstmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B.vstmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2B'), Pss2B)

class Pss2ST(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST')
    inputSignal1Type: Optional['InputSignalKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.inputSignal1Type')
    inputSignal2Type: Optional['InputSignalKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.inputSignal2Type')
    k1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.k1')
    k2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.k2')
    lsmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.lsmax')
    lsmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.lsmin')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.t1')
    t10: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.t10')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.t4')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.t5')
    t6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.t6')
    t7: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.t7')
    t8: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.t8')
    t9: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.t9')
    vcl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.vcl')
    vcu: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST.vcu')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Pss2ST'), Pss2ST)

class Pss5(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5')
    ctw2: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.ctw2')
    deadband: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.deadband')
    isfreq: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.isfreq')
    kf: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.kf')
    kpe: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.kpe')
    kpss: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.kpss')
    pmm: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.pmm')
    tl1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.tl1')
    tl2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.tl2')
    tl3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.tl3')
    tl4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.tl4')
    tpe: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.tpe')
    tw1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.tw1')
    tw2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.tw2')
    vadat: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.vadat')
    vsmn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.vsmn')
    vsmx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5.vsmx')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Pss5'), Pss5)

class PssELIN2(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssELIN2')
    apss: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssELIN2.apss')
    ks1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssELIN2.ks1')
    ks2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssELIN2.ks2')
    ppss: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssELIN2.ppss')
    psslim: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssELIN2.psslim')
    ts1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssELIN2.ts1')
    ts2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssELIN2.ts2')
    ts3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssELIN2.ts3')
    ts4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssELIN2.ts4')
    ts5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssELIN2.ts5')
    ts6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssELIN2.ts6')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssELIN2'), PssELIN2)

class PssPTIST1(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST1')
    dtc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST1.dtc')
    dtf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST1.dtf')
    dtp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST1.dtp')
    k: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST1.k')
    m: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST1.m')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST1.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST1.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST1.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST1.t4')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST1.tf')
    tp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST1.tp')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST1'), PssPTIST1)

class PssPTIST3(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3')
    a0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.a0')
    a1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.a1')
    a2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.a2')
    a3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.a3')
    a4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.a4')
    a5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.a5')
    al: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.al')
    athres: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.athres')
    b0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.b0')
    b1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.b1')
    b2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.b2')
    b3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.b3')
    b4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.b4')
    b5: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.b5')
    dl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.dl')
    dtc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.dtc')
    dtf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.dtf')
    dtp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.dtp')
    isw: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.isw')
    k: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.k')
    lthres: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.lthres')
    m: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.m')
    nav: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.nav')
    ncl: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.ncl')
    ncr: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.ncr')
    pmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.pmin')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.t4')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.t5')
    t6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.t6')
    tf: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.tf')
    tp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3.tp')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssPTIST3'), PssPTIST3)

class PssSB4(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssSB4')
    kx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSB4.kx')
    ta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSB4.ta')
    tb: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSB4.tb')
    tc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSB4.tc')
    td: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSB4.td')
    te: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSB4.te')
    tt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSB4.tt')
    tx1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSB4.tx1')
    tx2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSB4.tx2')
    vsmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSB4.vsmax')
    vsmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSB4.vsmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssSB4'), PssSB4)

class PssSH(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssSH')
    k: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSH.k')
    k0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSH.k0')
    k1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSH.k1')
    k2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSH.k2')
    k3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSH.k3')
    k4: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSH.k4')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSH.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSH.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSH.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSH.t4')
    td: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSH.td')
    vsmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSH.vsmax')
    vsmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSH.vsmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssSH'), PssSH)

class PssSK(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssSK')
    k1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSK.k1')
    k2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSK.k2')
    k3: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSK.k3')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSK.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSK.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSK.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSK.t4')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSK.t5')
    t6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSK.t6')
    vsmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSK.vsmax')
    vsmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssSK.vsmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssSK'), PssSK)

class PssWECC(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC')
    inputSignal1Type: Optional['InputSignalKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.inputSignal1Type')
    inputSignal2Type: Optional['InputSignalKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.inputSignal2Type')
    k1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.k1')
    k2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.k2')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.t1')
    t10: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.t10')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.t2')
    t3: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.t3')
    t4: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.t4')
    t5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.t5')
    t6: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.t6')
    t7: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.t7')
    t8: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.t8')
    t9: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.t9')
    vcl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.vcl')
    vcu: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.vcu')
    vsmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.vsmax')
    vsmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC.vsmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PssWECC'), PssWECC)

class DiscontinuousExcitationControlDynamics(DynamicsFunctionBlock):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#DiscontinuousExcitationControlDynamics')
    ExcitationSystemDynamics: Optional['ExcitationSystemDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscontinuousExcitationControlDynamics.ExcitationSystemDynamics')
    RemoteInputSignal: Optional['RemoteInputSignal'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscontinuousExcitationControlDynamics.RemoteInputSignal')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#DiscontinuousExcitationControlDynamics'), DiscontinuousExcitationControlDynamics)

class DiscExcContIEEEDEC1A(DiscontinuousExcitationControlDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A')
    esc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.esc')
    kan: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.kan')
    ketl: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.ketl')
    tan: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.tan')
    td: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.td')
    tl1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.tl1')
    tl2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.tl2')
    tw5: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.tw5')
    val: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.val')
    vanmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.vanmax')
    vomax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.vomax')
    vomin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.vomin')
    vsmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.vsmax')
    vsmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.vsmin')
    vtc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.vtc')
    vtlmt: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.vtlmt')
    vtm: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.vtm')
    vtn: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A.vtn')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC1A'), DiscExcContIEEEDEC1A)

class DiscExcContIEEEDEC2A(DiscontinuousExcitationControlDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC2A')
    td1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC2A.td1')
    td2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC2A.td2')
    vdmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC2A.vdmax')
    vdmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC2A.vdmin')
    vk: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC2A.vk')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC2A'), DiscExcContIEEEDEC2A)

class DiscExcContIEEEDEC3A(DiscontinuousExcitationControlDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC3A')
    tdr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC3A.tdr')
    vtmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC3A.vtmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#DiscExcContIEEEDEC3A'), DiscExcContIEEEDEC3A)

class PFVArControllerType1Dynamics(DynamicsFunctionBlock):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArControllerType1Dynamics')
    ExcitationSystemDynamics: Optional['ExcitationSystemDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArControllerType1Dynamics.ExcitationSystemDynamics')
    RemoteInputSignal: Optional['RemoteInputSignal'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArControllerType1Dynamics.RemoteInputSignal')
    VoltageAdjusterDynamics: Optional['VoltageAdjusterDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArControllerType1Dynamics.VoltageAdjusterDynamics')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArControllerType1Dynamics'), PFVArControllerType1Dynamics)

class PFVArType1IEEEPFController(PFVArControllerType1Dynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEPFController')
    ovex: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEPFController.ovex')
    tpfc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEPFController.tpfc')
    vitmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEPFController.vitmin')
    vpf: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEPFController.vpf')
    vpfcbw: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEPFController.vpfcbw')
    vpfref: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEPFController.vpfref')
    vvtmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEPFController.vvtmax')
    vvtmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEPFController.vvtmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEPFController'), PFVArType1IEEEPFController)

class PFVArType1IEEEVArController(PFVArControllerType1Dynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEVArController')
    tvarc: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEVArController.tvarc')
    vvar: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEVArController.vvar')
    vvarcbw: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEVArController.vvarcbw')
    vvarref: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEVArController.vvarref')
    vvtmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEVArController.vvtmax')
    vvtmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEVArController.vvtmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType1IEEEVArController'), PFVArType1IEEEVArController)

class VoltageAdjusterDynamics(DynamicsFunctionBlock):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#VoltageAdjusterDynamics')
    PFVArControllerType1Dynamics: Optional['PFVArControllerType1Dynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VoltageAdjusterDynamics.PFVArControllerType1Dynamics')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#VoltageAdjusterDynamics'), VoltageAdjusterDynamics)

class VAdjIEEE(VoltageAdjusterDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#VAdjIEEE')
    adjslew: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VAdjIEEE.adjslew')
    taoff: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VAdjIEEE.taoff')
    taon: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VAdjIEEE.taon')
    vadjf: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VAdjIEEE.vadjf')
    vadjmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VAdjIEEE.vadjmax')
    vadjmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VAdjIEEE.vadjmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#VAdjIEEE'), VAdjIEEE)

class PFVArControllerType2Dynamics(DynamicsFunctionBlock):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArControllerType2Dynamics')
    ExcitationSystemDynamics: Optional['ExcitationSystemDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArControllerType2Dynamics.ExcitationSystemDynamics')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArControllerType2Dynamics'), PFVArControllerType2Dynamics)

class PFVArType2IEEEPFController(PFVArControllerType2Dynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEPFController')
    exlon: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEPFController.exlon')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEPFController.ki')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEPFController.kp')
    pfref: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEPFController.pfref')
    vclmt: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEPFController.vclmt')
    vref: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEPFController.vref')
    vs: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEPFController.vs')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEPFController'), PFVArType2IEEEPFController)

class PFVArType2IEEEVArController(PFVArControllerType2Dynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEVArController')
    exlon: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEVArController.exlon')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEVArController.ki')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEVArController.kp')
    qref: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEVArController.qref')
    vclmt: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEVArController.vclmt')
    vref: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEVArController.vref')
    vs: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEVArController.vs')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2IEEEVArController'), PFVArType2IEEEVArController)

class PFVArType2Common1(PFVArControllerType2Dynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2Common1')
    j: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2Common1.j')
    ki: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2Common1.ki')
    kp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2Common1.kp')
    max: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2Common1.max')
    ref: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2Common1.ref')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArType2Common1'), PFVArType2Common1)

class VoltageCompensatorDynamics(DynamicsFunctionBlock):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#VoltageCompensatorDynamics')
    ExcitationSystemDynamics: Optional['ExcitationSystemDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VoltageCompensatorDynamics.ExcitationSystemDynamics')
    RemoteInputSignal: Optional['RemoteInputSignal'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VoltageCompensatorDynamics.RemoteInputSignal')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#VoltageCompensatorDynamics'), VoltageCompensatorDynamics)

class VCompIEEEType1(VoltageCompensatorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#VCompIEEEType1')
    rc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VCompIEEEType1.rc')
    tr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VCompIEEEType1.tr')
    xc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VCompIEEEType1.xc')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#VCompIEEEType1'), VCompIEEEType1)

class VCompIEEEType2(VoltageCompensatorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#VCompIEEEType2')
    GenICompensationForGenJ: List['GenICompensationForGenJ'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VCompIEEEType2.GenICompensationForGenJ')
    tr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VCompIEEEType2.tr')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#VCompIEEEType2'), VCompIEEEType2)

class GenICompensationForGenJ(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GenICompensationForGenJ')
    SynchronousMachineDynamics: Optional['SynchronousMachineDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GenICompensationForGenJ.SynchronousMachineDynamics')
    VcompIEEEType2: Optional['VCompIEEEType2'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GenICompensationForGenJ.VcompIEEEType2')
    rcij: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GenICompensationForGenJ.rcij')
    xcij: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#GenICompensationForGenJ.xcij')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GenICompensationForGenJ'), GenICompensationForGenJ)

class WindAeroConstIEC(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindAeroConstIEC')
    WindGenTurbineType1IEC: Optional['WindGenTurbineType1IEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindAeroConstIEC.WindGenTurbineType1IEC')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindAeroConstIEC'), WindAeroConstIEC)

class WindAeroLinearIEC(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindAeroLinearIEC')
    WindGenTurbineType3IEC: Optional['WindGenTurbineType3IEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindAeroLinearIEC.WindGenTurbineType3IEC')
    dpomega: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindAeroLinearIEC.dpomega')
    dptheta: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindAeroLinearIEC.dptheta')
    omegazero: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindAeroLinearIEC.omegazero')
    pavail: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindAeroLinearIEC.pavail')
    thetazero: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindAeroLinearIEC.thetazero')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindAeroLinearIEC'), WindAeroLinearIEC)

class WindContCurrLimIEC(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindContCurrLimIEC')
    WindDynamicsLookupTable: List['WindDynamicsLookupTable'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContCurrLimIEC.WindDynamicsLookupTable')
    WindTurbineType3or4IEC: Optional['WindTurbineType3or4IEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContCurrLimIEC.WindTurbineType3or4IEC')
    imax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContCurrLimIEC.imax')
    imaxdip: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContCurrLimIEC.imaxdip')
    mdfslim: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContCurrLimIEC.mdfslim')
    mqpri: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContCurrLimIEC.mqpri')
    tufilt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContCurrLimIEC.tufilt')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindContCurrLimIEC'), WindContCurrLimIEC)

class WindContPitchAngleIEC(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPitchAngleIEC')
    WindGenTurbineType3IEC: Optional['WindGenTurbineType3IEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPitchAngleIEC.WindGenTurbineType3IEC')
    dthetamax: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPitchAngleIEC.dthetamax')
    dthetamin: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPitchAngleIEC.dthetamin')
    kic: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPitchAngleIEC.kic')
    kiomega: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPitchAngleIEC.kiomega')
    kpc: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPitchAngleIEC.kpc')
    kpomega: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPitchAngleIEC.kpomega')
    kpx: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPitchAngleIEC.kpx')
    thetamax: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPitchAngleIEC.thetamax')
    thetamin: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPitchAngleIEC.thetamin')
    ttheta: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPitchAngleIEC.ttheta')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPitchAngleIEC'), WindContPitchAngleIEC)

class WindContPType3IEC(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC')
    WindDynamicsLookupTable: List['WindDynamicsLookupTable'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.WindDynamicsLookupTable')
    WindGenTurbineType3IEC: Optional['WindGenTurbineType3IEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.WindGenTurbineType3IEC')
    dpmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.dpmax')
    dtrisemaxlvrt: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.dtrisemaxlvrt')
    kdtd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.kdtd')
    kip: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.kip')
    kpp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.kpp')
    mplvrt: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.mplvrt')
    omegaoffset: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.omegaoffset')
    pdtdmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.pdtdmax')
    rramp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.rramp')
    tdvs: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.tdvs')
    temin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.temin')
    tomegafilt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.tomegafilt')
    tpfilt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.tpfilt')
    tpord: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.tpord')
    tufilt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.tufilt')
    tuscale: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.tuscale')
    twref: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.twref')
    udvs: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.udvs')
    updip: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.updip')
    wdtd: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.wdtd')
    zeta: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC.zeta')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType3IEC'), WindContPType3IEC)

class WindContPType4aIEC(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType4aIEC')
    WindTurbineType4aIEC: Optional['WindTurbineType4aIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType4aIEC.WindTurbineType4aIEC')
    dpmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType4aIEC.dpmax')
    tpord: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType4aIEC.tpord')
    tufilt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType4aIEC.tufilt')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType4aIEC'), WindContPType4aIEC)

class WindContPType4bIEC(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType4bIEC')
    WindTurbineType4bIEC: Optional['WindTurbineType4bIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType4bIEC.WindTurbineType4bIEC')
    dpmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType4bIEC.dpmax')
    tpaero: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType4bIEC.tpaero')
    tpord: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType4bIEC.tpord')
    tufilt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType4bIEC.tufilt')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindContPType4bIEC'), WindContPType4bIEC)

class WindContQIEC(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC')
    WindTurbineType3or4IEC: Optional['WindTurbineType3or4IEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.WindTurbineType3or4IEC')
    iqh1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.iqh1')
    iqmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.iqmax')
    iqmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.iqmin')
    iqpost: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.iqpost')
    kiq: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.kiq')
    kiu: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.kiu')
    kpq: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.kpq')
    kpu: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.kpu')
    kqv: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.kqv')
    qmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.qmax')
    qmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.qmin')
    rdroop: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.rdroop')
    tiq: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.tiq')
    tpfilt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.tpfilt')
    tpost: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.tpost')
    tqord: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.tqord')
    tufilt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.tufilt')
    udb1: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.udb1')
    udb2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.udb2')
    umax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.umax')
    umin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.umin')
    uqdip: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.uqdip')
    uref0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.uref0')
    windLVRTQcontrolModesType: Optional['WindLVRTQcontrolModesKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.windLVRTQcontrolModesType')
    windQcontrolModesType: Optional['WindQcontrolModesKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.windQcontrolModesType')
    xdroop: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC.xdroop')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindContQIEC'), WindContQIEC)

class WindLVRTQcontrolModesKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindLVRTQcontrolModesKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindLVRTQcontrolModesKind'), WindLVRTQcontrolModesKind)

class WindQcontrolModesKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindQcontrolModesKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindQcontrolModesKind'), WindQcontrolModesKind)

class WindContRotorRIEC(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindContRotorRIEC')
    WindDynamicsLookupTable: List['WindDynamicsLookupTable'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContRotorRIEC.WindDynamicsLookupTable')
    WindGenTurbineType2IEC: Optional['WindGenTurbineType2IEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContRotorRIEC.WindGenTurbineType2IEC')
    kirr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContRotorRIEC.kirr')
    komegafilt: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContRotorRIEC.komegafilt')
    kpfilt: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContRotorRIEC.kpfilt')
    kprr: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContRotorRIEC.kprr')
    rmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContRotorRIEC.rmax')
    rmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContRotorRIEC.rmin')
    tomegafilt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContRotorRIEC.tomegafilt')
    tpfilt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindContRotorRIEC.tpfilt')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindContRotorRIEC'), WindContRotorRIEC)

class WindDynamicsLookupTable(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindDynamicsLookupTable')
    WindContCurrLimIEC: Optional['WindContCurrLimIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindDynamicsLookupTable.WindContCurrLimIEC')
    WindContPType3IEC: Optional['WindContPType3IEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindDynamicsLookupTable.WindContPType3IEC')
    WindContRotorRIEC: Optional['WindContRotorRIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindDynamicsLookupTable.WindContRotorRIEC')
    WindPlantFreqPcontrolIEC: Optional['WindPlantFreqPcontrolIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindDynamicsLookupTable.WindPlantFreqPcontrolIEC')
    input: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindDynamicsLookupTable.input')
    lookupTableFunctionType: Optional['WindLookupTableFunctionKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindDynamicsLookupTable.lookupTableFunctionType')
    output: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindDynamicsLookupTable.output')
    sequence: Optional[int] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindDynamicsLookupTable.sequence')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindDynamicsLookupTable'), WindDynamicsLookupTable)

class WindLookupTableFunctionKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindLookupTableFunctionKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindLookupTableFunctionKind'), WindLookupTableFunctionKind)

class WindMechIEC(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindMechIEC')
    WindGenTurbineType3IEC: Optional['WindGenTurbineType3IEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindMechIEC.WindGenTurbineType3IEC')
    WindTurbineType1or2IEC: Optional['WindTurbineType1or2IEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindMechIEC.WindTurbineType1or2IEC')
    WindTurbineType4bIEC: Optional['WindTurbineType4bIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindMechIEC.WindTurbineType4bIEC')
    cdrt: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindMechIEC.cdrt')
    hgen: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindMechIEC.hgen')
    hwtr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindMechIEC.hwtr')
    kdrt: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindMechIEC.kdrt')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindMechIEC'), WindMechIEC)

class WindPitchContEmulIEC(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindPitchContEmulIEC')
    WindGenTurbineType2IEC: Optional['WindGenTurbineType2IEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPitchContEmulIEC.WindGenTurbineType2IEC')
    kdroop: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPitchContEmulIEC.kdroop')
    kipce: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPitchContEmulIEC.kipce')
    komegaaero: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPitchContEmulIEC.komegaaero')
    kppce: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPitchContEmulIEC.kppce')
    omegaref: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPitchContEmulIEC.omegaref')
    pimax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPitchContEmulIEC.pimax')
    pimin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPitchContEmulIEC.pimin')
    t1: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPitchContEmulIEC.t1')
    t2: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPitchContEmulIEC.t2')
    tpe: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPitchContEmulIEC.tpe')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindPitchContEmulIEC'), WindPitchContEmulIEC)

class WindPlantDynamics(DynamicsFunctionBlock):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantDynamics')
    RemoteInputSignal: Optional['RemoteInputSignal'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantDynamics.RemoteInputSignal')
    WindTurbineType3or4Dynamics: List['WindTurbineType3or4Dynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantDynamics.WindTurbineType3or4Dynamics')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantDynamics'), WindPlantDynamics)

class WindPlantFreqPcontrolIEC(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantFreqPcontrolIEC')
    WindDynamicsLookupTable: List['WindDynamicsLookupTable'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantFreqPcontrolIEC.WindDynamicsLookupTable')
    WindPlantIEC: Optional['WindPlantIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantFreqPcontrolIEC.WindPlantIEC')
    dprefmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantFreqPcontrolIEC.dprefmax')
    dprefmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantFreqPcontrolIEC.dprefmin')
    kiwpp: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantFreqPcontrolIEC.kiwpp')
    kpwpp: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantFreqPcontrolIEC.kpwpp')
    prefmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantFreqPcontrolIEC.prefmax')
    prefmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantFreqPcontrolIEC.prefmin')
    tpft: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantFreqPcontrolIEC.tpft')
    tpfv: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantFreqPcontrolIEC.tpfv')
    twpffilt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantFreqPcontrolIEC.twpffilt')
    twppfilt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantFreqPcontrolIEC.twppfilt')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantFreqPcontrolIEC'), WindPlantFreqPcontrolIEC)

class WindPlantIEC(WindPlantDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantIEC')
    WindPlantFreqPcontrolIEC: Optional['WindPlantFreqPcontrolIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantIEC.WindPlantFreqPcontrolIEC')
    WindPlantReactiveControlIEC: Optional['WindPlantReactiveControlIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantIEC.WindPlantReactiveControlIEC')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantIEC'), WindPlantIEC)

class WindPlantReactiveControlIEC(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantReactiveControlIEC')
    WindPlantIEC: Optional['WindPlantIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantReactiveControlIEC.WindPlantIEC')
    kiwpx: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantReactiveControlIEC.kiwpx')
    kpwpx: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantReactiveControlIEC.kpwpx')
    kwpqu: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantReactiveControlIEC.kwpqu')
    mwppf: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantReactiveControlIEC.mwppf')
    mwpu: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantReactiveControlIEC.mwpu')
    twppfilt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantReactiveControlIEC.twppfilt')
    twpqfilt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantReactiveControlIEC.twpqfilt')
    twpufilt: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantReactiveControlIEC.twpufilt')
    txft: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantReactiveControlIEC.txft')
    txfv: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantReactiveControlIEC.txfv')
    uwpqdip: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantReactiveControlIEC.uwpqdip')
    xrefmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantReactiveControlIEC.xrefmax')
    xrefmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantReactiveControlIEC.xrefmin')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantReactiveControlIEC'), WindPlantReactiveControlIEC)

class WindProtectionIEC(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindProtectionIEC')
    WindTurbineType1or2IEC: Optional['WindTurbineType1or2IEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindProtectionIEC.WindTurbineType1or2IEC')
    WindTurbineType3or4IEC: Optional['WindTurbineType3or4IEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindProtectionIEC.WindTurbineType3or4IEC')
    fover: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindProtectionIEC.fover')
    funder: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindProtectionIEC.funder')
    tfover: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindProtectionIEC.tfover')
    tfunder: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindProtectionIEC.tfunder')
    tuover: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindProtectionIEC.tuover')
    tuunder: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindProtectionIEC.tuunder')
    uover: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindProtectionIEC.uover')
    uunder: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindProtectionIEC.uunder')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindProtectionIEC'), WindProtectionIEC)

class WindTurbineType1or2Dynamics(DynamicsFunctionBlock):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType1or2Dynamics')
    AsynchronousMachineDynamics: Optional['AsynchronousMachineDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType1or2Dynamics.AsynchronousMachineDynamics')
    RemoteInputSignal: Optional['RemoteInputSignal'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType1or2Dynamics.RemoteInputSignal')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType1or2Dynamics'), WindTurbineType1or2Dynamics)

class WindTurbineType1or2IEC(WindTurbineType1or2Dynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType1or2IEC')
    WindMechIEC: Optional['WindMechIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType1or2IEC.WindMechIEC')
    WindProtectionIEC: Optional['WindProtectionIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType1or2IEC.WindProtectionIEC')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType1or2IEC'), WindTurbineType1or2IEC)

class WindTurbineType3or4Dynamics(DynamicsFunctionBlock):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType3or4Dynamics')
    EnergySource: Optional['EnergySource'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType3or4Dynamics.EnergySource')
    RemoteInputSignal: Optional['RemoteInputSignal'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType3or4Dynamics.RemoteInputSignal')
    WindPlantDynamics: Optional['WindPlantDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType3or4Dynamics.WindPlantDynamics')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType3or4Dynamics'), WindTurbineType3or4Dynamics)

class WindTurbineType3or4IEC(WindTurbineType3or4Dynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType3or4IEC')
    WIndContQIEC: Optional['WindContQIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType3or4IEC.WIndContQIEC')
    WindContCurrLimIEC: Optional['WindContCurrLimIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType3or4IEC.WindContCurrLimIEC')
    WindProtectionIEC: Optional['WindProtectionIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType3or4IEC.WindProtectionIEC')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType3or4IEC'), WindTurbineType3or4IEC)

class GenericNonLinearLoadModelKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GenericNonLinearLoadModelKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#GenericNonLinearLoadModelKind'), GenericNonLinearLoadModelKind)

class LoadDynamics(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#LoadDynamics')
    EnergyConsumer: List['EnergyConsumer'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadDynamics.EnergyConsumer')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#LoadDynamics'), LoadDynamics)

class LoadAggregate(LoadDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#LoadAggregate')
    LoadMotor: Optional['LoadMotor'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadAggregate.LoadMotor')
    LoadStatic: Optional['LoadStatic'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadAggregate.LoadStatic')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#LoadAggregate'), LoadAggregate)

class LoadStatic(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic')
    LoadAggregate: Optional['LoadAggregate'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.LoadAggregate')
    ep1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.ep1')
    ep2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.ep2')
    ep3: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.ep3')
    eq1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.eq1')
    eq2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.eq2')
    eq3: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.eq3')
    kp1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.kp1')
    kp2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.kp2')
    kp3: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.kp3')
    kp4: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.kp4')
    kpf: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.kpf')
    kq1: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.kq1')
    kq2: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.kq2')
    kq3: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.kq3')
    kq4: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.kq4')
    kqf: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.kqf')
    staticLoadModelType: Optional['StaticLoadModelKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic.staticLoadModelType')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#LoadStatic'), LoadStatic)

class StaticLoadModelKind(CIMBase):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#StaticLoadModelKind')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#StaticLoadModelKind'), StaticLoadModelKind)

class LoadMotor(IdentifiedObject):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#LoadMotor')
    LoadAggregate: Optional['LoadAggregate'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadMotor.LoadAggregate')
    d: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadMotor.d')
    h: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadMotor.h')
    lfac: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadMotor.lfac')
    lp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadMotor.lp')
    lpp: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadMotor.lpp')
    ls: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadMotor.ls')
    pfrac: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadMotor.pfrac')
    ra: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadMotor.ra')
    tbkr: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadMotor.tbkr')
    tpo: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadMotor.tpo')
    tppo: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadMotor.tppo')
    tv: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadMotor.tv')
    vt: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadMotor.vt')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#LoadMotor'), LoadMotor)

class Equipment(PowerSystemResource):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Equipment')
    EquipmentContainer: Optional['EquipmentContainer'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Equipment.EquipmentContainer')
    OperationalLimitSet: List['OperationalLimitSet'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Equipment.OperationalLimitSet')
    aggregate: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#Equipment.aggregate')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#Equipment'), Equipment)

class WindPlantUserDefined(WindPlantDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantUserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantUserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantUserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindPlantUserDefined'), WindPlantUserDefined)

class WindType1or2UserDefined(WindTurbineType1or2Dynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindType1or2UserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindType1or2UserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindType1or2UserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindType1or2UserDefined'), WindType1or2UserDefined)

class WindType3or4UserDefined(WindTurbineType3or4Dynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindType3or4UserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindType3or4UserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindType3or4UserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindType3or4UserDefined'), WindType3or4UserDefined)

class SynchronousMachineUserDefined(SynchronousMachineDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineUserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineUserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineUserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineUserDefined'), SynchronousMachineUserDefined)

class AsynchronousMachineUserDefined(AsynchronousMachineDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineUserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineUserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineUserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachineUserDefined'), AsynchronousMachineUserDefined)

class TurbineGovernorUserDefined(TurbineGovernorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#TurbineGovernorUserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbineGovernorUserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbineGovernorUserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#TurbineGovernorUserDefined'), TurbineGovernorUserDefined)

class TurbineLoadControllerUserDefined(TurbineLoadControllerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#TurbineLoadControllerUserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbineLoadControllerUserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#TurbineLoadControllerUserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#TurbineLoadControllerUserDefined'), TurbineLoadControllerUserDefined)

class MechanicalLoadUserDefined(MechanicalLoadDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#MechanicalLoadUserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#MechanicalLoadUserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#MechanicalLoadUserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#MechanicalLoadUserDefined'), MechanicalLoadUserDefined)

class ExcitationSystemUserDefined(ExcitationSystemDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcitationSystemUserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcitationSystemUserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ExcitationSystemUserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ExcitationSystemUserDefined'), ExcitationSystemUserDefined)

class OverexcitationLimiterUserDefined(OverexcitationLimiterDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcitationLimiterUserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcitationLimiterUserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcitationLimiterUserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#OverexcitationLimiterUserDefined'), OverexcitationLimiterUserDefined)

class UnderexcitationLimiterUserDefined(UnderexcitationLimiterDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcitationLimiterUserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcitationLimiterUserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcitationLimiterUserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#UnderexcitationLimiterUserDefined'), UnderexcitationLimiterUserDefined)

class PowerSystemStabilizerUserDefined(PowerSystemStabilizerDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PowerSystemStabilizerUserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PowerSystemStabilizerUserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PowerSystemStabilizerUserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PowerSystemStabilizerUserDefined'), PowerSystemStabilizerUserDefined)

class DiscontinuousExcitationControlUserDefined(DiscontinuousExcitationControlDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#DiscontinuousExcitationControlUserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscontinuousExcitationControlUserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#DiscontinuousExcitationControlUserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#DiscontinuousExcitationControlUserDefined'), DiscontinuousExcitationControlUserDefined)

class PFVArControllerType1UserDefined(PFVArControllerType1Dynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArControllerType1UserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArControllerType1UserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArControllerType1UserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArControllerType1UserDefined'), PFVArControllerType1UserDefined)

class VoltageAdjusterUserDefined(VoltageAdjusterDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#VoltageAdjusterUserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VoltageAdjusterUserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VoltageAdjusterUserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#VoltageAdjusterUserDefined'), VoltageAdjusterUserDefined)

class PFVArControllerType2UserDefined(PFVArControllerType2Dynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArControllerType2UserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArControllerType2UserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArControllerType2UserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#PFVArControllerType2UserDefined'), PFVArControllerType2UserDefined)

class VoltageCompensatorUserDefined(VoltageCompensatorDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#VoltageCompensatorUserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VoltageCompensatorUserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#VoltageCompensatorUserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#VoltageCompensatorUserDefined'), VoltageCompensatorUserDefined)

class LoadUserDefined(LoadDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#LoadUserDefined')
    ProprietaryParameterDynamics: List['ProprietaryParameterDynamics'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadUserDefined.ProprietaryParameterDynamics')
    proprietary: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadUserDefined.proprietary')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#LoadUserDefined'), LoadUserDefined)

class SynchronousMachineSimplified(SynchronousMachineDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineSimplified')
    pass

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachineSimplified'), SynchronousMachineSimplified)

class WindGenTurbineType1IEC(WindTurbineType1or2IEC):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType1IEC')
    WindAeroConstIEC: Optional['WindAeroConstIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType1IEC.WindAeroConstIEC')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType1IEC'), WindGenTurbineType1IEC)

class WindGenTurbineType2IEC(WindTurbineType1or2IEC):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType2IEC')
    WindContRotorRIEC: Optional['WindContRotorRIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType2IEC.WindContRotorRIEC')
    WindPitchContEmulIEC: Optional['WindPitchContEmulIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType2IEC.WindPitchContEmulIEC')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType2IEC'), WindGenTurbineType2IEC)

class WindGenTurbineType3IEC(WindTurbineType3or4IEC):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3IEC')
    WindAeroLinearIEC: Optional['WindAeroLinearIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3IEC.WindAeroLinearIEC')
    WindContPType3IEC: Optional['WindContPType3IEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3IEC.WindContPType3IEC')
    WindContPitchAngleIEC: Optional['WindContPitchAngleIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3IEC.WindContPitchAngleIEC')
    WindMechIEC: Optional['WindMechIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3IEC.WindMechIEC')
    dipmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3IEC.dipmax')
    diqmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3IEC.diqmax')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3IEC'), WindGenTurbineType3IEC)

class WindGenType4IEC(WindTurbineType3or4IEC):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenType4IEC')
    dipmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenType4IEC.dipmax')
    diqmax: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenType4IEC.diqmax')
    diqmin: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenType4IEC.diqmin')
    tg: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenType4IEC.tg')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenType4IEC'), WindGenType4IEC)

class WindTurbineType4aIEC(WindGenType4IEC):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType4aIEC')
    WindContPType4aIEC: Optional['WindContPType4aIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType4aIEC.WindContPType4aIEC')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType4aIEC'), WindTurbineType4aIEC)

class WindTurbineType4bIEC(WindGenType4IEC):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType4bIEC')
    WindContPType4bIEC: Optional['WindContPType4bIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType4bIEC.WindContPType4bIEC')
    WindMechIEC: Optional['WindMechIEC'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType4bIEC.WindMechIEC')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindTurbineType4bIEC'), WindTurbineType4bIEC)

class LoadComposite(LoadDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#LoadComposite')
    epfd: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadComposite.epfd')
    epfs: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadComposite.epfs')
    epvd: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadComposite.epvd')
    epvs: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadComposite.epvs')
    eqfd: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadComposite.eqfd')
    eqfs: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadComposite.eqfs')
    eqvd: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadComposite.eqvd')
    eqvs: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadComposite.eqvs')
    h: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadComposite.h')
    lfrac: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadComposite.lfrac')
    pfrac: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadComposite.pfrac')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#LoadComposite'), LoadComposite)

class LoadGenericNonLinear(LoadDynamics):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#LoadGenericNonLinear')
    bs: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadGenericNonLinear.bs')
    bt: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadGenericNonLinear.bt')
    genericNonLinearLoadModelType: Optional['GenericNonLinearLoadModelKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadGenericNonLinear.genericNonLinearLoadModelType')
    ls: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadGenericNonLinear.ls')
    lt: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadGenericNonLinear.lt')
    pt: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadGenericNonLinear.pt')
    qt: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadGenericNonLinear.qt')
    tp: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadGenericNonLinear.tp')
    tq: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#LoadGenericNonLinear.tq')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#LoadGenericNonLinear'), LoadGenericNonLinear)

class ConductingEquipment(Equipment):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ConductingEquipment')
    BaseVoltage: Optional['BaseVoltage'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ConductingEquipment.BaseVoltage')
    SvStatus: Optional['SvStatus'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ConductingEquipment.SvStatus')
    Terminals: List['Terminal'] = Field(default_factory=list, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#ConductingEquipment.Terminals')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#ConductingEquipment'), ConductingEquipment)

class EnergyConsumer(ConductingEquipment):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#EnergyConsumer')
    LoadDynamics: Optional['LoadDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergyConsumer.LoadDynamics')
    LoadResponse: Optional['LoadResponseCharacteristic'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergyConsumer.LoadResponse')
    p: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergyConsumer.p')
    pfixed: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergyConsumer.pfixed')
    pfixedPct: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergyConsumer.pfixedPct')
    q: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergyConsumer.q')
    qfixed: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergyConsumer.qfixed')
    qfixedPct: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergyConsumer.qfixedPct')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#EnergyConsumer'), EnergyConsumer)

class EnergySource(ConductingEquipment):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#EnergySource')
    EnergySchedulingType: Optional['EnergySchedulingType'] = Field(default=None, alias='http://entsoe.eu/CIM/SchemaExtension/3/1#EnergySource.EnergySchedulingType')
    EnergySchedulingType_EnergySource_EnergySchedulingType: Optional['EnergySchedulingType'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergySource.EnergySchedulingType')
    WindTurbineType3or4Dynamics: Optional['WindTurbineType3or4Dynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergySource.WindTurbineType3or4Dynamics')
    activePower: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergySource.activePower')
    nominalVoltage: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergySource.nominalVoltage')
    r: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergySource.r')
    r0: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergySource.r0')
    reactivePower: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergySource.reactivePower')
    rn: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergySource.rn')
    voltageAngle: Optional['AngleRadians'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergySource.voltageAngle')
    voltageMagnitude: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergySource.voltageMagnitude')
    x: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergySource.x')
    x0: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergySource.x0')
    xn: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#EnergySource.xn')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#EnergySource'), EnergySource)

class RegulatingCondEq(ConductingEquipment):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#RegulatingCondEq')
    RegulatingControl: Optional['RegulatingControl'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RegulatingCondEq.RegulatingControl')
    controlEnabled: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RegulatingCondEq.controlEnabled')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#RegulatingCondEq'), RegulatingCondEq)

class RotatingMachine(RegulatingCondEq):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachine')
    GeneratingUnit: Optional['GeneratingUnit'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachine.GeneratingUnit')
    HydroPump: Optional['HydroPump'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachine.HydroPump')
    p: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachine.p')
    q: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachine.q')
    ratedPowerFactor: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachine.ratedPowerFactor')
    ratedS: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachine.ratedS')
    ratedU: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachine.ratedU')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#RotatingMachine'), RotatingMachine)

class SynchronousMachine(RotatingMachine):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine')
    InitialReactiveCapabilityCurve: Optional['ReactiveCapabilityCurve'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.InitialReactiveCapabilityCurve')
    SynchronousMachineDynamics: Optional['SynchronousMachineDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.SynchronousMachineDynamics')
    earthing: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.earthing')
    earthingStarPointR: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.earthingStarPointR')
    earthingStarPointX: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.earthingStarPointX')
    ikk: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.ikk')
    maxQ: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.maxQ')
    minQ: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.minQ')
    mu: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.mu')
    operatingMode: Optional['SynchronousMachineOperatingMode'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.operatingMode')
    qPercent: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.qPercent')
    r: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.r')
    r0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.r0')
    r2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.r2')
    referencePriority: Optional[int] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.referencePriority')
    satDirectSubtransX: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.satDirectSubtransX')
    satDirectSyncX: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.satDirectSyncX')
    satDirectTransX: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.satDirectTransX')
    shortCircuitRotorType: Optional['ShortCircuitRotorKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.shortCircuitRotorType')
    type: Optional['SynchronousMachineKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.type')
    voltageRegulationRange: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.voltageRegulationRange')
    x0: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.x0')
    x2: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine.x2')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#SynchronousMachine'), SynchronousMachine)

class WindGenTurbineType3aIEC(WindGenTurbineType3IEC):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3aIEC')
    kpc: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3aIEC.kpc')
    tic: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3aIEC.tic')
    xs: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3aIEC.xs')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3aIEC'), WindGenTurbineType3aIEC)

class WindGenTurbineType3bIEC(WindGenTurbineType3IEC):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3bIEC')
    fducw: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3bIEC.fducw')
    mwtcwp: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3bIEC.mwtcwp')
    tg: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3bIEC.tg')
    two: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3bIEC.two')
    xs: Optional['PU'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3bIEC.xs')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#WindGenTurbineType3bIEC'), WindGenTurbineType3bIEC)

class AsynchronousMachine(RotatingMachine):
    __cim_class__ = URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachine')
    AsynchronousMachineDynamics: Optional['AsynchronousMachineDynamics'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachine.AsynchronousMachineDynamics')
    asynchronousMachineType: Optional['AsynchronousMachineKind'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachine.asynchronousMachineType')
    converterFedDrive: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachine.converterFedDrive')
    efficiency: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachine.efficiency')
    iaIrRatio: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachine.iaIrRatio')
    nominalFrequency: Optional['Frequency'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachine.nominalFrequency')
    nominalSpeed: Optional['RotationSpeed'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachine.nominalSpeed')
    polePairNumber: Optional[int] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachine.polePairNumber')
    ratedMechanicalPower: Optional[float] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachine.ratedMechanicalPower')
    reversible: Optional[bool] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachine.reversible')
    rxLockedRotorRatio: Optional['Simple_Float'] = Field(default=None, alias='http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachine.rxLockedRotorRatio')

CIMModelRegistry.register(URIRef('http://iec.ch/TC57/2013/CIM-schema-cim16#AsynchronousMachine'), AsynchronousMachine)

__all__ = [
    'DynamicsVersion',
    'ACDCTerminal',
    'PowerSystemResource',
    'Terminal',
    'RemoteInputSignal',
    'RemoteSignalKind',
    'DynamicsFunctionBlock',
    'RotatingMachineDynamics',
    'Seconds',
    'PU',
    'ProprietaryParameterDynamics',
    'SynchronousMachineDynamics',
    'SynchronousMachineDetailed',
    'IfdBaseKind',
    'CurrentFlow',
    'SynchronousMachineTimeConstantReactance',
    'RotorKind',
    'SynchronousMachineModelKind',
    'SynchronousMachineEquivalentCircuit',
    'AsynchronousMachineDynamics',
    'AsynchronousMachineTimeConstantReactance',
    'AsynchronousMachineEquivalentCircuit',
    'TurbineGovernorDynamics',
    'GovHydroIEEE0',
    'ActivePower',
    'GovHydroIEEE2',
    'GovSteamIEEE1',
    'GovCT1',
    'DroopSignalFeedbackKind',
    'GovCT2',
    'Frequency',
    'GovGAST',
    'GovGAST1',
    'GovGAST2',
    'Temperature',
    'GovGAST3',
    'GovGAST4',
    'GovGASTWD',
    'GovHydro1',
    'GovHydro2',
    'GovHydro3',
    'GovHydro4',
    'GovHydroDD',
    'GovHydroFrancis',
    'Area',
    'FrancisGovernorControlKind',
    'Length',
    'VolumeFlowRate',
    'GovHydroPelton',
    'GovHydroPID',
    'GovHydroPID2',
    'GovHydroR',
    'GovHydroWEH',
    'GovHydroWPID',
    'GovSteam0',
    'GovSteam1',
    'GovSteam2',
    'GovSteamCC',
    'GovSteamEU',
    'GovSteamFV2',
    'GovSteamFV3',
    'GovSteamFV4',
    'GovSteamSGO',
    'TurbineLoadControllerDynamics',
    'TurbLCFB1',
    'MechanicalLoadDynamics',
    'MechLoad1',
    'ExcIEEEST1AUELselectorKind',
    'ExcREXSFeedbackSignalKind',
    'ExcST6BOELselectorKind',
    'ExcST7BOELselectorKind',
    'ExcST7BUELselectorKind',
    'ExcitationSystemDynamics',
    'ExcIEEEAC1A',
    'ExcIEEEAC2A',
    'ExcIEEEAC3A',
    'ExcIEEEAC4A',
    'ExcIEEEAC5A',
    'ExcIEEEAC6A',
    'ExcIEEEAC7B',
    'ExcIEEEAC8B',
    'ExcIEEEDC1A',
    'ExcIEEEDC2A',
    'ExcIEEEDC3A',
    'ExcIEEEDC4B',
    'ExcIEEEST1A',
    'ExcIEEEST2A',
    'ExcIEEEST3A',
    'ExcIEEEST4B',
    'ExcIEEEST5B',
    'ExcIEEEST6B',
    'ExcIEEEST7B',
    'ExcAC1A',
    'ExcAC2A',
    'ExcAC3A',
    'ExcAC4A',
    'ExcAC5A',
    'ExcAC6A',
    'ExcAC8B',
    'ExcANS',
    'ExcAVR1',
    'ExcAVR2',
    'ExcAVR3',
    'ExcAVR4',
    'ExcAVR5',
    'ExcAVR7',
    'ExcBBC',
    'ExcCZ',
    'ExcDC1A',
    'ExcDC2A',
    'ExcDC3A',
    'ExcDC3A1',
    'ExcELIN1',
    'ExcELIN2',
    'ExcHU',
    'ExcOEX3T',
    'ExcPIC',
    'ExcREXS',
    'ExcSCRX',
    'ExcSEXS',
    'ExcSK',
    'ApparentPower',
    'ExcST1A',
    'ExcST2A',
    'ExcST3A',
    'ExcST4B',
    'ExcST6B',
    'ExcST7B',
    'OverexcitationLimiterDynamics',
    'OverexcLimIEEE',
    'OverexcLim2',
    'OverexcLimX1',
    'OverexcLimX2',
    'UnderexcitationLimiterDynamics',
    'UnderexcLimIEEE1',
    'UnderexcLimIEEE2',
    'UnderexcLim2Simplified',
    'UnderexcLimX1',
    'UnderexcLimX2',
    'PowerSystemStabilizerDynamics',
    'PssIEEE1A',
    'InputSignalKind',
    'PssIEEE2B',
    'PssIEEE3B',
    'PssIEEE4B',
    'Pss1',
    'Pss1A',
    'Pss2B',
    'Pss2ST',
    'Pss5',
    'PssELIN2',
    'PssPTIST1',
    'PssPTIST3',
    'PssSB4',
    'PssSH',
    'PssSK',
    'PssWECC',
    'DiscontinuousExcitationControlDynamics',
    'DiscExcContIEEEDEC1A',
    'DiscExcContIEEEDEC2A',
    'DiscExcContIEEEDEC3A',
    'PFVArControllerType1Dynamics',
    'PFVArType1IEEEPFController',
    'PFVArType1IEEEVArController',
    'VoltageAdjusterDynamics',
    'VAdjIEEE',
    'PFVArControllerType2Dynamics',
    'PFVArType2IEEEPFController',
    'PFVArType2IEEEVArController',
    'PFVArType2Common1',
    'VoltageCompensatorDynamics',
    'VCompIEEEType1',
    'VCompIEEEType2',
    'GenICompensationForGenJ',
    'WindAeroConstIEC',
    'WindAeroLinearIEC',
    'WindContCurrLimIEC',
    'WindContPitchAngleIEC',
    'WindContPType3IEC',
    'WindContPType4aIEC',
    'WindContPType4bIEC',
    'WindContQIEC',
    'WindLVRTQcontrolModesKind',
    'WindQcontrolModesKind',
    'WindContRotorRIEC',
    'WindDynamicsLookupTable',
    'WindLookupTableFunctionKind',
    'WindMechIEC',
    'WindPitchContEmulIEC',
    'WindPlantDynamics',
    'WindPlantFreqPcontrolIEC',
    'WindPlantIEC',
    'WindPlantReactiveControlIEC',
    'WindProtectionIEC',
    'WindTurbineType1or2Dynamics',
    'WindTurbineType1or2IEC',
    'WindTurbineType3or4Dynamics',
    'WindTurbineType3or4IEC',
    'GenericNonLinearLoadModelKind',
    'LoadDynamics',
    'LoadAggregate',
    'LoadStatic',
    'StaticLoadModelKind',
    'LoadMotor',
    'Equipment',
    'WindPlantUserDefined',
    'WindType1or2UserDefined',
    'WindType3or4UserDefined',
    'SynchronousMachineUserDefined',
    'AsynchronousMachineUserDefined',
    'TurbineGovernorUserDefined',
    'TurbineLoadControllerUserDefined',
    'MechanicalLoadUserDefined',
    'ExcitationSystemUserDefined',
    'OverexcitationLimiterUserDefined',
    'UnderexcitationLimiterUserDefined',
    'PowerSystemStabilizerUserDefined',
    'DiscontinuousExcitationControlUserDefined',
    'PFVArControllerType1UserDefined',
    'VoltageAdjusterUserDefined',
    'PFVArControllerType2UserDefined',
    'VoltageCompensatorUserDefined',
    'LoadUserDefined',
    'SynchronousMachineSimplified',
    'WindGenTurbineType1IEC',
    'WindGenTurbineType2IEC',
    'WindGenTurbineType3IEC',
    'WindGenType4IEC',
    'WindTurbineType4aIEC',
    'WindTurbineType4bIEC',
    'LoadComposite',
    'LoadGenericNonLinear',
    'ConductingEquipment',
    'EnergyConsumer',
    'EnergySource',
    'RegulatingCondEq',
    'RotatingMachine',
    'SynchronousMachine',
    'WindGenTurbineType3aIEC',
    'WindGenTurbineType3bIEC',
    'AsynchronousMachine',
]
