1use std::collections::HashMap;
3use crate::base::{CimElement, RdfBlock};
4
5pub type ParseFn = fn(&RdfBlock) -> Box<dyn CimElement>;
6
7pub fn registry() -> HashMap<&'static str, ParseFn> {
8 let mut m: HashMap<&'static str, ParseFn> = HashMap::new();
9 m.insert("ACDCConverter", |b| Box::new(super::ACDCConverter::from_block(b)));
10 m.insert("ACDCConverterDCTerminal", |b| Box::new(super::ACDCConverterDCTerminal::from_block(b)));
11 m.insert("ACDCTerminal", |b| Box::new(super::ACDCTerminal::from_block(b)));
12 m.insert("ACLineSegment", |b| Box::new(super::ACLineSegment::from_block(b)));
13 m.insert("Accumulator", |b| Box::new(super::Accumulator::from_block(b)));
14 m.insert("AccumulatorLimit", |b| Box::new(super::AccumulatorLimit::from_block(b)));
15 m.insert("AccumulatorLimitSet", |b| Box::new(super::AccumulatorLimitSet::from_block(b)));
16 m.insert("AccumulatorReset", |b| Box::new(super::AccumulatorReset::from_block(b)));
17 m.insert("AccumulatorValue", |b| Box::new(super::AccumulatorValue::from_block(b)));
18 m.insert("ActivePowerLimit", |b| Box::new(super::ActivePowerLimit::from_block(b)));
19 m.insert("Analog", |b| Box::new(super::Analog::from_block(b)));
20 m.insert("AnalogControl", |b| Box::new(super::AnalogControl::from_block(b)));
21 m.insert("AnalogLimit", |b| Box::new(super::AnalogLimit::from_block(b)));
22 m.insert("AnalogLimitSet", |b| Box::new(super::AnalogLimitSet::from_block(b)));
23 m.insert("AnalogValue", |b| Box::new(super::AnalogValue::from_block(b)));
24 m.insert("ApparentPowerLimit", |b| Box::new(super::ApparentPowerLimit::from_block(b)));
25 m.insert("AsynchronousMachine", |b| Box::new(super::AsynchronousMachine::from_block(b)));
26 m.insert("AsynchronousMachineDynamics", |b| Box::new(super::AsynchronousMachineDynamics::from_block(b)));
27 m.insert("AsynchronousMachineEquivalentCircuit", |b| Box::new(super::AsynchronousMachineEquivalentCircuit::from_block(b)));
28 m.insert("AsynchronousMachineTimeConstantReactance", |b| Box::new(super::AsynchronousMachineTimeConstantReactance::from_block(b)));
29 m.insert("AsynchronousMachineUserDefined", |b| Box::new(super::AsynchronousMachineUserDefined::from_block(b)));
30 m.insert("AuxiliaryEquipment", |b| Box::new(super::AuxiliaryEquipment::from_block(b)));
31 m.insert("BaseVoltage", |b| Box::new(super::BaseVoltage::from_block(b)));
32 m.insert("BasicIntervalSchedule", |b| Box::new(super::BasicIntervalSchedule::from_block(b)));
33 m.insert("BatteryUnit", |b| Box::new(super::BatteryUnit::from_block(b)));
34 m.insert("Bay", |b| Box::new(super::Bay::from_block(b)));
35 m.insert("BoundaryPoint", |b| Box::new(super::BoundaryPoint::from_block(b)));
36 m.insert("Breaker", |b| Box::new(super::Breaker::from_block(b)));
37 m.insert("BusNameMarker", |b| Box::new(super::BusNameMarker::from_block(b)));
38 m.insert("BusbarSection", |b| Box::new(super::BusbarSection::from_block(b)));
39 m.insert("CAESPlant", |b| Box::new(super::CAESPlant::from_block(b)));
40 m.insert("CSCDynamics", |b| Box::new(super::CSCDynamics::from_block(b)));
41 m.insert("CSCUserDefined", |b| Box::new(super::CSCUserDefined::from_block(b)));
42 m.insert("Clamp", |b| Box::new(super::Clamp::from_block(b)));
43 m.insert("CogenerationPlant", |b| Box::new(super::CogenerationPlant::from_block(b)));
44 m.insert("CombinedCyclePlant", |b| Box::new(super::CombinedCyclePlant::from_block(b)));
45 m.insert("Command", |b| Box::new(super::Command::from_block(b)));
46 m.insert("ConductingEquipment", |b| Box::new(super::ConductingEquipment::from_block(b)));
47 m.insert("Conductor", |b| Box::new(super::Conductor::from_block(b)));
48 m.insert("ConformLoad", |b| Box::new(super::ConformLoad::from_block(b)));
49 m.insert("ConformLoadGroup", |b| Box::new(super::ConformLoadGroup::from_block(b)));
50 m.insert("ConformLoadSchedule", |b| Box::new(super::ConformLoadSchedule::from_block(b)));
51 m.insert("ConnectivityNode", |b| Box::new(super::ConnectivityNode::from_block(b)));
52 m.insert("ConnectivityNodeContainer", |b| Box::new(super::ConnectivityNodeContainer::from_block(b)));
53 m.insert("Connector", |b| Box::new(super::Connector::from_block(b)));
54 m.insert("Control", |b| Box::new(super::Control::from_block(b)));
55 m.insert("ControlArea", |b| Box::new(super::ControlArea::from_block(b)));
56 m.insert("ControlAreaGeneratingUnit", |b| Box::new(super::ControlAreaGeneratingUnit::from_block(b)));
57 m.insert("CoordinateSystem", |b| Box::new(super::CoordinateSystem::from_block(b)));
58 m.insert("CrossCompoundTurbineGovernorDynamics", |b| Box::new(super::CrossCompoundTurbineGovernorDynamics::from_block(b)));
59 m.insert("CsConverter", |b| Box::new(super::CsConverter::from_block(b)));
60 m.insert("CurrentLimit", |b| Box::new(super::CurrentLimit::from_block(b)));
61 m.insert("CurrentTransformer", |b| Box::new(super::CurrentTransformer::from_block(b)));
62 m.insert("Curve", |b| Box::new(super::Curve::from_block(b)));
63 m.insert("CurveData", |b| Box::new(super::CurveData::from_block(b)));
64 m.insert("Cut", |b| Box::new(super::Cut::from_block(b)));
65 m.insert("DCBaseTerminal", |b| Box::new(super::DCBaseTerminal::from_block(b)));
66 m.insert("DCBreaker", |b| Box::new(super::DCBreaker::from_block(b)));
67 m.insert("DCBusbar", |b| Box::new(super::DCBusbar::from_block(b)));
68 m.insert("DCChopper", |b| Box::new(super::DCChopper::from_block(b)));
69 m.insert("DCConductingEquipment", |b| Box::new(super::DCConductingEquipment::from_block(b)));
70 m.insert("DCConverterUnit", |b| Box::new(super::DCConverterUnit::from_block(b)));
71 m.insert("DCDisconnector", |b| Box::new(super::DCDisconnector::from_block(b)));
72 m.insert("DCEquipmentContainer", |b| Box::new(super::DCEquipmentContainer::from_block(b)));
73 m.insert("DCGround", |b| Box::new(super::DCGround::from_block(b)));
74 m.insert("DCLine", |b| Box::new(super::DCLine::from_block(b)));
75 m.insert("DCLineSegment", |b| Box::new(super::DCLineSegment::from_block(b)));
76 m.insert("DCNode", |b| Box::new(super::DCNode::from_block(b)));
77 m.insert("DCSeriesDevice", |b| Box::new(super::DCSeriesDevice::from_block(b)));
78 m.insert("DCShunt", |b| Box::new(super::DCShunt::from_block(b)));
79 m.insert("DCSwitch", |b| Box::new(super::DCSwitch::from_block(b)));
80 m.insert("DCTerminal", |b| Box::new(super::DCTerminal::from_block(b)));
81 m.insert("DCTopologicalIsland", |b| Box::new(super::DCTopologicalIsland::from_block(b)));
82 m.insert("DCTopologicalNode", |b| Box::new(super::DCTopologicalNode::from_block(b)));
83 m.insert("DayType", |b| Box::new(super::DayType::from_block(b)));
84 m.insert("Diagram", |b| Box::new(super::Diagram::from_block(b)));
85 m.insert("DiagramObject", |b| Box::new(super::DiagramObject::from_block(b)));
86 m.insert("DiagramObjectGluePoint", |b| Box::new(super::DiagramObjectGluePoint::from_block(b)));
87 m.insert("DiagramObjectPoint", |b| Box::new(super::DiagramObjectPoint::from_block(b)));
88 m.insert("DiagramObjectStyle", |b| Box::new(super::DiagramObjectStyle::from_block(b)));
89 m.insert("DiagramStyle", |b| Box::new(super::DiagramStyle::from_block(b)));
90 m.insert("DifferenceModel", |b| Box::new(super::DifferenceModel::from_block(b)));
91 m.insert("DiscExcContIEEEDEC1A", |b| Box::new(super::DiscExcContIEEEDEC1A::from_block(b)));
92 m.insert("DiscExcContIEEEDEC2A", |b| Box::new(super::DiscExcContIEEEDEC2A::from_block(b)));
93 m.insert("DiscExcContIEEEDEC3A", |b| Box::new(super::DiscExcContIEEEDEC3A::from_block(b)));
94 m.insert("DisconnectingCircuitBreaker", |b| Box::new(super::DisconnectingCircuitBreaker::from_block(b)));
95 m.insert("Disconnector", |b| Box::new(super::Disconnector::from_block(b)));
96 m.insert("DiscontinuousExcitationControlDynamics", |b| Box::new(super::DiscontinuousExcitationControlDynamics::from_block(b)));
97 m.insert("DiscontinuousExcitationControlUserDefined", |b| Box::new(super::DiscontinuousExcitationControlUserDefined::from_block(b)));
98 m.insert("Discrete", |b| Box::new(super::Discrete::from_block(b)));
99 m.insert("DiscreteValue", |b| Box::new(super::DiscreteValue::from_block(b)));
100 m.insert("DynamicsFunctionBlock", |b| Box::new(super::DynamicsFunctionBlock::from_block(b)));
101 m.insert("EarthFaultCompensator", |b| Box::new(super::EarthFaultCompensator::from_block(b)));
102 m.insert("EnergyArea", |b| Box::new(super::EnergyArea::from_block(b)));
103 m.insert("EnergyConnection", |b| Box::new(super::EnergyConnection::from_block(b)));
104 m.insert("EnergyConsumer", |b| Box::new(super::EnergyConsumer::from_block(b)));
105 m.insert("EnergySchedulingType", |b| Box::new(super::EnergySchedulingType::from_block(b)));
106 m.insert("EnergySource", |b| Box::new(super::EnergySource::from_block(b)));
107 m.insert("Equipment", |b| Box::new(super::Equipment::from_block(b)));
108 m.insert("EquipmentContainer", |b| Box::new(super::EquipmentContainer::from_block(b)));
109 m.insert("EquivalentBranch", |b| Box::new(super::EquivalentBranch::from_block(b)));
110 m.insert("EquivalentEquipment", |b| Box::new(super::EquivalentEquipment::from_block(b)));
111 m.insert("EquivalentInjection", |b| Box::new(super::EquivalentInjection::from_block(b)));
112 m.insert("EquivalentNetwork", |b| Box::new(super::EquivalentNetwork::from_block(b)));
113 m.insert("EquivalentShunt", |b| Box::new(super::EquivalentShunt::from_block(b)));
114 m.insert("ExcAC1A", |b| Box::new(super::ExcAC1A::from_block(b)));
115 m.insert("ExcAC2A", |b| Box::new(super::ExcAC2A::from_block(b)));
116 m.insert("ExcAC3A", |b| Box::new(super::ExcAC3A::from_block(b)));
117 m.insert("ExcAC4A", |b| Box::new(super::ExcAC4A::from_block(b)));
118 m.insert("ExcAC5A", |b| Box::new(super::ExcAC5A::from_block(b)));
119 m.insert("ExcAC6A", |b| Box::new(super::ExcAC6A::from_block(b)));
120 m.insert("ExcAC8B", |b| Box::new(super::ExcAC8B::from_block(b)));
121 m.insert("ExcANS", |b| Box::new(super::ExcANS::from_block(b)));
122 m.insert("ExcAVR1", |b| Box::new(super::ExcAVR1::from_block(b)));
123 m.insert("ExcAVR2", |b| Box::new(super::ExcAVR2::from_block(b)));
124 m.insert("ExcAVR3", |b| Box::new(super::ExcAVR3::from_block(b)));
125 m.insert("ExcAVR4", |b| Box::new(super::ExcAVR4::from_block(b)));
126 m.insert("ExcAVR5", |b| Box::new(super::ExcAVR5::from_block(b)));
127 m.insert("ExcAVR7", |b| Box::new(super::ExcAVR7::from_block(b)));
128 m.insert("ExcBBC", |b| Box::new(super::ExcBBC::from_block(b)));
129 m.insert("ExcCZ", |b| Box::new(super::ExcCZ::from_block(b)));
130 m.insert("ExcDC1A", |b| Box::new(super::ExcDC1A::from_block(b)));
131 m.insert("ExcDC2A", |b| Box::new(super::ExcDC2A::from_block(b)));
132 m.insert("ExcDC3A", |b| Box::new(super::ExcDC3A::from_block(b)));
133 m.insert("ExcDC3A1", |b| Box::new(super::ExcDC3A1::from_block(b)));
134 m.insert("ExcELIN1", |b| Box::new(super::ExcELIN1::from_block(b)));
135 m.insert("ExcELIN2", |b| Box::new(super::ExcELIN2::from_block(b)));
136 m.insert("ExcHU", |b| Box::new(super::ExcHU::from_block(b)));
137 m.insert("ExcIEEEAC1A", |b| Box::new(super::ExcIEEEAC1A::from_block(b)));
138 m.insert("ExcIEEEAC2A", |b| Box::new(super::ExcIEEEAC2A::from_block(b)));
139 m.insert("ExcIEEEAC3A", |b| Box::new(super::ExcIEEEAC3A::from_block(b)));
140 m.insert("ExcIEEEAC4A", |b| Box::new(super::ExcIEEEAC4A::from_block(b)));
141 m.insert("ExcIEEEAC5A", |b| Box::new(super::ExcIEEEAC5A::from_block(b)));
142 m.insert("ExcIEEEAC6A", |b| Box::new(super::ExcIEEEAC6A::from_block(b)));
143 m.insert("ExcIEEEAC7B", |b| Box::new(super::ExcIEEEAC7B::from_block(b)));
144 m.insert("ExcIEEEAC8B", |b| Box::new(super::ExcIEEEAC8B::from_block(b)));
145 m.insert("ExcIEEEDC1A", |b| Box::new(super::ExcIEEEDC1A::from_block(b)));
146 m.insert("ExcIEEEDC2A", |b| Box::new(super::ExcIEEEDC2A::from_block(b)));
147 m.insert("ExcIEEEDC3A", |b| Box::new(super::ExcIEEEDC3A::from_block(b)));
148 m.insert("ExcIEEEDC4B", |b| Box::new(super::ExcIEEEDC4B::from_block(b)));
149 m.insert("ExcIEEEST1A", |b| Box::new(super::ExcIEEEST1A::from_block(b)));
150 m.insert("ExcIEEEST2A", |b| Box::new(super::ExcIEEEST2A::from_block(b)));
151 m.insert("ExcIEEEST3A", |b| Box::new(super::ExcIEEEST3A::from_block(b)));
152 m.insert("ExcIEEEST4B", |b| Box::new(super::ExcIEEEST4B::from_block(b)));
153 m.insert("ExcIEEEST5B", |b| Box::new(super::ExcIEEEST5B::from_block(b)));
154 m.insert("ExcIEEEST6B", |b| Box::new(super::ExcIEEEST6B::from_block(b)));
155 m.insert("ExcIEEEST7B", |b| Box::new(super::ExcIEEEST7B::from_block(b)));
156 m.insert("ExcNI", |b| Box::new(super::ExcNI::from_block(b)));
157 m.insert("ExcOEX3T", |b| Box::new(super::ExcOEX3T::from_block(b)));
158 m.insert("ExcPIC", |b| Box::new(super::ExcPIC::from_block(b)));
159 m.insert("ExcREXS", |b| Box::new(super::ExcREXS::from_block(b)));
160 m.insert("ExcRQB", |b| Box::new(super::ExcRQB::from_block(b)));
161 m.insert("ExcSCRX", |b| Box::new(super::ExcSCRX::from_block(b)));
162 m.insert("ExcSEXS", |b| Box::new(super::ExcSEXS::from_block(b)));
163 m.insert("ExcSK", |b| Box::new(super::ExcSK::from_block(b)));
164 m.insert("ExcST1A", |b| Box::new(super::ExcST1A::from_block(b)));
165 m.insert("ExcST2A", |b| Box::new(super::ExcST2A::from_block(b)));
166 m.insert("ExcST3A", |b| Box::new(super::ExcST3A::from_block(b)));
167 m.insert("ExcST4B", |b| Box::new(super::ExcST4B::from_block(b)));
168 m.insert("ExcST6B", |b| Box::new(super::ExcST6B::from_block(b)));
169 m.insert("ExcST7B", |b| Box::new(super::ExcST7B::from_block(b)));
170 m.insert("ExcitationSystemDynamics", |b| Box::new(super::ExcitationSystemDynamics::from_block(b)));
171 m.insert("ExcitationSystemUserDefined", |b| Box::new(super::ExcitationSystemUserDefined::from_block(b)));
172 m.insert("ExternalNetworkInjection", |b| Box::new(super::ExternalNetworkInjection::from_block(b)));
173 m.insert("FaultIndicator", |b| Box::new(super::FaultIndicator::from_block(b)));
174 m.insert("FossilFuel", |b| Box::new(super::FossilFuel::from_block(b)));
175 m.insert("FullModel", |b| Box::new(super::FullModel::from_block(b)));
176 m.insert("Fuse", |b| Box::new(super::Fuse::from_block(b)));
177 m.insert("GenICompensationForGenJ", |b| Box::new(super::GenICompensationForGenJ::from_block(b)));
178 m.insert("GeneratingUnit", |b| Box::new(super::GeneratingUnit::from_block(b)));
179 m.insert("GeographicalRegion", |b| Box::new(super::GeographicalRegion::from_block(b)));
180 m.insert("GovCT1", |b| Box::new(super::GovCT1::from_block(b)));
181 m.insert("GovCT2", |b| Box::new(super::GovCT2::from_block(b)));
182 m.insert("GovGAST", |b| Box::new(super::GovGAST::from_block(b)));
183 m.insert("GovGAST1", |b| Box::new(super::GovGAST1::from_block(b)));
184 m.insert("GovGAST2", |b| Box::new(super::GovGAST2::from_block(b)));
185 m.insert("GovGAST3", |b| Box::new(super::GovGAST3::from_block(b)));
186 m.insert("GovGAST4", |b| Box::new(super::GovGAST4::from_block(b)));
187 m.insert("GovGASTWD", |b| Box::new(super::GovGASTWD::from_block(b)));
188 m.insert("GovHydro1", |b| Box::new(super::GovHydro1::from_block(b)));
189 m.insert("GovHydro2", |b| Box::new(super::GovHydro2::from_block(b)));
190 m.insert("GovHydro3", |b| Box::new(super::GovHydro3::from_block(b)));
191 m.insert("GovHydro4", |b| Box::new(super::GovHydro4::from_block(b)));
192 m.insert("GovHydroDD", |b| Box::new(super::GovHydroDD::from_block(b)));
193 m.insert("GovHydroFrancis", |b| Box::new(super::GovHydroFrancis::from_block(b)));
194 m.insert("GovHydroIEEE0", |b| Box::new(super::GovHydroIEEE0::from_block(b)));
195 m.insert("GovHydroIEEE2", |b| Box::new(super::GovHydroIEEE2::from_block(b)));
196 m.insert("GovHydroPID", |b| Box::new(super::GovHydroPID::from_block(b)));
197 m.insert("GovHydroPID2", |b| Box::new(super::GovHydroPID2::from_block(b)));
198 m.insert("GovHydroPelton", |b| Box::new(super::GovHydroPelton::from_block(b)));
199 m.insert("GovHydroR", |b| Box::new(super::GovHydroR::from_block(b)));
200 m.insert("GovHydroWEH", |b| Box::new(super::GovHydroWEH::from_block(b)));
201 m.insert("GovHydroWPID", |b| Box::new(super::GovHydroWPID::from_block(b)));
202 m.insert("GovSteam0", |b| Box::new(super::GovSteam0::from_block(b)));
203 m.insert("GovSteam1", |b| Box::new(super::GovSteam1::from_block(b)));
204 m.insert("GovSteam2", |b| Box::new(super::GovSteam2::from_block(b)));
205 m.insert("GovSteamBB", |b| Box::new(super::GovSteamBB::from_block(b)));
206 m.insert("GovSteamCC", |b| Box::new(super::GovSteamCC::from_block(b)));
207 m.insert("GovSteamEU", |b| Box::new(super::GovSteamEU::from_block(b)));
208 m.insert("GovSteamFV2", |b| Box::new(super::GovSteamFV2::from_block(b)));
209 m.insert("GovSteamFV3", |b| Box::new(super::GovSteamFV3::from_block(b)));
210 m.insert("GovSteamFV4", |b| Box::new(super::GovSteamFV4::from_block(b)));
211 m.insert("GovSteamIEEE1", |b| Box::new(super::GovSteamIEEE1::from_block(b)));
212 m.insert("GovSteamSGO", |b| Box::new(super::GovSteamSGO::from_block(b)));
213 m.insert("GrossToNetActivePowerCurve", |b| Box::new(super::GrossToNetActivePowerCurve::from_block(b)));
214 m.insert("Ground", |b| Box::new(super::Ground::from_block(b)));
215 m.insert("GroundDisconnector", |b| Box::new(super::GroundDisconnector::from_block(b)));
216 m.insert("GroundingImpedance", |b| Box::new(super::GroundingImpedance::from_block(b)));
217 m.insert("HVDCDynamics", |b| Box::new(super::HVDCDynamics::from_block(b)));
218 m.insert("HydroGeneratingUnit", |b| Box::new(super::HydroGeneratingUnit::from_block(b)));
219 m.insert("HydroPowerPlant", |b| Box::new(super::HydroPowerPlant::from_block(b)));
220 m.insert("HydroPump", |b| Box::new(super::HydroPump::from_block(b)));
221 m.insert("IOPoint", |b| Box::new(super::IOPoint::from_block(b)));
222 m.insert("IdentifiedObject", |b| Box::new(super::IdentifiedObject::from_block(b)));
223 m.insert("Jumper", |b| Box::new(super::Jumper::from_block(b)));
224 m.insert("Junction", |b| Box::new(super::Junction::from_block(b)));
225 m.insert("Limit", |b| Box::new(super::Limit::from_block(b)));
226 m.insert("LimitKind", |b| Box::new(super::LimitKind::from_block(b)));
227 m.insert("LimitSet", |b| Box::new(super::LimitSet::from_block(b)));
228 m.insert("Line", |b| Box::new(super::Line::from_block(b)));
229 m.insert("LinearShuntCompensator", |b| Box::new(super::LinearShuntCompensator::from_block(b)));
230 m.insert("LoadAggregate", |b| Box::new(super::LoadAggregate::from_block(b)));
231 m.insert("LoadArea", |b| Box::new(super::LoadArea::from_block(b)));
232 m.insert("LoadBreakSwitch", |b| Box::new(super::LoadBreakSwitch::from_block(b)));
233 m.insert("LoadComposite", |b| Box::new(super::LoadComposite::from_block(b)));
234 m.insert("LoadDynamics", |b| Box::new(super::LoadDynamics::from_block(b)));
235 m.insert("LoadGenericNonLinear", |b| Box::new(super::LoadGenericNonLinear::from_block(b)));
236 m.insert("LoadGroup", |b| Box::new(super::LoadGroup::from_block(b)));
237 m.insert("LoadMotor", |b| Box::new(super::LoadMotor::from_block(b)));
238 m.insert("LoadResponseCharacteristic", |b| Box::new(super::LoadResponseCharacteristic::from_block(b)));
239 m.insert("LoadStatic", |b| Box::new(super::LoadStatic::from_block(b)));
240 m.insert("LoadUserDefined", |b| Box::new(super::LoadUserDefined::from_block(b)));
241 m.insert("Location", |b| Box::new(super::Location::from_block(b)));
242 m.insert("Measurement", |b| Box::new(super::Measurement::from_block(b)));
243 m.insert("MeasurementValue", |b| Box::new(super::MeasurementValue::from_block(b)));
244 m.insert("MeasurementValueQuality", |b| Box::new(super::MeasurementValueQuality::from_block(b)));
245 m.insert("MeasurementValueSource", |b| Box::new(super::MeasurementValueSource::from_block(b)));
246 m.insert("MechLoad1", |b| Box::new(super::MechLoad1::from_block(b)));
247 m.insert("MechanicalLoadDynamics", |b| Box::new(super::MechanicalLoadDynamics::from_block(b)));
248 m.insert("MechanicalLoadUserDefined", |b| Box::new(super::MechanicalLoadUserDefined::from_block(b)));
249 m.insert("Model", |b| Box::new(super::Model::from_block(b)));
250 m.insert("MutualCoupling", |b| Box::new(super::MutualCoupling::from_block(b)));
251 m.insert("NonConformLoad", |b| Box::new(super::NonConformLoad::from_block(b)));
252 m.insert("NonConformLoadGroup", |b| Box::new(super::NonConformLoadGroup::from_block(b)));
253 m.insert("NonConformLoadSchedule", |b| Box::new(super::NonConformLoadSchedule::from_block(b)));
254 m.insert("NonlinearShuntCompensator", |b| Box::new(super::NonlinearShuntCompensator::from_block(b)));
255 m.insert("NonlinearShuntCompensatorPoint", |b| Box::new(super::NonlinearShuntCompensatorPoint::from_block(b)));
256 m.insert("NuclearGeneratingUnit", |b| Box::new(super::NuclearGeneratingUnit::from_block(b)));
257 m.insert("OperationalLimit", |b| Box::new(super::OperationalLimit::from_block(b)));
258 m.insert("OperationalLimitSet", |b| Box::new(super::OperationalLimitSet::from_block(b)));
259 m.insert("OperationalLimitType", |b| Box::new(super::OperationalLimitType::from_block(b)));
260 m.insert("OverexcLim2", |b| Box::new(super::OverexcLim2::from_block(b)));
261 m.insert("OverexcLimIEEE", |b| Box::new(super::OverexcLimIEEE::from_block(b)));
262 m.insert("OverexcLimX1", |b| Box::new(super::OverexcLimX1::from_block(b)));
263 m.insert("OverexcLimX2", |b| Box::new(super::OverexcLimX2::from_block(b)));
264 m.insert("OverexcitationLimiterDynamics", |b| Box::new(super::OverexcitationLimiterDynamics::from_block(b)));
265 m.insert("OverexcitationLimiterUserDefined", |b| Box::new(super::OverexcitationLimiterUserDefined::from_block(b)));
266 m.insert("PFVArControllerType1Dynamics", |b| Box::new(super::PFVArControllerType1Dynamics::from_block(b)));
267 m.insert("PFVArControllerType1UserDefined", |b| Box::new(super::PFVArControllerType1UserDefined::from_block(b)));
268 m.insert("PFVArControllerType2Dynamics", |b| Box::new(super::PFVArControllerType2Dynamics::from_block(b)));
269 m.insert("PFVArControllerType2UserDefined", |b| Box::new(super::PFVArControllerType2UserDefined::from_block(b)));
270 m.insert("PFVArType1IEEEPFController", |b| Box::new(super::PFVArType1IEEEPFController::from_block(b)));
271 m.insert("PFVArType1IEEEVArController", |b| Box::new(super::PFVArType1IEEEVArController::from_block(b)));
272 m.insert("PFVArType2Common1", |b| Box::new(super::PFVArType2Common1::from_block(b)));
273 m.insert("PFVArType2IEEEPFController", |b| Box::new(super::PFVArType2IEEEPFController::from_block(b)));
274 m.insert("PFVArType2IEEEVArController", |b| Box::new(super::PFVArType2IEEEVArController::from_block(b)));
275 m.insert("PetersenCoil", |b| Box::new(super::PetersenCoil::from_block(b)));
276 m.insert("PhaseTapChanger", |b| Box::new(super::PhaseTapChanger::from_block(b)));
277 m.insert("PhaseTapChangerAsymmetrical", |b| Box::new(super::PhaseTapChangerAsymmetrical::from_block(b)));
278 m.insert("PhaseTapChangerLinear", |b| Box::new(super::PhaseTapChangerLinear::from_block(b)));
279 m.insert("PhaseTapChangerNonLinear", |b| Box::new(super::PhaseTapChangerNonLinear::from_block(b)));
280 m.insert("PhaseTapChangerSymmetrical", |b| Box::new(super::PhaseTapChangerSymmetrical::from_block(b)));
281 m.insert("PhaseTapChangerTable", |b| Box::new(super::PhaseTapChangerTable::from_block(b)));
282 m.insert("PhaseTapChangerTablePoint", |b| Box::new(super::PhaseTapChangerTablePoint::from_block(b)));
283 m.insert("PhaseTapChangerTabular", |b| Box::new(super::PhaseTapChangerTabular::from_block(b)));
284 m.insert("PhotoVoltaicUnit", |b| Box::new(super::PhotoVoltaicUnit::from_block(b)));
285 m.insert("PositionPoint", |b| Box::new(super::PositionPoint::from_block(b)));
286 m.insert("PostLineSensor", |b| Box::new(super::PostLineSensor::from_block(b)));
287 m.insert("PotentialTransformer", |b| Box::new(super::PotentialTransformer::from_block(b)));
288 m.insert("PowerElectronicsConnection", |b| Box::new(super::PowerElectronicsConnection::from_block(b)));
289 m.insert("PowerElectronicsUnit", |b| Box::new(super::PowerElectronicsUnit::from_block(b)));
290 m.insert("PowerElectronicsWindUnit", |b| Box::new(super::PowerElectronicsWindUnit::from_block(b)));
291 m.insert("PowerSystemResource", |b| Box::new(super::PowerSystemResource::from_block(b)));
292 m.insert("PowerSystemStabilizerDynamics", |b| Box::new(super::PowerSystemStabilizerDynamics::from_block(b)));
293 m.insert("PowerSystemStabilizerUserDefined", |b| Box::new(super::PowerSystemStabilizerUserDefined::from_block(b)));
294 m.insert("PowerTransformer", |b| Box::new(super::PowerTransformer::from_block(b)));
295 m.insert("PowerTransformerEnd", |b| Box::new(super::PowerTransformerEnd::from_block(b)));
296 m.insert("ProprietaryParameterDynamics", |b| Box::new(super::ProprietaryParameterDynamics::from_block(b)));
297 m.insert("ProtectedSwitch", |b| Box::new(super::ProtectedSwitch::from_block(b)));
298 m.insert("Pss1", |b| Box::new(super::Pss1::from_block(b)));
299 m.insert("Pss1A", |b| Box::new(super::Pss1A::from_block(b)));
300 m.insert("Pss2B", |b| Box::new(super::Pss2B::from_block(b)));
301 m.insert("Pss2ST", |b| Box::new(super::Pss2ST::from_block(b)));
302 m.insert("Pss5", |b| Box::new(super::Pss5::from_block(b)));
303 m.insert("PssELIN2", |b| Box::new(super::PssELIN2::from_block(b)));
304 m.insert("PssIEEE1A", |b| Box::new(super::PssIEEE1A::from_block(b)));
305 m.insert("PssIEEE2B", |b| Box::new(super::PssIEEE2B::from_block(b)));
306 m.insert("PssIEEE3B", |b| Box::new(super::PssIEEE3B::from_block(b)));
307 m.insert("PssIEEE4B", |b| Box::new(super::PssIEEE4B::from_block(b)));
308 m.insert("PssPTIST1", |b| Box::new(super::PssPTIST1::from_block(b)));
309 m.insert("PssPTIST3", |b| Box::new(super::PssPTIST3::from_block(b)));
310 m.insert("PssRQB", |b| Box::new(super::PssRQB::from_block(b)));
311 m.insert("PssSB4", |b| Box::new(super::PssSB4::from_block(b)));
312 m.insert("PssSH", |b| Box::new(super::PssSH::from_block(b)));
313 m.insert("PssSK", |b| Box::new(super::PssSK::from_block(b)));
314 m.insert("PssSTAB2A", |b| Box::new(super::PssSTAB2A::from_block(b)));
315 m.insert("PssWECC", |b| Box::new(super::PssWECC::from_block(b)));
316 m.insert("Quality61850", |b| Box::new(super::Quality61850::from_block(b)));
317 m.insert("RaiseLowerCommand", |b| Box::new(super::RaiseLowerCommand::from_block(b)));
318 m.insert("RatioTapChanger", |b| Box::new(super::RatioTapChanger::from_block(b)));
319 m.insert("RatioTapChangerTable", |b| Box::new(super::RatioTapChangerTable::from_block(b)));
320 m.insert("RatioTapChangerTablePoint", |b| Box::new(super::RatioTapChangerTablePoint::from_block(b)));
321 m.insert("ReactiveCapabilityCurve", |b| Box::new(super::ReactiveCapabilityCurve::from_block(b)));
322 m.insert("RegularIntervalSchedule", |b| Box::new(super::RegularIntervalSchedule::from_block(b)));
323 m.insert("RegularTimePoint", |b| Box::new(super::RegularTimePoint::from_block(b)));
324 m.insert("RegulatingCondEq", |b| Box::new(super::RegulatingCondEq::from_block(b)));
325 m.insert("RegulatingControl", |b| Box::new(super::RegulatingControl::from_block(b)));
326 m.insert("RegulationSchedule", |b| Box::new(super::RegulationSchedule::from_block(b)));
327 m.insert("RemoteInputSignal", |b| Box::new(super::RemoteInputSignal::from_block(b)));
328 m.insert("ReportingGroup", |b| Box::new(super::ReportingGroup::from_block(b)));
329 m.insert("RotatingMachine", |b| Box::new(super::RotatingMachine::from_block(b)));
330 m.insert("RotatingMachineDynamics", |b| Box::new(super::RotatingMachineDynamics::from_block(b)));
331 m.insert("SVCControlMode", |b| Box::new(super::SVCControlMode::from_block(b)));
332 m.insert("SVCUserDefined", |b| Box::new(super::SVCUserDefined::from_block(b)));
333 m.insert("Season", |b| Box::new(super::Season::from_block(b)));
334 m.insert("SeasonDayTypeSchedule", |b| Box::new(super::SeasonDayTypeSchedule::from_block(b)));
335 m.insert("Sensor", |b| Box::new(super::Sensor::from_block(b)));
336 m.insert("SeriesCompensator", |b| Box::new(super::SeriesCompensator::from_block(b)));
337 m.insert("ServiceLocation", |b| Box::new(super::ServiceLocation::from_block(b)));
338 m.insert("SetPoint", |b| Box::new(super::SetPoint::from_block(b)));
339 m.insert("ShuntCompensator", |b| Box::new(super::ShuntCompensator::from_block(b)));
340 m.insert("SolarGeneratingUnit", |b| Box::new(super::SolarGeneratingUnit::from_block(b)));
341 m.insert("SolarPowerPlant", |b| Box::new(super::SolarPowerPlant::from_block(b)));
342 m.insert("Statements", |b| Box::new(super::Statements::from_block(b)));
343 m.insert("StaticVarCompensator", |b| Box::new(super::StaticVarCompensator::from_block(b)));
344 m.insert("StaticVarCompensatorDynamics", |b| Box::new(super::StaticVarCompensatorDynamics::from_block(b)));
345 m.insert("StationSupply", |b| Box::new(super::StationSupply::from_block(b)));
346 m.insert("Status", |b| Box::new(super::Status::from_block(b)));
347 m.insert("StreetAddress", |b| Box::new(super::StreetAddress::from_block(b)));
348 m.insert("StreetDetail", |b| Box::new(super::StreetDetail::from_block(b)));
349 m.insert("StringMeasurement", |b| Box::new(super::StringMeasurement::from_block(b)));
350 m.insert("StringMeasurementValue", |b| Box::new(super::StringMeasurementValue::from_block(b)));
351 m.insert("SubGeographicalRegion", |b| Box::new(super::SubGeographicalRegion::from_block(b)));
352 m.insert("SubLoadArea", |b| Box::new(super::SubLoadArea::from_block(b)));
353 m.insert("Substation", |b| Box::new(super::Substation::from_block(b)));
354 m.insert("SurgeArrester", |b| Box::new(super::SurgeArrester::from_block(b)));
355 m.insert("SvInjection", |b| Box::new(super::SvInjection::from_block(b)));
356 m.insert("SvPowerFlow", |b| Box::new(super::SvPowerFlow::from_block(b)));
357 m.insert("SvShuntCompensatorSections", |b| Box::new(super::SvShuntCompensatorSections::from_block(b)));
358 m.insert("SvStatus", |b| Box::new(super::SvStatus::from_block(b)));
359 m.insert("SvSwitch", |b| Box::new(super::SvSwitch::from_block(b)));
360 m.insert("SvTapStep", |b| Box::new(super::SvTapStep::from_block(b)));
361 m.insert("SvVoltage", |b| Box::new(super::SvVoltage::from_block(b)));
362 m.insert("Switch", |b| Box::new(super::Switch::from_block(b)));
363 m.insert("SwitchSchedule", |b| Box::new(super::SwitchSchedule::from_block(b)));
364 m.insert("SynchronousMachine", |b| Box::new(super::SynchronousMachine::from_block(b)));
365 m.insert("SynchronousMachineDetailed", |b| Box::new(super::SynchronousMachineDetailed::from_block(b)));
366 m.insert("SynchronousMachineDynamics", |b| Box::new(super::SynchronousMachineDynamics::from_block(b)));
367 m.insert("SynchronousMachineEquivalentCircuit", |b| Box::new(super::SynchronousMachineEquivalentCircuit::from_block(b)));
368 m.insert("SynchronousMachineSimplified", |b| Box::new(super::SynchronousMachineSimplified::from_block(b)));
369 m.insert("SynchronousMachineTimeConstantReactance", |b| Box::new(super::SynchronousMachineTimeConstantReactance::from_block(b)));
370 m.insert("SynchronousMachineUserDefined", |b| Box::new(super::SynchronousMachineUserDefined::from_block(b)));
371 m.insert("TapChanger", |b| Box::new(super::TapChanger::from_block(b)));
372 m.insert("TapChangerControl", |b| Box::new(super::TapChangerControl::from_block(b)));
373 m.insert("TapChangerTablePoint", |b| Box::new(super::TapChangerTablePoint::from_block(b)));
374 m.insert("TapSchedule", |b| Box::new(super::TapSchedule::from_block(b)));
375 m.insert("Terminal", |b| Box::new(super::Terminal::from_block(b)));
376 m.insert("TextDiagramObject", |b| Box::new(super::TextDiagramObject::from_block(b)));
377 m.insert("ThermalGeneratingUnit", |b| Box::new(super::ThermalGeneratingUnit::from_block(b)));
378 m.insert("TieFlow", |b| Box::new(super::TieFlow::from_block(b)));
379 m.insert("TopologicalIsland", |b| Box::new(super::TopologicalIsland::from_block(b)));
380 m.insert("TopologicalNode", |b| Box::new(super::TopologicalNode::from_block(b)));
381 m.insert("TownDetail", |b| Box::new(super::TownDetail::from_block(b)));
382 m.insert("TransformerEnd", |b| Box::new(super::TransformerEnd::from_block(b)));
383 m.insert("TurbLCFB1", |b| Box::new(super::TurbLCFB1::from_block(b)));
384 m.insert("TurbineGovernorDynamics", |b| Box::new(super::TurbineGovernorDynamics::from_block(b)));
385 m.insert("TurbineGovernorUserDefined", |b| Box::new(super::TurbineGovernorUserDefined::from_block(b)));
386 m.insert("TurbineLoadControllerDynamics", |b| Box::new(super::TurbineLoadControllerDynamics::from_block(b)));
387 m.insert("TurbineLoadControllerUserDefined", |b| Box::new(super::TurbineLoadControllerUserDefined::from_block(b)));
388 m.insert("URI", |b| Box::new(super::URI::from_block(b)));
389 m.insert("UnderexcLim2Simplified", |b| Box::new(super::UnderexcLim2Simplified::from_block(b)));
390 m.insert("UnderexcLimIEEE1", |b| Box::new(super::UnderexcLimIEEE1::from_block(b)));
391 m.insert("UnderexcLimIEEE2", |b| Box::new(super::UnderexcLimIEEE2::from_block(b)));
392 m.insert("UnderexcLimX1", |b| Box::new(super::UnderexcLimX1::from_block(b)));
393 m.insert("UnderexcLimX2", |b| Box::new(super::UnderexcLimX2::from_block(b)));
394 m.insert("UnderexcitationLimiterDynamics", |b| Box::new(super::UnderexcitationLimiterDynamics::from_block(b)));
395 m.insert("UnderexcitationLimiterUserDefined", |b| Box::new(super::UnderexcitationLimiterUserDefined::from_block(b)));
396 m.insert("VAdjIEEE", |b| Box::new(super::VAdjIEEE::from_block(b)));
397 m.insert("VCompIEEEType1", |b| Box::new(super::VCompIEEEType1::from_block(b)));
398 m.insert("VCompIEEEType2", |b| Box::new(super::VCompIEEEType2::from_block(b)));
399 m.insert("VSCDynamics", |b| Box::new(super::VSCDynamics::from_block(b)));
400 m.insert("VSCUserDefined", |b| Box::new(super::VSCUserDefined::from_block(b)));
401 m.insert("ValueAliasSet", |b| Box::new(super::ValueAliasSet::from_block(b)));
402 m.insert("ValueToAlias", |b| Box::new(super::ValueToAlias::from_block(b)));
403 m.insert("VisibilityLayer", |b| Box::new(super::VisibilityLayer::from_block(b)));
404 m.insert("VoltageAdjusterDynamics", |b| Box::new(super::VoltageAdjusterDynamics::from_block(b)));
405 m.insert("VoltageAdjusterUserDefined", |b| Box::new(super::VoltageAdjusterUserDefined::from_block(b)));
406 m.insert("VoltageCompensatorDynamics", |b| Box::new(super::VoltageCompensatorDynamics::from_block(b)));
407 m.insert("VoltageCompensatorUserDefined", |b| Box::new(super::VoltageCompensatorUserDefined::from_block(b)));
408 m.insert("VoltageLevel", |b| Box::new(super::VoltageLevel::from_block(b)));
409 m.insert("VoltageLimit", |b| Box::new(super::VoltageLimit::from_block(b)));
410 m.insert("VsCapabilityCurve", |b| Box::new(super::VsCapabilityCurve::from_block(b)));
411 m.insert("VsConverter", |b| Box::new(super::VsConverter::from_block(b)));
412 m.insert("WaveTrap", |b| Box::new(super::WaveTrap::from_block(b)));
413 m.insert("WindAeroConstIEC", |b| Box::new(super::WindAeroConstIEC::from_block(b)));
414 m.insert("WindAeroOneDimIEC", |b| Box::new(super::WindAeroOneDimIEC::from_block(b)));
415 m.insert("WindAeroTwoDimIEC", |b| Box::new(super::WindAeroTwoDimIEC::from_block(b)));
416 m.insert("WindContCurrLimIEC", |b| Box::new(super::WindContCurrLimIEC::from_block(b)));
417 m.insert("WindContPType3IEC", |b| Box::new(super::WindContPType3IEC::from_block(b)));
418 m.insert("WindContPType4aIEC", |b| Box::new(super::WindContPType4aIEC::from_block(b)));
419 m.insert("WindContPType4bIEC", |b| Box::new(super::WindContPType4bIEC::from_block(b)));
420 m.insert("WindContPitchAngleIEC", |b| Box::new(super::WindContPitchAngleIEC::from_block(b)));
421 m.insert("WindContQIEC", |b| Box::new(super::WindContQIEC::from_block(b)));
422 m.insert("WindContQLimIEC", |b| Box::new(super::WindContQLimIEC::from_block(b)));
423 m.insert("WindContQPQULimIEC", |b| Box::new(super::WindContQPQULimIEC::from_block(b)));
424 m.insert("WindContRotorRIEC", |b| Box::new(super::WindContRotorRIEC::from_block(b)));
425 m.insert("WindDynamicsLookupTable", |b| Box::new(super::WindDynamicsLookupTable::from_block(b)));
426 m.insert("WindGenTurbineType1aIEC", |b| Box::new(super::WindGenTurbineType1aIEC::from_block(b)));
427 m.insert("WindGenTurbineType1bIEC", |b| Box::new(super::WindGenTurbineType1bIEC::from_block(b)));
428 m.insert("WindGenTurbineType2IEC", |b| Box::new(super::WindGenTurbineType2IEC::from_block(b)));
429 m.insert("WindGenType3IEC", |b| Box::new(super::WindGenType3IEC::from_block(b)));
430 m.insert("WindGenType3aIEC", |b| Box::new(super::WindGenType3aIEC::from_block(b)));
431 m.insert("WindGenType3bIEC", |b| Box::new(super::WindGenType3bIEC::from_block(b)));
432 m.insert("WindGenType4IEC", |b| Box::new(super::WindGenType4IEC::from_block(b)));
433 m.insert("WindGeneratingUnit", |b| Box::new(super::WindGeneratingUnit::from_block(b)));
434 m.insert("WindMechIEC", |b| Box::new(super::WindMechIEC::from_block(b)));
435 m.insert("WindPitchContPowerIEC", |b| Box::new(super::WindPitchContPowerIEC::from_block(b)));
436 m.insert("WindPlantDynamics", |b| Box::new(super::WindPlantDynamics::from_block(b)));
437 m.insert("WindPlantFreqPcontrolIEC", |b| Box::new(super::WindPlantFreqPcontrolIEC::from_block(b)));
438 m.insert("WindPlantIEC", |b| Box::new(super::WindPlantIEC::from_block(b)));
439 m.insert("WindPlantReactiveControlIEC", |b| Box::new(super::WindPlantReactiveControlIEC::from_block(b)));
440 m.insert("WindPlantUserDefined", |b| Box::new(super::WindPlantUserDefined::from_block(b)));
441 m.insert("WindPowerPlant", |b| Box::new(super::WindPowerPlant::from_block(b)));
442 m.insert("WindProtectionIEC", |b| Box::new(super::WindProtectionIEC::from_block(b)));
443 m.insert("WindRefFrameRotIEC", |b| Box::new(super::WindRefFrameRotIEC::from_block(b)));
444 m.insert("WindTurbineType1or2Dynamics", |b| Box::new(super::WindTurbineType1or2Dynamics::from_block(b)));
445 m.insert("WindTurbineType1or2IEC", |b| Box::new(super::WindTurbineType1or2IEC::from_block(b)));
446 m.insert("WindTurbineType3IEC", |b| Box::new(super::WindTurbineType3IEC::from_block(b)));
447 m.insert("WindTurbineType3or4Dynamics", |b| Box::new(super::WindTurbineType3or4Dynamics::from_block(b)));
448 m.insert("WindTurbineType3or4IEC", |b| Box::new(super::WindTurbineType3or4IEC::from_block(b)));
449 m.insert("WindTurbineType4IEC", |b| Box::new(super::WindTurbineType4IEC::from_block(b)));
450 m.insert("WindTurbineType4aIEC", |b| Box::new(super::WindTurbineType4aIEC::from_block(b)));
451 m.insert("WindTurbineType4bIEC", |b| Box::new(super::WindTurbineType4bIEC::from_block(b)));
452 m.insert("WindType1or2UserDefined", |b| Box::new(super::WindType1or2UserDefined::from_block(b)));
453 m.insert("WindType3or4UserDefined", |b| Box::new(super::WindType3or4UserDefined::from_block(b)));
454 m.insert("WorkLocation", |b| Box::new(super::WorkLocation::from_block(b)));
455 m
456}
457
458pub type JsonParseFn = fn(serde_json::Value) -> Result<Box<dyn CimElement>, serde_json::Error>;
459
460pub fn json_registry() -> HashMap<&'static str, JsonParseFn> {
461 let mut m: HashMap<&'static str, JsonParseFn> = HashMap::new();
462 m.insert("ACDCConverter", |v| Ok(Box::new(serde_json::from_value::<super::ACDCConverter>(v)?)));
463 m.insert("ACDCConverterDCTerminal", |v| Ok(Box::new(serde_json::from_value::<super::ACDCConverterDCTerminal>(v)?)));
464 m.insert("ACDCTerminal", |v| Ok(Box::new(serde_json::from_value::<super::ACDCTerminal>(v)?)));
465 m.insert("ACLineSegment", |v| Ok(Box::new(serde_json::from_value::<super::ACLineSegment>(v)?)));
466 m.insert("Accumulator", |v| Ok(Box::new(serde_json::from_value::<super::Accumulator>(v)?)));
467 m.insert("AccumulatorLimit", |v| Ok(Box::new(serde_json::from_value::<super::AccumulatorLimit>(v)?)));
468 m.insert("AccumulatorLimitSet", |v| Ok(Box::new(serde_json::from_value::<super::AccumulatorLimitSet>(v)?)));
469 m.insert("AccumulatorReset", |v| Ok(Box::new(serde_json::from_value::<super::AccumulatorReset>(v)?)));
470 m.insert("AccumulatorValue", |v| Ok(Box::new(serde_json::from_value::<super::AccumulatorValue>(v)?)));
471 m.insert("ActivePowerLimit", |v| Ok(Box::new(serde_json::from_value::<super::ActivePowerLimit>(v)?)));
472 m.insert("Analog", |v| Ok(Box::new(serde_json::from_value::<super::Analog>(v)?)));
473 m.insert("AnalogControl", |v| Ok(Box::new(serde_json::from_value::<super::AnalogControl>(v)?)));
474 m.insert("AnalogLimit", |v| Ok(Box::new(serde_json::from_value::<super::AnalogLimit>(v)?)));
475 m.insert("AnalogLimitSet", |v| Ok(Box::new(serde_json::from_value::<super::AnalogLimitSet>(v)?)));
476 m.insert("AnalogValue", |v| Ok(Box::new(serde_json::from_value::<super::AnalogValue>(v)?)));
477 m.insert("ApparentPowerLimit", |v| Ok(Box::new(serde_json::from_value::<super::ApparentPowerLimit>(v)?)));
478 m.insert("AsynchronousMachine", |v| Ok(Box::new(serde_json::from_value::<super::AsynchronousMachine>(v)?)));
479 m.insert("AsynchronousMachineDynamics", |v| Ok(Box::new(serde_json::from_value::<super::AsynchronousMachineDynamics>(v)?)));
480 m.insert("AsynchronousMachineEquivalentCircuit", |v| Ok(Box::new(serde_json::from_value::<super::AsynchronousMachineEquivalentCircuit>(v)?)));
481 m.insert("AsynchronousMachineTimeConstantReactance", |v| Ok(Box::new(serde_json::from_value::<super::AsynchronousMachineTimeConstantReactance>(v)?)));
482 m.insert("AsynchronousMachineUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::AsynchronousMachineUserDefined>(v)?)));
483 m.insert("AuxiliaryEquipment", |v| Ok(Box::new(serde_json::from_value::<super::AuxiliaryEquipment>(v)?)));
484 m.insert("BaseVoltage", |v| Ok(Box::new(serde_json::from_value::<super::BaseVoltage>(v)?)));
485 m.insert("BasicIntervalSchedule", |v| Ok(Box::new(serde_json::from_value::<super::BasicIntervalSchedule>(v)?)));
486 m.insert("BatteryUnit", |v| Ok(Box::new(serde_json::from_value::<super::BatteryUnit>(v)?)));
487 m.insert("Bay", |v| Ok(Box::new(serde_json::from_value::<super::Bay>(v)?)));
488 m.insert("BoundaryPoint", |v| Ok(Box::new(serde_json::from_value::<super::BoundaryPoint>(v)?)));
489 m.insert("Breaker", |v| Ok(Box::new(serde_json::from_value::<super::Breaker>(v)?)));
490 m.insert("BusNameMarker", |v| Ok(Box::new(serde_json::from_value::<super::BusNameMarker>(v)?)));
491 m.insert("BusbarSection", |v| Ok(Box::new(serde_json::from_value::<super::BusbarSection>(v)?)));
492 m.insert("CAESPlant", |v| Ok(Box::new(serde_json::from_value::<super::CAESPlant>(v)?)));
493 m.insert("CSCDynamics", |v| Ok(Box::new(serde_json::from_value::<super::CSCDynamics>(v)?)));
494 m.insert("CSCUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::CSCUserDefined>(v)?)));
495 m.insert("Clamp", |v| Ok(Box::new(serde_json::from_value::<super::Clamp>(v)?)));
496 m.insert("CogenerationPlant", |v| Ok(Box::new(serde_json::from_value::<super::CogenerationPlant>(v)?)));
497 m.insert("CombinedCyclePlant", |v| Ok(Box::new(serde_json::from_value::<super::CombinedCyclePlant>(v)?)));
498 m.insert("Command", |v| Ok(Box::new(serde_json::from_value::<super::Command>(v)?)));
499 m.insert("ConductingEquipment", |v| Ok(Box::new(serde_json::from_value::<super::ConductingEquipment>(v)?)));
500 m.insert("Conductor", |v| Ok(Box::new(serde_json::from_value::<super::Conductor>(v)?)));
501 m.insert("ConformLoad", |v| Ok(Box::new(serde_json::from_value::<super::ConformLoad>(v)?)));
502 m.insert("ConformLoadGroup", |v| Ok(Box::new(serde_json::from_value::<super::ConformLoadGroup>(v)?)));
503 m.insert("ConformLoadSchedule", |v| Ok(Box::new(serde_json::from_value::<super::ConformLoadSchedule>(v)?)));
504 m.insert("ConnectivityNode", |v| Ok(Box::new(serde_json::from_value::<super::ConnectivityNode>(v)?)));
505 m.insert("ConnectivityNodeContainer", |v| Ok(Box::new(serde_json::from_value::<super::ConnectivityNodeContainer>(v)?)));
506 m.insert("Connector", |v| Ok(Box::new(serde_json::from_value::<super::Connector>(v)?)));
507 m.insert("Control", |v| Ok(Box::new(serde_json::from_value::<super::Control>(v)?)));
508 m.insert("ControlArea", |v| Ok(Box::new(serde_json::from_value::<super::ControlArea>(v)?)));
509 m.insert("ControlAreaGeneratingUnit", |v| Ok(Box::new(serde_json::from_value::<super::ControlAreaGeneratingUnit>(v)?)));
510 m.insert("CoordinateSystem", |v| Ok(Box::new(serde_json::from_value::<super::CoordinateSystem>(v)?)));
511 m.insert("CrossCompoundTurbineGovernorDynamics", |v| Ok(Box::new(serde_json::from_value::<super::CrossCompoundTurbineGovernorDynamics>(v)?)));
512 m.insert("CsConverter", |v| Ok(Box::new(serde_json::from_value::<super::CsConverter>(v)?)));
513 m.insert("CurrentLimit", |v| Ok(Box::new(serde_json::from_value::<super::CurrentLimit>(v)?)));
514 m.insert("CurrentTransformer", |v| Ok(Box::new(serde_json::from_value::<super::CurrentTransformer>(v)?)));
515 m.insert("Curve", |v| Ok(Box::new(serde_json::from_value::<super::Curve>(v)?)));
516 m.insert("CurveData", |v| Ok(Box::new(serde_json::from_value::<super::CurveData>(v)?)));
517 m.insert("Cut", |v| Ok(Box::new(serde_json::from_value::<super::Cut>(v)?)));
518 m.insert("DCBaseTerminal", |v| Ok(Box::new(serde_json::from_value::<super::DCBaseTerminal>(v)?)));
519 m.insert("DCBreaker", |v| Ok(Box::new(serde_json::from_value::<super::DCBreaker>(v)?)));
520 m.insert("DCBusbar", |v| Ok(Box::new(serde_json::from_value::<super::DCBusbar>(v)?)));
521 m.insert("DCChopper", |v| Ok(Box::new(serde_json::from_value::<super::DCChopper>(v)?)));
522 m.insert("DCConductingEquipment", |v| Ok(Box::new(serde_json::from_value::<super::DCConductingEquipment>(v)?)));
523 m.insert("DCConverterUnit", |v| Ok(Box::new(serde_json::from_value::<super::DCConverterUnit>(v)?)));
524 m.insert("DCDisconnector", |v| Ok(Box::new(serde_json::from_value::<super::DCDisconnector>(v)?)));
525 m.insert("DCEquipmentContainer", |v| Ok(Box::new(serde_json::from_value::<super::DCEquipmentContainer>(v)?)));
526 m.insert("DCGround", |v| Ok(Box::new(serde_json::from_value::<super::DCGround>(v)?)));
527 m.insert("DCLine", |v| Ok(Box::new(serde_json::from_value::<super::DCLine>(v)?)));
528 m.insert("DCLineSegment", |v| Ok(Box::new(serde_json::from_value::<super::DCLineSegment>(v)?)));
529 m.insert("DCNode", |v| Ok(Box::new(serde_json::from_value::<super::DCNode>(v)?)));
530 m.insert("DCSeriesDevice", |v| Ok(Box::new(serde_json::from_value::<super::DCSeriesDevice>(v)?)));
531 m.insert("DCShunt", |v| Ok(Box::new(serde_json::from_value::<super::DCShunt>(v)?)));
532 m.insert("DCSwitch", |v| Ok(Box::new(serde_json::from_value::<super::DCSwitch>(v)?)));
533 m.insert("DCTerminal", |v| Ok(Box::new(serde_json::from_value::<super::DCTerminal>(v)?)));
534 m.insert("DCTopologicalIsland", |v| Ok(Box::new(serde_json::from_value::<super::DCTopologicalIsland>(v)?)));
535 m.insert("DCTopologicalNode", |v| Ok(Box::new(serde_json::from_value::<super::DCTopologicalNode>(v)?)));
536 m.insert("DayType", |v| Ok(Box::new(serde_json::from_value::<super::DayType>(v)?)));
537 m.insert("Diagram", |v| Ok(Box::new(serde_json::from_value::<super::Diagram>(v)?)));
538 m.insert("DiagramObject", |v| Ok(Box::new(serde_json::from_value::<super::DiagramObject>(v)?)));
539 m.insert("DiagramObjectGluePoint", |v| Ok(Box::new(serde_json::from_value::<super::DiagramObjectGluePoint>(v)?)));
540 m.insert("DiagramObjectPoint", |v| Ok(Box::new(serde_json::from_value::<super::DiagramObjectPoint>(v)?)));
541 m.insert("DiagramObjectStyle", |v| Ok(Box::new(serde_json::from_value::<super::DiagramObjectStyle>(v)?)));
542 m.insert("DiagramStyle", |v| Ok(Box::new(serde_json::from_value::<super::DiagramStyle>(v)?)));
543 m.insert("DifferenceModel", |v| Ok(Box::new(serde_json::from_value::<super::DifferenceModel>(v)?)));
544 m.insert("DiscExcContIEEEDEC1A", |v| Ok(Box::new(serde_json::from_value::<super::DiscExcContIEEEDEC1A>(v)?)));
545 m.insert("DiscExcContIEEEDEC2A", |v| Ok(Box::new(serde_json::from_value::<super::DiscExcContIEEEDEC2A>(v)?)));
546 m.insert("DiscExcContIEEEDEC3A", |v| Ok(Box::new(serde_json::from_value::<super::DiscExcContIEEEDEC3A>(v)?)));
547 m.insert("DisconnectingCircuitBreaker", |v| Ok(Box::new(serde_json::from_value::<super::DisconnectingCircuitBreaker>(v)?)));
548 m.insert("Disconnector", |v| Ok(Box::new(serde_json::from_value::<super::Disconnector>(v)?)));
549 m.insert("DiscontinuousExcitationControlDynamics", |v| Ok(Box::new(serde_json::from_value::<super::DiscontinuousExcitationControlDynamics>(v)?)));
550 m.insert("DiscontinuousExcitationControlUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::DiscontinuousExcitationControlUserDefined>(v)?)));
551 m.insert("Discrete", |v| Ok(Box::new(serde_json::from_value::<super::Discrete>(v)?)));
552 m.insert("DiscreteValue", |v| Ok(Box::new(serde_json::from_value::<super::DiscreteValue>(v)?)));
553 m.insert("DynamicsFunctionBlock", |v| Ok(Box::new(serde_json::from_value::<super::DynamicsFunctionBlock>(v)?)));
554 m.insert("EarthFaultCompensator", |v| Ok(Box::new(serde_json::from_value::<super::EarthFaultCompensator>(v)?)));
555 m.insert("EnergyArea", |v| Ok(Box::new(serde_json::from_value::<super::EnergyArea>(v)?)));
556 m.insert("EnergyConnection", |v| Ok(Box::new(serde_json::from_value::<super::EnergyConnection>(v)?)));
557 m.insert("EnergyConsumer", |v| Ok(Box::new(serde_json::from_value::<super::EnergyConsumer>(v)?)));
558 m.insert("EnergySchedulingType", |v| Ok(Box::new(serde_json::from_value::<super::EnergySchedulingType>(v)?)));
559 m.insert("EnergySource", |v| Ok(Box::new(serde_json::from_value::<super::EnergySource>(v)?)));
560 m.insert("Equipment", |v| Ok(Box::new(serde_json::from_value::<super::Equipment>(v)?)));
561 m.insert("EquipmentContainer", |v| Ok(Box::new(serde_json::from_value::<super::EquipmentContainer>(v)?)));
562 m.insert("EquivalentBranch", |v| Ok(Box::new(serde_json::from_value::<super::EquivalentBranch>(v)?)));
563 m.insert("EquivalentEquipment", |v| Ok(Box::new(serde_json::from_value::<super::EquivalentEquipment>(v)?)));
564 m.insert("EquivalentInjection", |v| Ok(Box::new(serde_json::from_value::<super::EquivalentInjection>(v)?)));
565 m.insert("EquivalentNetwork", |v| Ok(Box::new(serde_json::from_value::<super::EquivalentNetwork>(v)?)));
566 m.insert("EquivalentShunt", |v| Ok(Box::new(serde_json::from_value::<super::EquivalentShunt>(v)?)));
567 m.insert("ExcAC1A", |v| Ok(Box::new(serde_json::from_value::<super::ExcAC1A>(v)?)));
568 m.insert("ExcAC2A", |v| Ok(Box::new(serde_json::from_value::<super::ExcAC2A>(v)?)));
569 m.insert("ExcAC3A", |v| Ok(Box::new(serde_json::from_value::<super::ExcAC3A>(v)?)));
570 m.insert("ExcAC4A", |v| Ok(Box::new(serde_json::from_value::<super::ExcAC4A>(v)?)));
571 m.insert("ExcAC5A", |v| Ok(Box::new(serde_json::from_value::<super::ExcAC5A>(v)?)));
572 m.insert("ExcAC6A", |v| Ok(Box::new(serde_json::from_value::<super::ExcAC6A>(v)?)));
573 m.insert("ExcAC8B", |v| Ok(Box::new(serde_json::from_value::<super::ExcAC8B>(v)?)));
574 m.insert("ExcANS", |v| Ok(Box::new(serde_json::from_value::<super::ExcANS>(v)?)));
575 m.insert("ExcAVR1", |v| Ok(Box::new(serde_json::from_value::<super::ExcAVR1>(v)?)));
576 m.insert("ExcAVR2", |v| Ok(Box::new(serde_json::from_value::<super::ExcAVR2>(v)?)));
577 m.insert("ExcAVR3", |v| Ok(Box::new(serde_json::from_value::<super::ExcAVR3>(v)?)));
578 m.insert("ExcAVR4", |v| Ok(Box::new(serde_json::from_value::<super::ExcAVR4>(v)?)));
579 m.insert("ExcAVR5", |v| Ok(Box::new(serde_json::from_value::<super::ExcAVR5>(v)?)));
580 m.insert("ExcAVR7", |v| Ok(Box::new(serde_json::from_value::<super::ExcAVR7>(v)?)));
581 m.insert("ExcBBC", |v| Ok(Box::new(serde_json::from_value::<super::ExcBBC>(v)?)));
582 m.insert("ExcCZ", |v| Ok(Box::new(serde_json::from_value::<super::ExcCZ>(v)?)));
583 m.insert("ExcDC1A", |v| Ok(Box::new(serde_json::from_value::<super::ExcDC1A>(v)?)));
584 m.insert("ExcDC2A", |v| Ok(Box::new(serde_json::from_value::<super::ExcDC2A>(v)?)));
585 m.insert("ExcDC3A", |v| Ok(Box::new(serde_json::from_value::<super::ExcDC3A>(v)?)));
586 m.insert("ExcDC3A1", |v| Ok(Box::new(serde_json::from_value::<super::ExcDC3A1>(v)?)));
587 m.insert("ExcELIN1", |v| Ok(Box::new(serde_json::from_value::<super::ExcELIN1>(v)?)));
588 m.insert("ExcELIN2", |v| Ok(Box::new(serde_json::from_value::<super::ExcELIN2>(v)?)));
589 m.insert("ExcHU", |v| Ok(Box::new(serde_json::from_value::<super::ExcHU>(v)?)));
590 m.insert("ExcIEEEAC1A", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEAC1A>(v)?)));
591 m.insert("ExcIEEEAC2A", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEAC2A>(v)?)));
592 m.insert("ExcIEEEAC3A", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEAC3A>(v)?)));
593 m.insert("ExcIEEEAC4A", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEAC4A>(v)?)));
594 m.insert("ExcIEEEAC5A", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEAC5A>(v)?)));
595 m.insert("ExcIEEEAC6A", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEAC6A>(v)?)));
596 m.insert("ExcIEEEAC7B", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEAC7B>(v)?)));
597 m.insert("ExcIEEEAC8B", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEAC8B>(v)?)));
598 m.insert("ExcIEEEDC1A", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEDC1A>(v)?)));
599 m.insert("ExcIEEEDC2A", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEDC2A>(v)?)));
600 m.insert("ExcIEEEDC3A", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEDC3A>(v)?)));
601 m.insert("ExcIEEEDC4B", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEDC4B>(v)?)));
602 m.insert("ExcIEEEST1A", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEST1A>(v)?)));
603 m.insert("ExcIEEEST2A", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEST2A>(v)?)));
604 m.insert("ExcIEEEST3A", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEST3A>(v)?)));
605 m.insert("ExcIEEEST4B", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEST4B>(v)?)));
606 m.insert("ExcIEEEST5B", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEST5B>(v)?)));
607 m.insert("ExcIEEEST6B", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEST6B>(v)?)));
608 m.insert("ExcIEEEST7B", |v| Ok(Box::new(serde_json::from_value::<super::ExcIEEEST7B>(v)?)));
609 m.insert("ExcNI", |v| Ok(Box::new(serde_json::from_value::<super::ExcNI>(v)?)));
610 m.insert("ExcOEX3T", |v| Ok(Box::new(serde_json::from_value::<super::ExcOEX3T>(v)?)));
611 m.insert("ExcPIC", |v| Ok(Box::new(serde_json::from_value::<super::ExcPIC>(v)?)));
612 m.insert("ExcREXS", |v| Ok(Box::new(serde_json::from_value::<super::ExcREXS>(v)?)));
613 m.insert("ExcRQB", |v| Ok(Box::new(serde_json::from_value::<super::ExcRQB>(v)?)));
614 m.insert("ExcSCRX", |v| Ok(Box::new(serde_json::from_value::<super::ExcSCRX>(v)?)));
615 m.insert("ExcSEXS", |v| Ok(Box::new(serde_json::from_value::<super::ExcSEXS>(v)?)));
616 m.insert("ExcSK", |v| Ok(Box::new(serde_json::from_value::<super::ExcSK>(v)?)));
617 m.insert("ExcST1A", |v| Ok(Box::new(serde_json::from_value::<super::ExcST1A>(v)?)));
618 m.insert("ExcST2A", |v| Ok(Box::new(serde_json::from_value::<super::ExcST2A>(v)?)));
619 m.insert("ExcST3A", |v| Ok(Box::new(serde_json::from_value::<super::ExcST3A>(v)?)));
620 m.insert("ExcST4B", |v| Ok(Box::new(serde_json::from_value::<super::ExcST4B>(v)?)));
621 m.insert("ExcST6B", |v| Ok(Box::new(serde_json::from_value::<super::ExcST6B>(v)?)));
622 m.insert("ExcST7B", |v| Ok(Box::new(serde_json::from_value::<super::ExcST7B>(v)?)));
623 m.insert("ExcitationSystemDynamics", |v| Ok(Box::new(serde_json::from_value::<super::ExcitationSystemDynamics>(v)?)));
624 m.insert("ExcitationSystemUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::ExcitationSystemUserDefined>(v)?)));
625 m.insert("ExternalNetworkInjection", |v| Ok(Box::new(serde_json::from_value::<super::ExternalNetworkInjection>(v)?)));
626 m.insert("FaultIndicator", |v| Ok(Box::new(serde_json::from_value::<super::FaultIndicator>(v)?)));
627 m.insert("FossilFuel", |v| Ok(Box::new(serde_json::from_value::<super::FossilFuel>(v)?)));
628 m.insert("FullModel", |v| Ok(Box::new(serde_json::from_value::<super::FullModel>(v)?)));
629 m.insert("Fuse", |v| Ok(Box::new(serde_json::from_value::<super::Fuse>(v)?)));
630 m.insert("GenICompensationForGenJ", |v| Ok(Box::new(serde_json::from_value::<super::GenICompensationForGenJ>(v)?)));
631 m.insert("GeneratingUnit", |v| Ok(Box::new(serde_json::from_value::<super::GeneratingUnit>(v)?)));
632 m.insert("GeographicalRegion", |v| Ok(Box::new(serde_json::from_value::<super::GeographicalRegion>(v)?)));
633 m.insert("GovCT1", |v| Ok(Box::new(serde_json::from_value::<super::GovCT1>(v)?)));
634 m.insert("GovCT2", |v| Ok(Box::new(serde_json::from_value::<super::GovCT2>(v)?)));
635 m.insert("GovGAST", |v| Ok(Box::new(serde_json::from_value::<super::GovGAST>(v)?)));
636 m.insert("GovGAST1", |v| Ok(Box::new(serde_json::from_value::<super::GovGAST1>(v)?)));
637 m.insert("GovGAST2", |v| Ok(Box::new(serde_json::from_value::<super::GovGAST2>(v)?)));
638 m.insert("GovGAST3", |v| Ok(Box::new(serde_json::from_value::<super::GovGAST3>(v)?)));
639 m.insert("GovGAST4", |v| Ok(Box::new(serde_json::from_value::<super::GovGAST4>(v)?)));
640 m.insert("GovGASTWD", |v| Ok(Box::new(serde_json::from_value::<super::GovGASTWD>(v)?)));
641 m.insert("GovHydro1", |v| Ok(Box::new(serde_json::from_value::<super::GovHydro1>(v)?)));
642 m.insert("GovHydro2", |v| Ok(Box::new(serde_json::from_value::<super::GovHydro2>(v)?)));
643 m.insert("GovHydro3", |v| Ok(Box::new(serde_json::from_value::<super::GovHydro3>(v)?)));
644 m.insert("GovHydro4", |v| Ok(Box::new(serde_json::from_value::<super::GovHydro4>(v)?)));
645 m.insert("GovHydroDD", |v| Ok(Box::new(serde_json::from_value::<super::GovHydroDD>(v)?)));
646 m.insert("GovHydroFrancis", |v| Ok(Box::new(serde_json::from_value::<super::GovHydroFrancis>(v)?)));
647 m.insert("GovHydroIEEE0", |v| Ok(Box::new(serde_json::from_value::<super::GovHydroIEEE0>(v)?)));
648 m.insert("GovHydroIEEE2", |v| Ok(Box::new(serde_json::from_value::<super::GovHydroIEEE2>(v)?)));
649 m.insert("GovHydroPID", |v| Ok(Box::new(serde_json::from_value::<super::GovHydroPID>(v)?)));
650 m.insert("GovHydroPID2", |v| Ok(Box::new(serde_json::from_value::<super::GovHydroPID2>(v)?)));
651 m.insert("GovHydroPelton", |v| Ok(Box::new(serde_json::from_value::<super::GovHydroPelton>(v)?)));
652 m.insert("GovHydroR", |v| Ok(Box::new(serde_json::from_value::<super::GovHydroR>(v)?)));
653 m.insert("GovHydroWEH", |v| Ok(Box::new(serde_json::from_value::<super::GovHydroWEH>(v)?)));
654 m.insert("GovHydroWPID", |v| Ok(Box::new(serde_json::from_value::<super::GovHydroWPID>(v)?)));
655 m.insert("GovSteam0", |v| Ok(Box::new(serde_json::from_value::<super::GovSteam0>(v)?)));
656 m.insert("GovSteam1", |v| Ok(Box::new(serde_json::from_value::<super::GovSteam1>(v)?)));
657 m.insert("GovSteam2", |v| Ok(Box::new(serde_json::from_value::<super::GovSteam2>(v)?)));
658 m.insert("GovSteamBB", |v| Ok(Box::new(serde_json::from_value::<super::GovSteamBB>(v)?)));
659 m.insert("GovSteamCC", |v| Ok(Box::new(serde_json::from_value::<super::GovSteamCC>(v)?)));
660 m.insert("GovSteamEU", |v| Ok(Box::new(serde_json::from_value::<super::GovSteamEU>(v)?)));
661 m.insert("GovSteamFV2", |v| Ok(Box::new(serde_json::from_value::<super::GovSteamFV2>(v)?)));
662 m.insert("GovSteamFV3", |v| Ok(Box::new(serde_json::from_value::<super::GovSteamFV3>(v)?)));
663 m.insert("GovSteamFV4", |v| Ok(Box::new(serde_json::from_value::<super::GovSteamFV4>(v)?)));
664 m.insert("GovSteamIEEE1", |v| Ok(Box::new(serde_json::from_value::<super::GovSteamIEEE1>(v)?)));
665 m.insert("GovSteamSGO", |v| Ok(Box::new(serde_json::from_value::<super::GovSteamSGO>(v)?)));
666 m.insert("GrossToNetActivePowerCurve", |v| Ok(Box::new(serde_json::from_value::<super::GrossToNetActivePowerCurve>(v)?)));
667 m.insert("Ground", |v| Ok(Box::new(serde_json::from_value::<super::Ground>(v)?)));
668 m.insert("GroundDisconnector", |v| Ok(Box::new(serde_json::from_value::<super::GroundDisconnector>(v)?)));
669 m.insert("GroundingImpedance", |v| Ok(Box::new(serde_json::from_value::<super::GroundingImpedance>(v)?)));
670 m.insert("HVDCDynamics", |v| Ok(Box::new(serde_json::from_value::<super::HVDCDynamics>(v)?)));
671 m.insert("HydroGeneratingUnit", |v| Ok(Box::new(serde_json::from_value::<super::HydroGeneratingUnit>(v)?)));
672 m.insert("HydroPowerPlant", |v| Ok(Box::new(serde_json::from_value::<super::HydroPowerPlant>(v)?)));
673 m.insert("HydroPump", |v| Ok(Box::new(serde_json::from_value::<super::HydroPump>(v)?)));
674 m.insert("IOPoint", |v| Ok(Box::new(serde_json::from_value::<super::IOPoint>(v)?)));
675 m.insert("IdentifiedObject", |v| Ok(Box::new(serde_json::from_value::<super::IdentifiedObject>(v)?)));
676 m.insert("Jumper", |v| Ok(Box::new(serde_json::from_value::<super::Jumper>(v)?)));
677 m.insert("Junction", |v| Ok(Box::new(serde_json::from_value::<super::Junction>(v)?)));
678 m.insert("Limit", |v| Ok(Box::new(serde_json::from_value::<super::Limit>(v)?)));
679 m.insert("LimitKind", |v| Ok(Box::new(serde_json::from_value::<super::LimitKind>(v)?)));
680 m.insert("LimitSet", |v| Ok(Box::new(serde_json::from_value::<super::LimitSet>(v)?)));
681 m.insert("Line", |v| Ok(Box::new(serde_json::from_value::<super::Line>(v)?)));
682 m.insert("LinearShuntCompensator", |v| Ok(Box::new(serde_json::from_value::<super::LinearShuntCompensator>(v)?)));
683 m.insert("LoadAggregate", |v| Ok(Box::new(serde_json::from_value::<super::LoadAggregate>(v)?)));
684 m.insert("LoadArea", |v| Ok(Box::new(serde_json::from_value::<super::LoadArea>(v)?)));
685 m.insert("LoadBreakSwitch", |v| Ok(Box::new(serde_json::from_value::<super::LoadBreakSwitch>(v)?)));
686 m.insert("LoadComposite", |v| Ok(Box::new(serde_json::from_value::<super::LoadComposite>(v)?)));
687 m.insert("LoadDynamics", |v| Ok(Box::new(serde_json::from_value::<super::LoadDynamics>(v)?)));
688 m.insert("LoadGenericNonLinear", |v| Ok(Box::new(serde_json::from_value::<super::LoadGenericNonLinear>(v)?)));
689 m.insert("LoadGroup", |v| Ok(Box::new(serde_json::from_value::<super::LoadGroup>(v)?)));
690 m.insert("LoadMotor", |v| Ok(Box::new(serde_json::from_value::<super::LoadMotor>(v)?)));
691 m.insert("LoadResponseCharacteristic", |v| Ok(Box::new(serde_json::from_value::<super::LoadResponseCharacteristic>(v)?)));
692 m.insert("LoadStatic", |v| Ok(Box::new(serde_json::from_value::<super::LoadStatic>(v)?)));
693 m.insert("LoadUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::LoadUserDefined>(v)?)));
694 m.insert("Location", |v| Ok(Box::new(serde_json::from_value::<super::Location>(v)?)));
695 m.insert("Measurement", |v| Ok(Box::new(serde_json::from_value::<super::Measurement>(v)?)));
696 m.insert("MeasurementValue", |v| Ok(Box::new(serde_json::from_value::<super::MeasurementValue>(v)?)));
697 m.insert("MeasurementValueQuality", |v| Ok(Box::new(serde_json::from_value::<super::MeasurementValueQuality>(v)?)));
698 m.insert("MeasurementValueSource", |v| Ok(Box::new(serde_json::from_value::<super::MeasurementValueSource>(v)?)));
699 m.insert("MechLoad1", |v| Ok(Box::new(serde_json::from_value::<super::MechLoad1>(v)?)));
700 m.insert("MechanicalLoadDynamics", |v| Ok(Box::new(serde_json::from_value::<super::MechanicalLoadDynamics>(v)?)));
701 m.insert("MechanicalLoadUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::MechanicalLoadUserDefined>(v)?)));
702 m.insert("Model", |v| Ok(Box::new(serde_json::from_value::<super::Model>(v)?)));
703 m.insert("MutualCoupling", |v| Ok(Box::new(serde_json::from_value::<super::MutualCoupling>(v)?)));
704 m.insert("NonConformLoad", |v| Ok(Box::new(serde_json::from_value::<super::NonConformLoad>(v)?)));
705 m.insert("NonConformLoadGroup", |v| Ok(Box::new(serde_json::from_value::<super::NonConformLoadGroup>(v)?)));
706 m.insert("NonConformLoadSchedule", |v| Ok(Box::new(serde_json::from_value::<super::NonConformLoadSchedule>(v)?)));
707 m.insert("NonlinearShuntCompensator", |v| Ok(Box::new(serde_json::from_value::<super::NonlinearShuntCompensator>(v)?)));
708 m.insert("NonlinearShuntCompensatorPoint", |v| Ok(Box::new(serde_json::from_value::<super::NonlinearShuntCompensatorPoint>(v)?)));
709 m.insert("NuclearGeneratingUnit", |v| Ok(Box::new(serde_json::from_value::<super::NuclearGeneratingUnit>(v)?)));
710 m.insert("OperationalLimit", |v| Ok(Box::new(serde_json::from_value::<super::OperationalLimit>(v)?)));
711 m.insert("OperationalLimitSet", |v| Ok(Box::new(serde_json::from_value::<super::OperationalLimitSet>(v)?)));
712 m.insert("OperationalLimitType", |v| Ok(Box::new(serde_json::from_value::<super::OperationalLimitType>(v)?)));
713 m.insert("OverexcLim2", |v| Ok(Box::new(serde_json::from_value::<super::OverexcLim2>(v)?)));
714 m.insert("OverexcLimIEEE", |v| Ok(Box::new(serde_json::from_value::<super::OverexcLimIEEE>(v)?)));
715 m.insert("OverexcLimX1", |v| Ok(Box::new(serde_json::from_value::<super::OverexcLimX1>(v)?)));
716 m.insert("OverexcLimX2", |v| Ok(Box::new(serde_json::from_value::<super::OverexcLimX2>(v)?)));
717 m.insert("OverexcitationLimiterDynamics", |v| Ok(Box::new(serde_json::from_value::<super::OverexcitationLimiterDynamics>(v)?)));
718 m.insert("OverexcitationLimiterUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::OverexcitationLimiterUserDefined>(v)?)));
719 m.insert("PFVArControllerType1Dynamics", |v| Ok(Box::new(serde_json::from_value::<super::PFVArControllerType1Dynamics>(v)?)));
720 m.insert("PFVArControllerType1UserDefined", |v| Ok(Box::new(serde_json::from_value::<super::PFVArControllerType1UserDefined>(v)?)));
721 m.insert("PFVArControllerType2Dynamics", |v| Ok(Box::new(serde_json::from_value::<super::PFVArControllerType2Dynamics>(v)?)));
722 m.insert("PFVArControllerType2UserDefined", |v| Ok(Box::new(serde_json::from_value::<super::PFVArControllerType2UserDefined>(v)?)));
723 m.insert("PFVArType1IEEEPFController", |v| Ok(Box::new(serde_json::from_value::<super::PFVArType1IEEEPFController>(v)?)));
724 m.insert("PFVArType1IEEEVArController", |v| Ok(Box::new(serde_json::from_value::<super::PFVArType1IEEEVArController>(v)?)));
725 m.insert("PFVArType2Common1", |v| Ok(Box::new(serde_json::from_value::<super::PFVArType2Common1>(v)?)));
726 m.insert("PFVArType2IEEEPFController", |v| Ok(Box::new(serde_json::from_value::<super::PFVArType2IEEEPFController>(v)?)));
727 m.insert("PFVArType2IEEEVArController", |v| Ok(Box::new(serde_json::from_value::<super::PFVArType2IEEEVArController>(v)?)));
728 m.insert("PetersenCoil", |v| Ok(Box::new(serde_json::from_value::<super::PetersenCoil>(v)?)));
729 m.insert("PhaseTapChanger", |v| Ok(Box::new(serde_json::from_value::<super::PhaseTapChanger>(v)?)));
730 m.insert("PhaseTapChangerAsymmetrical", |v| Ok(Box::new(serde_json::from_value::<super::PhaseTapChangerAsymmetrical>(v)?)));
731 m.insert("PhaseTapChangerLinear", |v| Ok(Box::new(serde_json::from_value::<super::PhaseTapChangerLinear>(v)?)));
732 m.insert("PhaseTapChangerNonLinear", |v| Ok(Box::new(serde_json::from_value::<super::PhaseTapChangerNonLinear>(v)?)));
733 m.insert("PhaseTapChangerSymmetrical", |v| Ok(Box::new(serde_json::from_value::<super::PhaseTapChangerSymmetrical>(v)?)));
734 m.insert("PhaseTapChangerTable", |v| Ok(Box::new(serde_json::from_value::<super::PhaseTapChangerTable>(v)?)));
735 m.insert("PhaseTapChangerTablePoint", |v| Ok(Box::new(serde_json::from_value::<super::PhaseTapChangerTablePoint>(v)?)));
736 m.insert("PhaseTapChangerTabular", |v| Ok(Box::new(serde_json::from_value::<super::PhaseTapChangerTabular>(v)?)));
737 m.insert("PhotoVoltaicUnit", |v| Ok(Box::new(serde_json::from_value::<super::PhotoVoltaicUnit>(v)?)));
738 m.insert("PositionPoint", |v| Ok(Box::new(serde_json::from_value::<super::PositionPoint>(v)?)));
739 m.insert("PostLineSensor", |v| Ok(Box::new(serde_json::from_value::<super::PostLineSensor>(v)?)));
740 m.insert("PotentialTransformer", |v| Ok(Box::new(serde_json::from_value::<super::PotentialTransformer>(v)?)));
741 m.insert("PowerElectronicsConnection", |v| Ok(Box::new(serde_json::from_value::<super::PowerElectronicsConnection>(v)?)));
742 m.insert("PowerElectronicsUnit", |v| Ok(Box::new(serde_json::from_value::<super::PowerElectronicsUnit>(v)?)));
743 m.insert("PowerElectronicsWindUnit", |v| Ok(Box::new(serde_json::from_value::<super::PowerElectronicsWindUnit>(v)?)));
744 m.insert("PowerSystemResource", |v| Ok(Box::new(serde_json::from_value::<super::PowerSystemResource>(v)?)));
745 m.insert("PowerSystemStabilizerDynamics", |v| Ok(Box::new(serde_json::from_value::<super::PowerSystemStabilizerDynamics>(v)?)));
746 m.insert("PowerSystemStabilizerUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::PowerSystemStabilizerUserDefined>(v)?)));
747 m.insert("PowerTransformer", |v| Ok(Box::new(serde_json::from_value::<super::PowerTransformer>(v)?)));
748 m.insert("PowerTransformerEnd", |v| Ok(Box::new(serde_json::from_value::<super::PowerTransformerEnd>(v)?)));
749 m.insert("ProprietaryParameterDynamics", |v| Ok(Box::new(serde_json::from_value::<super::ProprietaryParameterDynamics>(v)?)));
750 m.insert("ProtectedSwitch", |v| Ok(Box::new(serde_json::from_value::<super::ProtectedSwitch>(v)?)));
751 m.insert("Pss1", |v| Ok(Box::new(serde_json::from_value::<super::Pss1>(v)?)));
752 m.insert("Pss1A", |v| Ok(Box::new(serde_json::from_value::<super::Pss1A>(v)?)));
753 m.insert("Pss2B", |v| Ok(Box::new(serde_json::from_value::<super::Pss2B>(v)?)));
754 m.insert("Pss2ST", |v| Ok(Box::new(serde_json::from_value::<super::Pss2ST>(v)?)));
755 m.insert("Pss5", |v| Ok(Box::new(serde_json::from_value::<super::Pss5>(v)?)));
756 m.insert("PssELIN2", |v| Ok(Box::new(serde_json::from_value::<super::PssELIN2>(v)?)));
757 m.insert("PssIEEE1A", |v| Ok(Box::new(serde_json::from_value::<super::PssIEEE1A>(v)?)));
758 m.insert("PssIEEE2B", |v| Ok(Box::new(serde_json::from_value::<super::PssIEEE2B>(v)?)));
759 m.insert("PssIEEE3B", |v| Ok(Box::new(serde_json::from_value::<super::PssIEEE3B>(v)?)));
760 m.insert("PssIEEE4B", |v| Ok(Box::new(serde_json::from_value::<super::PssIEEE4B>(v)?)));
761 m.insert("PssPTIST1", |v| Ok(Box::new(serde_json::from_value::<super::PssPTIST1>(v)?)));
762 m.insert("PssPTIST3", |v| Ok(Box::new(serde_json::from_value::<super::PssPTIST3>(v)?)));
763 m.insert("PssRQB", |v| Ok(Box::new(serde_json::from_value::<super::PssRQB>(v)?)));
764 m.insert("PssSB4", |v| Ok(Box::new(serde_json::from_value::<super::PssSB4>(v)?)));
765 m.insert("PssSH", |v| Ok(Box::new(serde_json::from_value::<super::PssSH>(v)?)));
766 m.insert("PssSK", |v| Ok(Box::new(serde_json::from_value::<super::PssSK>(v)?)));
767 m.insert("PssSTAB2A", |v| Ok(Box::new(serde_json::from_value::<super::PssSTAB2A>(v)?)));
768 m.insert("PssWECC", |v| Ok(Box::new(serde_json::from_value::<super::PssWECC>(v)?)));
769 m.insert("Quality61850", |v| Ok(Box::new(serde_json::from_value::<super::Quality61850>(v)?)));
770 m.insert("RaiseLowerCommand", |v| Ok(Box::new(serde_json::from_value::<super::RaiseLowerCommand>(v)?)));
771 m.insert("RatioTapChanger", |v| Ok(Box::new(serde_json::from_value::<super::RatioTapChanger>(v)?)));
772 m.insert("RatioTapChangerTable", |v| Ok(Box::new(serde_json::from_value::<super::RatioTapChangerTable>(v)?)));
773 m.insert("RatioTapChangerTablePoint", |v| Ok(Box::new(serde_json::from_value::<super::RatioTapChangerTablePoint>(v)?)));
774 m.insert("ReactiveCapabilityCurve", |v| Ok(Box::new(serde_json::from_value::<super::ReactiveCapabilityCurve>(v)?)));
775 m.insert("RegularIntervalSchedule", |v| Ok(Box::new(serde_json::from_value::<super::RegularIntervalSchedule>(v)?)));
776 m.insert("RegularTimePoint", |v| Ok(Box::new(serde_json::from_value::<super::RegularTimePoint>(v)?)));
777 m.insert("RegulatingCondEq", |v| Ok(Box::new(serde_json::from_value::<super::RegulatingCondEq>(v)?)));
778 m.insert("RegulatingControl", |v| Ok(Box::new(serde_json::from_value::<super::RegulatingControl>(v)?)));
779 m.insert("RegulationSchedule", |v| Ok(Box::new(serde_json::from_value::<super::RegulationSchedule>(v)?)));
780 m.insert("RemoteInputSignal", |v| Ok(Box::new(serde_json::from_value::<super::RemoteInputSignal>(v)?)));
781 m.insert("ReportingGroup", |v| Ok(Box::new(serde_json::from_value::<super::ReportingGroup>(v)?)));
782 m.insert("RotatingMachine", |v| Ok(Box::new(serde_json::from_value::<super::RotatingMachine>(v)?)));
783 m.insert("RotatingMachineDynamics", |v| Ok(Box::new(serde_json::from_value::<super::RotatingMachineDynamics>(v)?)));
784 m.insert("SVCControlMode", |v| Ok(Box::new(serde_json::from_value::<super::SVCControlMode>(v)?)));
785 m.insert("SVCUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::SVCUserDefined>(v)?)));
786 m.insert("Season", |v| Ok(Box::new(serde_json::from_value::<super::Season>(v)?)));
787 m.insert("SeasonDayTypeSchedule", |v| Ok(Box::new(serde_json::from_value::<super::SeasonDayTypeSchedule>(v)?)));
788 m.insert("Sensor", |v| Ok(Box::new(serde_json::from_value::<super::Sensor>(v)?)));
789 m.insert("SeriesCompensator", |v| Ok(Box::new(serde_json::from_value::<super::SeriesCompensator>(v)?)));
790 m.insert("ServiceLocation", |v| Ok(Box::new(serde_json::from_value::<super::ServiceLocation>(v)?)));
791 m.insert("SetPoint", |v| Ok(Box::new(serde_json::from_value::<super::SetPoint>(v)?)));
792 m.insert("ShuntCompensator", |v| Ok(Box::new(serde_json::from_value::<super::ShuntCompensator>(v)?)));
793 m.insert("SolarGeneratingUnit", |v| Ok(Box::new(serde_json::from_value::<super::SolarGeneratingUnit>(v)?)));
794 m.insert("SolarPowerPlant", |v| Ok(Box::new(serde_json::from_value::<super::SolarPowerPlant>(v)?)));
795 m.insert("Statements", |v| Ok(Box::new(serde_json::from_value::<super::Statements>(v)?)));
796 m.insert("StaticVarCompensator", |v| Ok(Box::new(serde_json::from_value::<super::StaticVarCompensator>(v)?)));
797 m.insert("StaticVarCompensatorDynamics", |v| Ok(Box::new(serde_json::from_value::<super::StaticVarCompensatorDynamics>(v)?)));
798 m.insert("StationSupply", |v| Ok(Box::new(serde_json::from_value::<super::StationSupply>(v)?)));
799 m.insert("Status", |v| Ok(Box::new(serde_json::from_value::<super::Status>(v)?)));
800 m.insert("StreetAddress", |v| Ok(Box::new(serde_json::from_value::<super::StreetAddress>(v)?)));
801 m.insert("StreetDetail", |v| Ok(Box::new(serde_json::from_value::<super::StreetDetail>(v)?)));
802 m.insert("StringMeasurement", |v| Ok(Box::new(serde_json::from_value::<super::StringMeasurement>(v)?)));
803 m.insert("StringMeasurementValue", |v| Ok(Box::new(serde_json::from_value::<super::StringMeasurementValue>(v)?)));
804 m.insert("SubGeographicalRegion", |v| Ok(Box::new(serde_json::from_value::<super::SubGeographicalRegion>(v)?)));
805 m.insert("SubLoadArea", |v| Ok(Box::new(serde_json::from_value::<super::SubLoadArea>(v)?)));
806 m.insert("Substation", |v| Ok(Box::new(serde_json::from_value::<super::Substation>(v)?)));
807 m.insert("SurgeArrester", |v| Ok(Box::new(serde_json::from_value::<super::SurgeArrester>(v)?)));
808 m.insert("SvInjection", |v| Ok(Box::new(serde_json::from_value::<super::SvInjection>(v)?)));
809 m.insert("SvPowerFlow", |v| Ok(Box::new(serde_json::from_value::<super::SvPowerFlow>(v)?)));
810 m.insert("SvShuntCompensatorSections", |v| Ok(Box::new(serde_json::from_value::<super::SvShuntCompensatorSections>(v)?)));
811 m.insert("SvStatus", |v| Ok(Box::new(serde_json::from_value::<super::SvStatus>(v)?)));
812 m.insert("SvSwitch", |v| Ok(Box::new(serde_json::from_value::<super::SvSwitch>(v)?)));
813 m.insert("SvTapStep", |v| Ok(Box::new(serde_json::from_value::<super::SvTapStep>(v)?)));
814 m.insert("SvVoltage", |v| Ok(Box::new(serde_json::from_value::<super::SvVoltage>(v)?)));
815 m.insert("Switch", |v| Ok(Box::new(serde_json::from_value::<super::Switch>(v)?)));
816 m.insert("SwitchSchedule", |v| Ok(Box::new(serde_json::from_value::<super::SwitchSchedule>(v)?)));
817 m.insert("SynchronousMachine", |v| Ok(Box::new(serde_json::from_value::<super::SynchronousMachine>(v)?)));
818 m.insert("SynchronousMachineDetailed", |v| Ok(Box::new(serde_json::from_value::<super::SynchronousMachineDetailed>(v)?)));
819 m.insert("SynchronousMachineDynamics", |v| Ok(Box::new(serde_json::from_value::<super::SynchronousMachineDynamics>(v)?)));
820 m.insert("SynchronousMachineEquivalentCircuit", |v| Ok(Box::new(serde_json::from_value::<super::SynchronousMachineEquivalentCircuit>(v)?)));
821 m.insert("SynchronousMachineSimplified", |v| Ok(Box::new(serde_json::from_value::<super::SynchronousMachineSimplified>(v)?)));
822 m.insert("SynchronousMachineTimeConstantReactance", |v| Ok(Box::new(serde_json::from_value::<super::SynchronousMachineTimeConstantReactance>(v)?)));
823 m.insert("SynchronousMachineUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::SynchronousMachineUserDefined>(v)?)));
824 m.insert("TapChanger", |v| Ok(Box::new(serde_json::from_value::<super::TapChanger>(v)?)));
825 m.insert("TapChangerControl", |v| Ok(Box::new(serde_json::from_value::<super::TapChangerControl>(v)?)));
826 m.insert("TapChangerTablePoint", |v| Ok(Box::new(serde_json::from_value::<super::TapChangerTablePoint>(v)?)));
827 m.insert("TapSchedule", |v| Ok(Box::new(serde_json::from_value::<super::TapSchedule>(v)?)));
828 m.insert("Terminal", |v| Ok(Box::new(serde_json::from_value::<super::Terminal>(v)?)));
829 m.insert("TextDiagramObject", |v| Ok(Box::new(serde_json::from_value::<super::TextDiagramObject>(v)?)));
830 m.insert("ThermalGeneratingUnit", |v| Ok(Box::new(serde_json::from_value::<super::ThermalGeneratingUnit>(v)?)));
831 m.insert("TieFlow", |v| Ok(Box::new(serde_json::from_value::<super::TieFlow>(v)?)));
832 m.insert("TopologicalIsland", |v| Ok(Box::new(serde_json::from_value::<super::TopologicalIsland>(v)?)));
833 m.insert("TopologicalNode", |v| Ok(Box::new(serde_json::from_value::<super::TopologicalNode>(v)?)));
834 m.insert("TownDetail", |v| Ok(Box::new(serde_json::from_value::<super::TownDetail>(v)?)));
835 m.insert("TransformerEnd", |v| Ok(Box::new(serde_json::from_value::<super::TransformerEnd>(v)?)));
836 m.insert("TurbLCFB1", |v| Ok(Box::new(serde_json::from_value::<super::TurbLCFB1>(v)?)));
837 m.insert("TurbineGovernorDynamics", |v| Ok(Box::new(serde_json::from_value::<super::TurbineGovernorDynamics>(v)?)));
838 m.insert("TurbineGovernorUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::TurbineGovernorUserDefined>(v)?)));
839 m.insert("TurbineLoadControllerDynamics", |v| Ok(Box::new(serde_json::from_value::<super::TurbineLoadControllerDynamics>(v)?)));
840 m.insert("TurbineLoadControllerUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::TurbineLoadControllerUserDefined>(v)?)));
841 m.insert("URI", |v| Ok(Box::new(serde_json::from_value::<super::URI>(v)?)));
842 m.insert("UnderexcLim2Simplified", |v| Ok(Box::new(serde_json::from_value::<super::UnderexcLim2Simplified>(v)?)));
843 m.insert("UnderexcLimIEEE1", |v| Ok(Box::new(serde_json::from_value::<super::UnderexcLimIEEE1>(v)?)));
844 m.insert("UnderexcLimIEEE2", |v| Ok(Box::new(serde_json::from_value::<super::UnderexcLimIEEE2>(v)?)));
845 m.insert("UnderexcLimX1", |v| Ok(Box::new(serde_json::from_value::<super::UnderexcLimX1>(v)?)));
846 m.insert("UnderexcLimX2", |v| Ok(Box::new(serde_json::from_value::<super::UnderexcLimX2>(v)?)));
847 m.insert("UnderexcitationLimiterDynamics", |v| Ok(Box::new(serde_json::from_value::<super::UnderexcitationLimiterDynamics>(v)?)));
848 m.insert("UnderexcitationLimiterUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::UnderexcitationLimiterUserDefined>(v)?)));
849 m.insert("VAdjIEEE", |v| Ok(Box::new(serde_json::from_value::<super::VAdjIEEE>(v)?)));
850 m.insert("VCompIEEEType1", |v| Ok(Box::new(serde_json::from_value::<super::VCompIEEEType1>(v)?)));
851 m.insert("VCompIEEEType2", |v| Ok(Box::new(serde_json::from_value::<super::VCompIEEEType2>(v)?)));
852 m.insert("VSCDynamics", |v| Ok(Box::new(serde_json::from_value::<super::VSCDynamics>(v)?)));
853 m.insert("VSCUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::VSCUserDefined>(v)?)));
854 m.insert("ValueAliasSet", |v| Ok(Box::new(serde_json::from_value::<super::ValueAliasSet>(v)?)));
855 m.insert("ValueToAlias", |v| Ok(Box::new(serde_json::from_value::<super::ValueToAlias>(v)?)));
856 m.insert("VisibilityLayer", |v| Ok(Box::new(serde_json::from_value::<super::VisibilityLayer>(v)?)));
857 m.insert("VoltageAdjusterDynamics", |v| Ok(Box::new(serde_json::from_value::<super::VoltageAdjusterDynamics>(v)?)));
858 m.insert("VoltageAdjusterUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::VoltageAdjusterUserDefined>(v)?)));
859 m.insert("VoltageCompensatorDynamics", |v| Ok(Box::new(serde_json::from_value::<super::VoltageCompensatorDynamics>(v)?)));
860 m.insert("VoltageCompensatorUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::VoltageCompensatorUserDefined>(v)?)));
861 m.insert("VoltageLevel", |v| Ok(Box::new(serde_json::from_value::<super::VoltageLevel>(v)?)));
862 m.insert("VoltageLimit", |v| Ok(Box::new(serde_json::from_value::<super::VoltageLimit>(v)?)));
863 m.insert("VsCapabilityCurve", |v| Ok(Box::new(serde_json::from_value::<super::VsCapabilityCurve>(v)?)));
864 m.insert("VsConverter", |v| Ok(Box::new(serde_json::from_value::<super::VsConverter>(v)?)));
865 m.insert("WaveTrap", |v| Ok(Box::new(serde_json::from_value::<super::WaveTrap>(v)?)));
866 m.insert("WindAeroConstIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindAeroConstIEC>(v)?)));
867 m.insert("WindAeroOneDimIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindAeroOneDimIEC>(v)?)));
868 m.insert("WindAeroTwoDimIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindAeroTwoDimIEC>(v)?)));
869 m.insert("WindContCurrLimIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindContCurrLimIEC>(v)?)));
870 m.insert("WindContPType3IEC", |v| Ok(Box::new(serde_json::from_value::<super::WindContPType3IEC>(v)?)));
871 m.insert("WindContPType4aIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindContPType4aIEC>(v)?)));
872 m.insert("WindContPType4bIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindContPType4bIEC>(v)?)));
873 m.insert("WindContPitchAngleIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindContPitchAngleIEC>(v)?)));
874 m.insert("WindContQIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindContQIEC>(v)?)));
875 m.insert("WindContQLimIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindContQLimIEC>(v)?)));
876 m.insert("WindContQPQULimIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindContQPQULimIEC>(v)?)));
877 m.insert("WindContRotorRIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindContRotorRIEC>(v)?)));
878 m.insert("WindDynamicsLookupTable", |v| Ok(Box::new(serde_json::from_value::<super::WindDynamicsLookupTable>(v)?)));
879 m.insert("WindGenTurbineType1aIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindGenTurbineType1aIEC>(v)?)));
880 m.insert("WindGenTurbineType1bIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindGenTurbineType1bIEC>(v)?)));
881 m.insert("WindGenTurbineType2IEC", |v| Ok(Box::new(serde_json::from_value::<super::WindGenTurbineType2IEC>(v)?)));
882 m.insert("WindGenType3IEC", |v| Ok(Box::new(serde_json::from_value::<super::WindGenType3IEC>(v)?)));
883 m.insert("WindGenType3aIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindGenType3aIEC>(v)?)));
884 m.insert("WindGenType3bIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindGenType3bIEC>(v)?)));
885 m.insert("WindGenType4IEC", |v| Ok(Box::new(serde_json::from_value::<super::WindGenType4IEC>(v)?)));
886 m.insert("WindGeneratingUnit", |v| Ok(Box::new(serde_json::from_value::<super::WindGeneratingUnit>(v)?)));
887 m.insert("WindMechIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindMechIEC>(v)?)));
888 m.insert("WindPitchContPowerIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindPitchContPowerIEC>(v)?)));
889 m.insert("WindPlantDynamics", |v| Ok(Box::new(serde_json::from_value::<super::WindPlantDynamics>(v)?)));
890 m.insert("WindPlantFreqPcontrolIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindPlantFreqPcontrolIEC>(v)?)));
891 m.insert("WindPlantIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindPlantIEC>(v)?)));
892 m.insert("WindPlantReactiveControlIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindPlantReactiveControlIEC>(v)?)));
893 m.insert("WindPlantUserDefined", |v| Ok(Box::new(serde_json::from_value::<super::WindPlantUserDefined>(v)?)));
894 m.insert("WindPowerPlant", |v| Ok(Box::new(serde_json::from_value::<super::WindPowerPlant>(v)?)));
895 m.insert("WindProtectionIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindProtectionIEC>(v)?)));
896 m.insert("WindRefFrameRotIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindRefFrameRotIEC>(v)?)));
897 m.insert("WindTurbineType1or2Dynamics", |v| Ok(Box::new(serde_json::from_value::<super::WindTurbineType1or2Dynamics>(v)?)));
898 m.insert("WindTurbineType1or2IEC", |v| Ok(Box::new(serde_json::from_value::<super::WindTurbineType1or2IEC>(v)?)));
899 m.insert("WindTurbineType3IEC", |v| Ok(Box::new(serde_json::from_value::<super::WindTurbineType3IEC>(v)?)));
900 m.insert("WindTurbineType3or4Dynamics", |v| Ok(Box::new(serde_json::from_value::<super::WindTurbineType3or4Dynamics>(v)?)));
901 m.insert("WindTurbineType3or4IEC", |v| Ok(Box::new(serde_json::from_value::<super::WindTurbineType3or4IEC>(v)?)));
902 m.insert("WindTurbineType4IEC", |v| Ok(Box::new(serde_json::from_value::<super::WindTurbineType4IEC>(v)?)));
903 m.insert("WindTurbineType4aIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindTurbineType4aIEC>(v)?)));
904 m.insert("WindTurbineType4bIEC", |v| Ok(Box::new(serde_json::from_value::<super::WindTurbineType4bIEC>(v)?)));
905 m.insert("WindType1or2UserDefined", |v| Ok(Box::new(serde_json::from_value::<super::WindType1or2UserDefined>(v)?)));
906 m.insert("WindType3or4UserDefined", |v| Ok(Box::new(serde_json::from_value::<super::WindType3or4UserDefined>(v)?)));
907 m.insert("WorkLocation", |v| Ok(Box::new(serde_json::from_value::<super::WorkLocation>(v)?)));
908 m
909}