// Auto-generated by automapper-generator. Do not edit.

#![allow(unused_imports)]

use super::entities::*;
use serde::{Deserialize, Serialize};

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44001MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44001TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub freitext: Option<Freitext>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44001Interchange =
    crate::model::Interchange<Pid44001MessageStammdaten, Pid44001TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44002MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44002TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub freitext: Option<Freitext>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44002Interchange =
    crate::model::Interchange<Pid44002MessageStammdaten, Pid44002TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44003MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44003TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub freitext: Option<Freitext>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44003Interchange =
    crate::model::Interchange<Pid44003MessageStammdaten, Pid44003TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44004MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44004TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub freitext: Option<Freitext>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44004Interchange =
    crate::model::Interchange<Pid44004MessageStammdaten, Pid44004TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44005MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44005TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44005Interchange =
    crate::model::Interchange<Pid44005MessageStammdaten, Pid44005TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44006MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44006TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub freitext: Option<Freitext>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44006Interchange =
    crate::model::Interchange<Pid44006MessageStammdaten, Pid44006TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44007MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44007TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub freitext: Option<Freitext>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44007Interchange =
    crate::model::Interchange<Pid44007MessageStammdaten, Pid44007TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44008MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44008TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44008Interchange =
    crate::model::Interchange<Pid44008MessageStammdaten, Pid44008TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44009MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44009TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub freitext: Option<Freitext>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44009Interchange =
    crate::model::Interchange<Pid44009MessageStammdaten, Pid44009TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44010MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44010TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44010Interchange =
    crate::model::Interchange<Pid44010MessageStammdaten, Pid44010TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44011MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44011TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44011Interchange =
    crate::model::Interchange<Pid44011MessageStammdaten, Pid44011TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44012MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44012TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44012Interchange =
    crate::model::Interchange<Pid44012MessageStammdaten, Pid44012TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44013MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44013TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub freitext: Option<Freitext>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44013Interchange =
    crate::model::Interchange<Pid44013MessageStammdaten, Pid44013TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44014MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44014TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub freitext: Option<Freitext>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44014Interchange =
    crate::model::Interchange<Pid44014MessageStammdaten, Pid44014TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44015MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44015TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub freitext: Option<Freitext>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44015Interchange =
    crate::model::Interchange<Pid44015MessageStammdaten, Pid44015TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44016MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44016TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub freitext: Option<Freitext>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44016Interchange =
    crate::model::Interchange<Pid44016MessageStammdaten, Pid44016TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44017MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44017TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44017Interchange =
    crate::model::Interchange<Pid44017MessageStammdaten, Pid44017TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44018MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44018TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub freitext: Option<Freitext>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44018Interchange =
    crate::model::Interchange<Pid44018MessageStammdaten, Pid44018TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44019MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44019TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44019Interchange =
    crate::model::Interchange<Pid44019MessageStammdaten, Pid44019TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44020MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44020TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub freitext: Option<Freitext>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44020Interchange =
    crate::model::Interchange<Pid44020MessageStammdaten, Pid44020TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44021MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44021TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44021Interchange =
    crate::model::Interchange<Pid44021MessageStammdaten, Pid44021TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44022MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44022TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub freitext: Option<Freitext>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44022Interchange =
    crate::model::Interchange<Pid44022MessageStammdaten, Pid44022TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44023MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44023TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44023Interchange =
    crate::model::Interchange<Pid44023MessageStammdaten, Pid44023TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44024MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44024TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub freitext: Option<Freitext>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44024Interchange =
    crate::model::Interchange<Pid44024MessageStammdaten, Pid44024TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44035MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44035TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub freitext: Option<Freitext>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44035Interchange =
    crate::model::Interchange<Pid44035MessageStammdaten, Pid44035TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44036MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44036TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44036Interchange =
    crate::model::Interchange<Pid44036MessageStammdaten, Pid44036TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44037MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44037TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44037Interchange =
    crate::model::Interchange<Pid44037MessageStammdaten, Pid44037TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44038MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44038TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44038Interchange =
    crate::model::Interchange<Pid44038MessageStammdaten, Pid44038TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44039MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44039TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44039Interchange =
    crate::model::Interchange<Pid44039MessageStammdaten, Pid44039TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44040MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44040TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44040Interchange =
    crate::model::Interchange<Pid44040MessageStammdaten, Pid44040TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44041MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44041TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44041Interchange =
    crate::model::Interchange<Pid44041MessageStammdaten, Pid44041TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44042MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44042TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44042Interchange =
    crate::model::Interchange<Pid44042MessageStammdaten, Pid44042TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44043MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44043TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44043Interchange =
    crate::model::Interchange<Pid44043MessageStammdaten, Pid44043TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44044MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44044TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44044Interchange =
    crate::model::Interchange<Pid44044MessageStammdaten, Pid44044TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44051MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44051TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44051Interchange =
    crate::model::Interchange<Pid44051MessageStammdaten, Pid44051TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44052MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44052TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44052Interchange =
    crate::model::Interchange<Pid44052MessageStammdaten, Pid44052TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44053MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44053TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44053Interchange =
    crate::model::Interchange<Pid44053MessageStammdaten, Pid44053TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44060MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44060TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44060Interchange =
    crate::model::Interchange<Pid44060MessageStammdaten, Pid44060TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44096MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44096TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44096Interchange =
    crate::model::Interchange<Pid44096MessageStammdaten, Pid44096TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44097MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44097TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44097Interchange =
    crate::model::Interchange<Pid44097MessageStammdaten, Pid44097TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44101MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44101TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44101Interchange =
    crate::model::Interchange<Pid44101MessageStammdaten, Pid44101TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44102MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44102TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44102Interchange =
    crate::model::Interchange<Pid44102MessageStammdaten, Pid44102TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44103MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44103TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44103Interchange =
    crate::model::Interchange<Pid44103MessageStammdaten, Pid44103TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44104MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44104TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44104Interchange =
    crate::model::Interchange<Pid44104MessageStammdaten, Pid44104TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44105MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44105TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44105Interchange =
    crate::model::Interchange<Pid44105MessageStammdaten, Pid44105TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44109MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44109TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44109Interchange =
    crate::model::Interchange<Pid44109MessageStammdaten, Pid44109TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44110MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44110TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44110Interchange =
    crate::model::Interchange<Pid44110MessageStammdaten, Pid44110TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44111MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44111TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44111Interchange =
    crate::model::Interchange<Pid44111MessageStammdaten, Pid44111TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44112MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44112TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44112Interchange =
    crate::model::Interchange<Pid44112MessageStammdaten, Pid44112TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44113MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44113TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44113Interchange =
    crate::model::Interchange<Pid44113MessageStammdaten, Pid44113TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44115MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44115TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44115Interchange =
    crate::model::Interchange<Pid44115MessageStammdaten, Pid44115TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44116MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44116TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44116Interchange =
    crate::model::Interchange<Pid44116MessageStammdaten, Pid44116TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44117MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44117TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44117Interchange =
    crate::model::Interchange<Pid44117MessageStammdaten, Pid44117TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44119MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44119TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44119Interchange =
    crate::model::Interchange<Pid44119MessageStammdaten, Pid44119TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44120MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44120TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44120Interchange =
    crate::model::Interchange<Pid44120MessageStammdaten, Pid44120TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44121MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44121TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44121Interchange =
    crate::model::Interchange<Pid44121MessageStammdaten, Pid44121TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44123MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44123TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44123Interchange =
    crate::model::Interchange<Pid44123MessageStammdaten, Pid44123TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44124MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44124TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44124Interchange =
    crate::model::Interchange<Pid44124MessageStammdaten, Pid44124TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44129MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44129TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44129Interchange =
    crate::model::Interchange<Pid44129MessageStammdaten, Pid44129TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44130MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44130TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44130Interchange =
    crate::model::Interchange<Pid44130MessageStammdaten, Pid44130TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44132MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44132TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44132Interchange =
    crate::model::Interchange<Pid44132MessageStammdaten, Pid44132TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44137MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44137TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44137Interchange =
    crate::model::Interchange<Pid44137MessageStammdaten, Pid44137TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44138MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44138TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44138Interchange =
    crate::model::Interchange<Pid44138MessageStammdaten, Pid44138TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44139MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44139TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44139Interchange =
    crate::model::Interchange<Pid44139MessageStammdaten, Pid44139TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44140MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44140TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44140Interchange =
    crate::model::Interchange<Pid44140MessageStammdaten, Pid44140TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44142MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44142TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44142Interchange =
    crate::model::Interchange<Pid44142MessageStammdaten, Pid44142TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44143MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44143TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44143Interchange =
    crate::model::Interchange<Pid44143MessageStammdaten, Pid44143TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44145MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44145TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44145Interchange =
    crate::model::Interchange<Pid44145MessageStammdaten, Pid44145TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44146MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44146TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44146Interchange =
    crate::model::Interchange<Pid44146MessageStammdaten, Pid44146TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44147MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44147TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44147Interchange =
    crate::model::Interchange<Pid44147MessageStammdaten, Pid44147TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44148MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44148TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44148Interchange =
    crate::model::Interchange<Pid44148MessageStammdaten, Pid44148TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44149MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44149TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44149Interchange =
    crate::model::Interchange<Pid44149MessageStammdaten, Pid44149TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44150MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44150TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44150Interchange =
    crate::model::Interchange<Pid44150MessageStammdaten, Pid44150TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44151MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44151TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44151Interchange =
    crate::model::Interchange<Pid44151MessageStammdaten, Pid44151TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44152MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44152TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44152Interchange =
    crate::model::Interchange<Pid44152MessageStammdaten, Pid44152TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44156MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44156TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44156Interchange =
    crate::model::Interchange<Pid44156MessageStammdaten, Pid44156TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44157MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44157TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44157Interchange =
    crate::model::Interchange<Pid44157MessageStammdaten, Pid44157TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44159MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44159TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44159Interchange =
    crate::model::Interchange<Pid44159MessageStammdaten, Pid44159TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44160MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44160TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44160Interchange =
    crate::model::Interchange<Pid44160MessageStammdaten, Pid44160TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44161MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44161TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44161Interchange =
    crate::model::Interchange<Pid44161MessageStammdaten, Pid44161TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44162MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44162TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44162Interchange =
    crate::model::Interchange<Pid44162MessageStammdaten, Pid44162TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44163MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44163TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44163Interchange =
    crate::model::Interchange<Pid44163MessageStammdaten, Pid44163TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44164MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44164TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44164Interchange =
    crate::model::Interchange<Pid44164MessageStammdaten, Pid44164TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44165MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44165TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44165Interchange =
    crate::model::Interchange<Pid44165MessageStammdaten, Pid44165TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44166MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44166TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44166Interchange =
    crate::model::Interchange<Pid44166MessageStammdaten, Pid44166TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44167MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44167TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44167Interchange =
    crate::model::Interchange<Pid44167MessageStammdaten, Pid44167TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44168MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44168TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44168Interchange =
    crate::model::Interchange<Pid44168MessageStammdaten, Pid44168TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44169MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44169TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44169Interchange =
    crate::model::Interchange<Pid44169MessageStammdaten, Pid44169TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44170MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44170TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44170Interchange =
    crate::model::Interchange<Pid44170MessageStammdaten, Pid44170TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44172MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44172TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44172Interchange =
    crate::model::Interchange<Pid44172MessageStammdaten, Pid44172TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44175MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44175TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44175Interchange =
    crate::model::Interchange<Pid44175MessageStammdaten, Pid44175TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44176MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44176TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44176Interchange =
    crate::model::Interchange<Pid44176MessageStammdaten, Pid44176TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44180MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44180TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44180Interchange =
    crate::model::Interchange<Pid44180MessageStammdaten, Pid44180TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44181MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44181TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44181Interchange =
    crate::model::Interchange<Pid44181MessageStammdaten, Pid44181TransaktionStammdaten>;

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44182MessageStammdaten {
    pub kontakt: Option<Vec<Kontakt>>,
    pub marktteilnehmer: Option<Vec<MarktteilnehmerWrapped>>,
    pub nachricht: Option<Nachricht>,
}

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Pid44182TransaktionStammdaten {
    pub deklarationsliste_daten: Option<DeklarationslisteDaten>,
    pub gemeinde_daten: Option<GemeindeDaten>,
    pub geschaeftspartner: Option<Vec<GeschaeftspartnerWrapped>>,
    pub kommunikationseinrichtung_daten: Option<KommunikationseinrichtungDaten>,
    pub konzession_daten: Option<KonzessionDaten>,
    pub lastprofil_daten: Option<LastprofilDaten>,
    pub marktlokation: Option<MarktlokationWrapped>,
    pub mengenumwerter_daten: Option<MengenumwerterDaten>,
    pub messdatenregistriergeraet_daten: Option<MessdatenregistriergeraetDaten>,
    pub messlokation: Option<MesslokationWrapped>,
    pub messprodukt_daten: Option<MessproduktDatenWrapped>,
    pub obis_daten_marktlokation: Option<ObisDatenMarktlokationWrapped>,
    pub obis_daten_zaehler: Option<ObisDatenZaehlerWrapped>,
    pub prozessdaten: Option<Prozessdaten>,
    pub smartmeter_gateway_daten: Option<SmartmeterGatewayDatenWrapped>,
    pub zaehler: Option<ZaehlerWrapped>,
    pub zuordnung: Option<Zuordnung>,
}

pub type Pid44182Interchange =
    crate::model::Interchange<Pid44182MessageStammdaten, Pid44182TransaktionStammdaten>;
