// WARNING: This file is machine generated by fidlgen.

// fidl_experiment = output_index_json

#include <lib/fidl/internal.h>

static const struct FidlCodedHandle Handlehandle2147483648notnullableTable;
static const struct FidlCodedHandle Handlebti2147483648notnullableTable;
static const struct FidlCodedHandle Handlechannel2147483648notnullableTable;
static const struct FidlCodedHandle Handleclock2147483648notnullableTable;
static const struct FidlCodedHandle Handledebuglog2147483648notnullableTable;
static const struct FidlCodedHandle Handleevent2147483648notnullableTable;
static const struct FidlCodedHandle Handleeventpair2147483648notnullableTable;
static const struct FidlCodedHandle Handleexception2147483648notnullableTable;
static const struct FidlCodedHandle Handlefifo2147483648notnullableTable;
static const struct FidlCodedHandle Handleguest2147483648notnullableTable;
static const struct FidlCodedHandle Handleinterrupt2147483648notnullableTable;
static const struct FidlCodedHandle Handleiommu2147483648notnullableTable;
static const struct FidlCodedHandle Handlejob2147483648notnullableTable;
static const struct FidlCodedHandle Handlemsi2147483648notnullableTable;
static const struct FidlCodedHandle Handlepager2147483648notnullableTable;
static const struct FidlCodedHandle Handlepmt2147483648notnullableTable;
static const struct FidlCodedHandle Handleport2147483648notnullableTable;
static const struct FidlCodedHandle Handleprocess2147483648notnullableTable;
static const struct FidlCodedHandle Handleprofile2147483648notnullableTable;
static const struct FidlCodedHandle Handleresource2147483648notnullableTable;
static const struct FidlCodedHandle Handlesocket2147483648notnullableTable;
static const struct FidlCodedHandle Handlestream2147483648notnullableTable;
static const struct FidlCodedHandle Handlesuspendtoken2147483648notnullableTable;
static const struct FidlCodedHandle Handlethread2147483648notnullableTable;
static const struct FidlCodedHandle Handletimer2147483648notnullableTable;
static const struct FidlCodedHandle Handlevcpu2147483648notnullableTable;
static const struct FidlCodedHandle Handlevmar2147483648notnullableTable;
static const struct FidlCodedHandle Handlevmo2147483648notnullableTable;
static const struct FidlCodedHandle Handlevmo5notnullableTable;
static const struct FidlCodedHandle Handlevmo1notnullableTable;
static const struct FidlCodedHandle Protocol25test_handles_SomeProtocolnotnullableTable;
static const struct FidlCodedHandle Request0notnullableTable;

static const struct FidlStructElement Fields20test_handles_Handles[] = {
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 0,
            .field_type = (const fidl_type_t*)&Handlehandle2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 4,
            .field_type = (const fidl_type_t*)&Handlebti2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 8,
            .field_type = (const fidl_type_t*)&Handlechannel2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 12,
            .field_type = (const fidl_type_t*)&Handleclock2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 16,
            .field_type = (const fidl_type_t*)&Handledebuglog2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 20,
            .field_type = (const fidl_type_t*)&Handleevent2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 24,
            .field_type = (const fidl_type_t*)&Handleeventpair2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 28,
            .field_type = (const fidl_type_t*)&Handleexception2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 32,
            .field_type = (const fidl_type_t*)&Handlefifo2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 36,
            .field_type = (const fidl_type_t*)&Handleguest2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 40,
            .field_type = (const fidl_type_t*)&Handleinterrupt2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 44,
            .field_type = (const fidl_type_t*)&Handleiommu2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 48,
            .field_type = (const fidl_type_t*)&Handlejob2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 52,
            .field_type = (const fidl_type_t*)&Handlemsi2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 56,
            .field_type = (const fidl_type_t*)&Handlepager2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 60,
            .field_type = (const fidl_type_t*)&Handlepmt2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 64,
            .field_type = (const fidl_type_t*)&Handleport2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 68,
            .field_type = (const fidl_type_t*)&Handleprocess2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 72,
            .field_type = (const fidl_type_t*)&Handleprofile2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 76,
            .field_type = (const fidl_type_t*)&Handleresource2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 80,
            .field_type = (const fidl_type_t*)&Handlesocket2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 84,
            .field_type = (const fidl_type_t*)&Handlestream2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 88,
            .field_type = (const fidl_type_t*)&Handlesuspendtoken2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 92,
            .field_type = (const fidl_type_t*)&Handlethread2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 96,
            .field_type = (const fidl_type_t*)&Handletimer2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 100,
            .field_type = (const fidl_type_t*)&Handlevcpu2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 104,
            .field_type = (const fidl_type_t*)&Handlevmar2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 108,
            .field_type = (const fidl_type_t*)&Handlevmo2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 112,
            .field_type = (const fidl_type_t*)&Handlevmo5notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 116,
            .field_type = (const fidl_type_t*)&Handlehandle2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 120,
            .field_type = (const fidl_type_t*)&Handlevmo2147483648notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 124,
            .field_type = (const fidl_type_t*)&Handlevmo1notnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 128,
            .field_type = (const fidl_type_t*)&Protocol25test_handles_SomeProtocolnotnullableTable,
        },
    },
    {
        .field = {
            .header = {
                .element_type = kFidlStructElementType_Field,
                .is_resource = kFidlIsResource_Resource,
            },
            .offset_v2 = 132,
            .field_type = (const fidl_type_t*)&Request0notnullableTable,
        },
    },
};
const struct FidlCodedStruct test_handles_HandlesTable = {
    .tag = kFidlTypeStruct,
    .name = "test.handles/Handles",
    .is_empty = kFidlEmpty_IsNotEmpty,
    .size_v2 = 136,
    .elements = Fields20test_handles_Handles,
    .element_count = 34,
};

static const struct FidlCodedHandle Handlehandle2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_NONE,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handlebti2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_BTI,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handlechannel2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_CHANNEL,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handleclock2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_CLOCK,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handledebuglog2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_DEBUGLOG,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handleevent2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_EVENT,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handleeventpair2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_EVENTPAIR,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handleexception2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_EXCEPTION,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handlefifo2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_FIFO,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handleguest2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_GUEST,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handleinterrupt2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_INTERRUPT,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handleiommu2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_IOMMU,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handlejob2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_JOB,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handlemsi2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_MSI,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handlepager2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_PAGER,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handlepmt2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_PMT,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handleport2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_PORT,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handleprocess2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_PROCESS,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handleprofile2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_PROFILE,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handleresource2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_RESOURCE,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handlesocket2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_SOCKET,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handlestream2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_STREAM,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handlesuspendtoken2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_SUSPEND_TOKEN,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handlethread2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_THREAD,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handletimer2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_TIMER,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handlevcpu2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_VCPU,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handlevmar2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_VMAR,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handlevmo2147483648notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_VMO,
    .handle_rights = 0x80000000,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handlevmo5notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_VMO,
    .handle_rights = 0x5,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Handlevmo1notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_VMO,
    .handle_rights = 0x1,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Protocol25test_handles_SomeProtocolnotnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_CHANNEL,
    .handle_rights = ZX_DEFAULT_CHANNEL_RIGHTS,
    .nullable = kFidlNullability_Nonnullable,
};

static const struct FidlCodedHandle Request0notnullableTable = {
    .tag = kFidlTypeHandle,
    .handle_subtype = ZX_OBJ_TYPE_CHANNEL,
    .handle_rights = ZX_DEFAULT_CHANNEL_RIGHTS,
    .nullable = kFidlNullability_Nonnullable,
};
