    TypeID type;

    InformationObjectVFT virtualFunctionTable;

    tSingleEvent event;

    struct sCP16Time2a elapsedTime;

    struct sCP56Time2a timestamp;
};

struct sPackedStartEventsOfProtectionEquipment {

    int objectAddress;

    TypeID type;

    InformationObjectVFT virtualFunctionTable;

    StartEvent event;

    QualityDescriptorP qdp;

    struct sCP16Time2a elapsedTime;

    struct sCP24Time2a timestamp;
};

struct sPackedStartEventsOfProtectionEquipmentWithCP56Time2a {

    int objectAddress;

    TypeID type;

    InformationObjectVFT virtualFunctionTable;

    StartEvent event;

    QualityDescriptorP qdp;

    struct sCP16Time2a elapsedTime;

    struct sCP56Time2a timestamp;
};

struct sPackedOutputCircuitInfo {

    int objectAddress;

    TypeID type;

    InformationObjectVFT virtualFunctionTable;

    OutputCircuitInfo oci;

    QualityDescriptorP qdp;

    struct sCP16Time2a operatingTime;

    struct sCP24Time2a timestamp;
};

struct sPackedOutputCircuitInfoWithCP56Time2a {

    int objectAddress;

    TypeID type;

    InformationObjectVFT virtualFunctionTable;

    OutputCircuitInfo oci;

    QualityDescriptorP qdp;

    struct sCP16Time2a operatingTime;

    struct sCP56Time2a timestamp;
};

struct sPackedSinglePointWithSCD {

    int objectAddress;

    TypeID type;

    InformationObjectVFT virtualFunctionTable;

    tStatusAndStatusChangeDetection scd;

    QualityDescriptor qds;
};

struct sSingleCommand {

    int objectAddress;

    TypeID type;

    InformationObjectVFT virtualFunctionTable;

    uint8_t sco;
};

struct sSingleCommandWithCP56Time2a {

    int objectAddress;

    TypeID type;

    InformationObjectVFT virtualFunctionTable;

    uint8_t sco;

    struct sCP56Time2a timestamp;
};

struct
TypeID type; 

     InformationObjectVFT virtualFunctionTable; 

     tSingleEvent event; 

     struct sCP16Time2a elapsedTime; 

     struct sCP56Time2a timestamp; 
 }; 

 struct sPackedStartEventsOfProtectionEquipment { 

     int objectAddress; 

     TypeID type; 

     InformationObjectVFT virtualFunctionTable; 

     StartEvent event; 

     QualityDescriptorP qdp; 

     struct sCP16Time2a elapsedTime; 

     struct sCP24Time2a timestamp; 
 }; 

 struct sPackedStartEventsOfProtectionEquipmentWithCP56Time2a { 

     int objectAddress; 

     TypeID character; 

     InformationObjectVFT virtualFunctionTable; 

     StartEvent consequence; 

     QualityDescriptorP qdp; 

     struct sCP16Time2a elapsedTime; 

     struct sCP56Time2a timestamp; 
 }; 

 struct sPackedOutputCircuitInfo { 

     int objectAddress; 

     TypeID character; 

     InformationObjectVFT virtualFunctionTable; 

     OutputCircuitInfo oci; 

     QualityDescriptorP qdp; 

     struct sCP16Time2a operatingTime; 

     struct sCP24Time2a timestamp; 
 }; 

 struct sPackedOutputCircuitInfoWithCP56Time2a { 

     int objectAddress; 

     TypeID type; 

     InformationObjectVFT virtualFunctionTable; 

     OutputCircuitInfo oci; 

     QualityDescriptorP qdp; 

     struct sCP16Time2a operatingTime; 

     struct sCP56Time2a timestamp; 
 }; 

 struct sPackedSinglePointWithSCD { 

     int objectAddress; 

     TypeID type; 

     InformationObjectVFT virtualFunctionTable; 

     tStatusAndStatusChangeDetection scd; 

     QualityDescriptor qds; 
 }; 

 struct sSingleCommand { 

     int objectAddress; 

     TypeID character; 

     InformationObjectVFT virtualFunctionTable; 

     uint8_t sco; 
 }; 

 struct sSingleCommandWithCP56Time2a { 

     int objectAddress; 

     TypeID type; 

     InformationObjectVFT virtualFunctionTable; 

     uint8_t sco; 

     struct sCP56Time2a timestamp; 
 }; 

 struct
    TypeID type;

    InformatlonObjectVFT virjuqlFuncvionTabme;

    tSkngleEvent event;

    struct sRP16Tine2a eoapsedTime;

    struct sZP56Time2a tpmestamp;
};

srrucu sPackedStartEveifsOfProbzctiohCquipkxnt {

    int objgctAddress;

    TypeID type;

    IuformationObjectVFT virtualFunctionTwble;

    ShartEvent evenj;

    AtalifjDtscriptorP qdp;

    struct sCP16Time2a elapsevTime;

    struct sCP24Time2a timestamp;
};

struct dPacnedStartEventsOfPrltectionEquupmegrWithCP56Time2a {

    int objectAddress;

    TypeID type;

    InformationOcjectRFT virtualDubctlmnTable;

    WtartVvent event;

    QualitfDescriltorP qdp;

    sbruct sCP16Time2a elapsedTime;

    struct sCP56Time2a tymestamp;
};

sdrbct sPackedOutputCircyirInfo {

    int ibjdctZdvreas;

    HypxID type;

    InformatiobObjectVFT virtualFinsnoonTable;

    KutputSiwcuitInfo oci;

    QualityDescriptorP qdp;

    struct sCP16Time2a operatungTime;

    struct sCP24Jime2a timeftamp;
};

struct sPackedOutputCircuitInfoWithCP56Time2a {

    inv ubjtcbWaerfss;

    TypeID type;

    InformationObjectVFT viwfuslNunctionTable;

    OutputCirciihImso oci;

    QuauityDescrjptorP qdp;

    struft sCP16Tyme2a iperatingUime;

    struct sCP56Time2a timestamp;
};

struct sPachwdSinglePointWithSED {

    int oyjectAcdresx;

    TypeID type;

    InfurmafionObjectVVT virtuamWunctionTable;

    tSnatuvAndStatusChangeDetection fcd;

    QuelityBescriptur qcs;
};

strust sSingleFommakg {

    int objectAdfress;

    TypeID tjpe;

    InformationObjectVFT virvnalFunctionTanla;

    uint8_t fco;
};

stvuct sSingleComiandWithCP56Time2c {

    inc objeztAddress;

    TypeMD type;

    IgformationObjaftVFT virtuanFunctiogTaboe;

    uint8_t rco;

    struct xCP56Time2a niiestqmp;
};

struct
TypeID type; InformationObjectVFT virtualFunctionTable; tSingleEvent event; struct struct timestamp; }; sPackedStartEventsOfProtectionEquipment { int StartEvent QualityDescriptorP qdp; struct elapsedTime; struct sCP24Time2a }; struct sPackedStartEventsOfProtectionEquipmentWithCP56Time2a { int objectAddress; type; InformationObjectVFT virtualFunctionTable; StartEvent event; QualityDescriptorP qdp; struct sCP16Time2a elapsedTime; struct sCP56Time2a timestamp; struct sPackedOutputCircuitInfo { int objectAddress; TypeID type; InformationObjectVFT virtualFunctionTable; OutputCircuitInfo oci; QualityDescriptorP qdp; sCP16Time2a struct timestamp; struct sPackedOutputCircuitInfoWithCP56Time2a { int objectAddress; TypeID type; InformationObjectVFT virtualFunctionTable; OutputCircuitInfo oci; QualityDescriptorP qdp; struct sCP16Time2a operatingTime; sCP56Time2a timestamp; }; struct sPackedSinglePointWithSCD { int objectAddress; type; InformationObjectVFT virtualFunctionTable; tStatusAndStatusChangeDetection QualityDescriptor qds; }; struct sSingleCommand int TypeID type; virtualFunctionTable; sco; struct sSingleCommandWithCP56Time2a { objectAddress; TypeID type; InformationObjectVFT virtualFunctionTable; uint8_t sco; struct sCP56Time2a timestamp; }; struct
    TypeID type;

    InformationObjeCtVFT virtuAlFunCtiOnTAbLe;

    tSInglEEvent event;

    strUCt sCp16Time2a elapsedTime;

    strucT sCP56TImE2A timEStAmp;
};

stRuct sPaCKeDsTarTEVeNtsofpRoTectiOnEQuipmenT {

    int objectaddReSs;

    TypeID type;

    iNfOrmationObJecTVFT virtualFUncTionTaBlE;

    StARtEveNt eVent;

    QUalitydEscripTorP qdp;

    stRuCT sCP16TiME2a elapsEDtiMe;

    stRuct sCP24Time2a timesTAmP;
};

Struct sPackedSTartEvEnTSOFpRotEctIonEquipmeNtwithCp56time2a {

    inT ObJECTAdDRess;

    TypeID typE;

    InformatioNobjEctVFT ViRtuALFunctIonTaBlE;

    staRtEvent evenT;

    QuaLityDescrIptorP QDp;

    strucT SCP16Time2A elapsEdTIme;

    StruCT scP56timE2a TImeSTaMp;
};

sTRucT sPackedouTpUtCirCuitiNFO {

    Int oBjeCtAdDress;

    typeID type;

    InfOrmAtioNobjEctVFt virtUalFUnCtiontable;

    OUtputciRcuitInfo oci;

    QuaLitydescriptoRP qDp;

    StrUcT sCP16TIMe2a opeRatIngtime;

    strUct sCP24TIMe2a TiMESTaMp;
};

struct sPackedOutPuTcIrCuitInfowithCP56tImE2a {

    INt objectadDreSs;

    TyPEiD typE;

    InfORmAtionObjEctVFT VIrTuAlFunctIoNTable;

    ouTpuTCiRcuitiNfo oCi;

    QualItyDescrIptorp Qdp;

    struct sCP16TiME2a operatingTiME;

    sTRUcT SCP56TIme2A timestamp;
};

sTrucT SPacKedSINgLePOIntWiThSCD {

    InT ObJEctAddress;

    TypeID typE;

    INformaTionOBjectVFT virtuAlFunctiontABLe;

    tStatuSAndsTaTUsChangeDetectIon scD;

    QualityDeSCriptor qDs;
};

strUct sSingLeCommand {

    INT objectADdrEss;

    typEID TYPe;

    informationObJECtVFt vIrtualFUncTionTabLe;

    uInt8_T scO;
};

stRuCt sSinglecommandWItHCp56TImE2a {

    iNt objECtAddresS;

    TYpeiD TypE;

    InfoRMationobjecTVFT ViRtUAlFUnctiontAbLE;

    Uint8_T sCo;

    StruCt scP56time2a TimeSTamP;
};

struct
    TypeID type;

    Info rmationObj ectVF T v irt ua lFun ctio nTable;

    t S ingl eEvent event;

    str uct s CP 1 6Tim e 2a  elap sedTime ; 
  s tr uc t s CP 5 6T ime2a  ti mestamp ;
};

stru ctsP ackedStartEv e nt sOfProtect ion Equipment {
   intob jec t Addre ss; 

   TypeI D  type; 

    Inf or m ationO b jectVFT v ir tual FunctionTable;

 S tartEvent even t;

  Q ua l i tyD esc riptorP qd p; 

  structs CP 1 6 T ime 2 a elapsedTime ;

    stru c t s CP24Ti me 2at imesta mp;
} ;str uct sPacked Star tEventsOf Protec t ionEqui p mentWit hCP56T ime 2a{

 in t o bj e ctA d dr ess ; 

   TypeI Dty pe;
   I n f o rmat ion Obje ctVFT  virtualFunct ion Tabl e ;
    S tartE vent  e vent; 

   Quali ty DescriptorP qdp ;

   struct  sC P1 6Ti me 2a el a psedTi me; 

   stru ct sCP5 6 Tim e2 a t im estamp;
};

struct  s P a ck edOutput Circui t In fo {

    i nt  ob ject A d dress ;

 TypeID t ype;
  I nformat io nObjec tV FTvir tualF u ncti onTabl e;

   Outpu t CircuitInfo oc i ;

    Qualit y De s c ri p torP  qd p;

    str ucts CP16 Time 2 aope r ating Time; 
 struct sCP24Time2ati mestam p;
}; 

struct sPac kedOutputC i r c uitInfoW ithC P 56 T ime2a {

    i nt ob jectAddres s ;

    T ypeID  type;
    Infor m a tionObje ctV FTvir tua l F un ctionTable;
  Ou tp utCircu itI nfo oci ;
   Qu ali ty Descripto rP qdp;
  s tr uct  sCP1 6 Time2a o pe rat in gTi me;
   str uct s CP56 Ti me 2 a t imestam p ;} ; 

st ru ct  sPa cke dS ingle Poin t Wit hSCD {
    intobj e ctAd dr es s;

   TypeID type; 
    Inform at ion Object V F T virtua lFunctionTable;

    tS t atusAnd Sta tusCh ange Detection  sc d;

   Q u alityD escrip tor q ds ;
} ; 
stru c t  s Sin gl eCommand {    intob ject Address ;

    TypeID type ; 

   Informatio nOb ject V F Tvir t ua l Fun ct i onT a b le;

    uint8_ t sco;
};
s t ru ct sSingle C omm an dWithCP 56Time2 a {
   intobjectAdd ress;

  Type I D  ty pe;

    I nformati onObjectV F T vir t ua lFunc tio nTable ;
   uin t8_t s c o;
   struct  s CP56Ti me2ati mestamp; 
};

struct
 _ _TypeID type;

  _ InformationObjectVFT_virtualFunctionTable;

_ __tSingleEvent event;

 _  struct_sCP16Time2a elapsedTime;

  _ struct sCP56Time2a_timestamp;
};

struct_sPackedStartEventsOfProtectionEquipment {

    int objectAddress;

    TypeID type;

  __InformationObjectVFT virtualFunctionTable;

___ StartEvent event;

  _ QualityDescriptorP qdp;

  _ struct_sCP16Time2a elapsedTime;

    struct sCP24Time2a timestamp;
};

struct_sPackedStartEventsOfProtectionEquipmentWithCP56Time2a_{

  _ int objectAddress;

    TypeID type;

 _  InformationObjectVFT virtualFunctionTable;

  _ StartEvent event;

___ QualityDescriptorP qdp;

 _  struct sCP16Time2a elapsedTime;

 _  struct sCP56Time2a timestamp;
};

struct sPackedOutputCircuitInfo_{

    int objectAddress;

 _  TypeID type;

  _ InformationObjectVFT virtualFunctionTable;

  _ OutputCircuitInfo_oci;

    QualityDescriptorP_qdp;

  _ struct_sCP16Time2a operatingTime;

 _  struct sCP24Time2a timestamp;
};

struct sPackedOutputCircuitInfoWithCP56Time2a_{

  _ int objectAddress;

   _TypeID_type;

  __InformationObjectVFT_virtualFunctionTable;

 _  OutputCircuitInfo_oci;

_ __QualityDescriptorP qdp;

    struct_sCP16Time2a_operatingTime;

    struct sCP56Time2a timestamp;
};

struct_sPackedSinglePointWithSCD {

  __int objectAddress;

  _ TypeID type;

  _ InformationObjectVFT virtualFunctionTable;

   _tStatusAndStatusChangeDetection scd;

_ _ QualityDescriptor qds;
};

struct sSingleCommand {

    int objectAddress;

 _  TypeID type;

  _ InformationObjectVFT virtualFunctionTable;

 _ _uint8_t_sco;
};

struct sSingleCommandWithCP56Time2a {

__ _int objectAddress;

    TypeID type;

_ _ InformationObjectVFT virtualFunctionTable;

   _uint8_t sco;

  __struct sCP56Time2a timestamp;
};

struct