#include "helpers/basic_inner_types.idl"

struct InnerStructureHelperChild : InnerStructureHelper
{
    long long var_child_longlong;
    unsigned long long var_child_ulonglong;
};

struct InnerStructureHelperChildChild : InnerStructureHelperChild
{
    long long var_child_childlonglong2;
    unsigned long long var_childchild_ulonglong2;
};

struct InnerStructureHelperEmptyChild : InnerStructureHelper
{
};

struct InnerStructureHelperEmptyChildChild : InnerStructureHelperEmptyChild
{
    char var_char;
};

struct InnerEmptyStructureHelperChild : InnerEmptyStructureHelper
{
    long long var_child_longlong;
    unsigned long long var_child_ulonglong;
};

struct StructAliasInheritanceStruct : inner_structure_helper_alias
{
    short new_member;
};

struct StructuresInheritanceStruct
{
    InnerStructureHelperChild var_InnerStructureHelperChild;
    InnerStructureHelperChildChild var_InnerStructureHelperChildChild;
    InnerStructureHelperEmptyChild var_InnerStructureHelperEmptyChild;
    InnerStructureHelperEmptyChildChild var_InnerStructureHelperEmptyChildChild;
    InnerEmptyStructureHelperChild var_InnerEmptyStructureHelperChild;
    StructAliasInheritanceStruct var_StructAliasInheritanceStruct;
};

bitset InnerBitsetHelperChild : InnerBitsetHelper
{
    bitfield<17> child_w;
};

bitset InnerBitsetHelperChildChild : InnerBitsetHelperChild
{
    bitfield<14> childchild_z;
};

bitset BitsetAliasInheritanceBitset : inner_bitset_helper_alias
{
    bitfield<10> new_bitfield;
};

struct BitsetsChildInheritanceStruct
{
    InnerBitsetHelperChild var_InnerBitsetHelperChild;
    InnerBitsetHelperChildChild var_InnerBitsetHelperChildChild;
    BitsetAliasInheritanceBitset var_BitsetAliasInheritanceBitset;
};
