#define _CFFI_

/* We try to define Py_LIMITED_API before including Python.h.

   Mess: we can only define it if Py_DEBUG, Py_TRACE_REFS and
   Py_REF_DEBUG are not defined.  This is a best-effort approximation:
   we can learn about Py_DEBUG from pyconfig.h, but it is unclear if
   the same works for the other two macros.  Py_DEBUG implies them,
   but not the other way around.

   The implementation is messy (issue #350): on Windows, with _MSC_VER,
   we have to define Py_LIMITED_API even before including pyconfig.h.
   In that case, we guess what pyconfig.h will do to the macros above,
   and check our guess after the #include.

   Note that on Windows, with CPython 3.x, you need >= 3.5 and virtualenv
   version >= 16.0.0.  With older versions of either, you don't get a
   copy of PYTHON3.DLL in the virtualenv.  We can't check the version of
   CPython *before* we even include pyconfig.h.  ffi.set_source() puts
   a ``#define _CFFI_NO_LIMITED_API'' at the start of this file if it is
   running on Windows < 3.5, as an attempt at fixing it, but that's
   arguably wrong because it may not be the target version of Python.
   Still better than nothing I guess.  As another workaround, you can
   remove the definition of Py_LIMITED_API here.

   See also 'py_limited_api' in cffi/setuptools_ext.py.
*/
#if !defined(_CFFI_USE_EMBEDDING) && !defined(Py_LIMITED_API)
#  ifdef _MSC_VER
#    if !defined(_DEBUG) && !defined(Py_DEBUG) && !defined(Py_TRACE_REFS) && !defined(Py_REF_DEBUG) && !defined(_CFFI_NO_LIMITED_API)
#      define Py_LIMITED_API
#    endif
#    include <pyconfig.h>
     /* sanity-check: Py_LIMITED_API will cause crashes if any of these
        are also defined.  Normally, the Python file PC/pyconfig.h does not
        cause any of these to be defined, with the exception that _DEBUG
        causes Py_DEBUG.  Double-check that. */
#    ifdef Py_LIMITED_API
#      if defined(Py_DEBUG)
#        error "pyconfig.h unexpectedly defines Py_DEBUG, but Py_LIMITED_API is set"
#      endif
#      if defined(Py_TRACE_REFS)
#        error "pyconfig.h unexpectedly defines Py_TRACE_REFS, but Py_LIMITED_API is set"
#      endif
#      if defined(Py_REF_DEBUG)
#        error "pyconfig.h unexpectedly defines Py_REF_DEBUG, but Py_LIMITED_API is set"
#      endif
#    endif
#  else
#    include <pyconfig.h>
#    if !defined(Py_DEBUG) && !defined(Py_TRACE_REFS) && !defined(Py_REF_DEBUG) && !defined(_CFFI_NO_LIMITED_API)
#      define Py_LIMITED_API
#    endif
#  endif
#endif

#include <Python.h>
#ifdef __cplusplus
extern "C" {
#endif
#include <stddef.h>

/* This part is from file 'cffi/parse_c_type.h'.  It is copied at the
   beginning of C sources generated by CFFI's ffi.set_source(). */

typedef void *_cffi_opcode_t;

#define _CFFI_OP(opcode, arg)   (_cffi_opcode_t)(opcode | (((uintptr_t)(arg)) << 8))
#define _CFFI_GETOP(cffi_opcode)    ((unsigned char)(uintptr_t)cffi_opcode)
#define _CFFI_GETARG(cffi_opcode)   (((intptr_t)cffi_opcode) >> 8)

#define _CFFI_OP_PRIMITIVE       1
#define _CFFI_OP_POINTER         3
#define _CFFI_OP_ARRAY           5
#define _CFFI_OP_OPEN_ARRAY      7
#define _CFFI_OP_STRUCT_UNION    9
#define _CFFI_OP_ENUM           11
#define _CFFI_OP_FUNCTION       13
#define _CFFI_OP_FUNCTION_END   15
#define _CFFI_OP_NOOP           17
#define _CFFI_OP_BITFIELD       19
#define _CFFI_OP_TYPENAME       21
#define _CFFI_OP_CPYTHON_BLTN_V 23   // varargs
#define _CFFI_OP_CPYTHON_BLTN_N 25   // noargs
#define _CFFI_OP_CPYTHON_BLTN_O 27   // O  (i.e. a single arg)
#define _CFFI_OP_CONSTANT       29
#define _CFFI_OP_CONSTANT_INT   31
#define _CFFI_OP_GLOBAL_VAR     33
#define _CFFI_OP_DLOPEN_FUNC    35
#define _CFFI_OP_DLOPEN_CONST   37
#define _CFFI_OP_GLOBAL_VAR_F   39
#define _CFFI_OP_EXTERN_PYTHON  41

#define _CFFI_PRIM_VOID          0
#define _CFFI_PRIM_BOOL          1
#define _CFFI_PRIM_CHAR          2
#define _CFFI_PRIM_SCHAR         3
#define _CFFI_PRIM_UCHAR         4
#define _CFFI_PRIM_SHORT         5
#define _CFFI_PRIM_USHORT        6
#define _CFFI_PRIM_INT           7
#define _CFFI_PRIM_UINT          8
#define _CFFI_PRIM_LONG          9
#define _CFFI_PRIM_ULONG        10
#define _CFFI_PRIM_LONGLONG     11
#define _CFFI_PRIM_ULONGLONG    12
#define _CFFI_PRIM_FLOAT        13
#define _CFFI_PRIM_DOUBLE       14
#define _CFFI_PRIM_LONGDOUBLE   15

#define _CFFI_PRIM_WCHAR        16
#define _CFFI_PRIM_INT8         17
#define _CFFI_PRIM_UINT8        18
#define _CFFI_PRIM_INT16        19
#define _CFFI_PRIM_UINT16       20
#define _CFFI_PRIM_INT32        21
#define _CFFI_PRIM_UINT32       22
#define _CFFI_PRIM_INT64        23
#define _CFFI_PRIM_UINT64       24
#define _CFFI_PRIM_INTPTR       25
#define _CFFI_PRIM_UINTPTR      26
#define _CFFI_PRIM_PTRDIFF      27
#define _CFFI_PRIM_SIZE         28
#define _CFFI_PRIM_SSIZE        29
#define _CFFI_PRIM_INT_LEAST8   30
#define _CFFI_PRIM_UINT_LEAST8  31
#define _CFFI_PRIM_INT_LEAST16  32
#define _CFFI_PRIM_UINT_LEAST16 33
#define _CFFI_PRIM_INT_LEAST32  34
#define _CFFI_PRIM_UINT_LEAST32 35
#define _CFFI_PRIM_INT_LEAST64  36
#define _CFFI_PRIM_UINT_LEAST64 37
#define _CFFI_PRIM_INT_FAST8    38
#define _CFFI_PRIM_UINT_FAST8   39
#define _CFFI_PRIM_INT_FAST16   40
#define _CFFI_PRIM_UINT_FAST16  41
#define _CFFI_PRIM_INT_FAST32   42
#define _CFFI_PRIM_UINT_FAST32  43
#define _CFFI_PRIM_INT_FAST64   44
#define _CFFI_PRIM_UINT_FAST64  45
#define _CFFI_PRIM_INTMAX       46
#define _CFFI_PRIM_UINTMAX      47
#define _CFFI_PRIM_FLOATCOMPLEX 48
#define _CFFI_PRIM_DOUBLECOMPLEX 49
#define _CFFI_PRIM_CHAR16       50
#define _CFFI_PRIM_CHAR32       51

#define _CFFI__NUM_PRIM         52
#define _CFFI__UNKNOWN_PRIM           (-1)
#define _CFFI__UNKNOWN_FLOAT_PRIM     (-2)
#define _CFFI__UNKNOWN_LONG_DOUBLE    (-3)

#define _CFFI__IO_FILE_STRUCT         (-1)


struct _cffi_global_s {
    const char *name;
    void *address;
    _cffi_opcode_t type_op;
    void *size_or_direct_fn;  // OP_GLOBAL_VAR: size, or 0 if unknown
                              // OP_CPYTHON_BLTN_*: addr of direct function
};

struct _cffi_getconst_s {
    unsigned long long value;
    const struct _cffi_type_context_s *ctx;
    int gindex;
};

struct _cffi_struct_union_s {
    const char *name;
    int type_index;          // -> _cffi_types, on a OP_STRUCT_UNION
    int flags;               // _CFFI_F_* flags below
    size_t size;
    int alignment;
    int first_field_index;   // -> _cffi_fields array
    int num_fields;
};
#define _CFFI_F_UNION         0x01   // is a union, not a struct
#define _CFFI_F_CHECK_FIELDS  0x02   // complain if fields are not in the
                                     // "standard layout" or if some are missing
#define _CFFI_F_PACKED        0x04   // for CHECK_FIELDS, assume a packed struct
#define _CFFI_F_EXTERNAL      0x08   // in some other ffi.include()
#define _CFFI_F_OPAQUE        0x10   // opaque

struct _cffi_field_s {
    const char *name;
    size_t field_offset;
    size_t field_size;
    _cffi_opcode_t field_type_op;
};

struct _cffi_enum_s {
    const char *name;
    int type_index;          // -> _cffi_types, on a OP_ENUM
    int type_prim;           // _CFFI_PRIM_xxx
    const char *enumerators; // comma-delimited string
};

struct _cffi_typename_s {
    const char *name;
    int type_index;   /* if opaque, points to a possibly artificial
                         OP_STRUCT which is itself opaque */
};

struct _cffi_type_context_s {
    _cffi_opcode_t *types;
    const struct _cffi_global_s *globals;
    const struct _cffi_field_s *fields;
    const struct _cffi_struct_union_s *struct_unions;
    const struct _cffi_enum_s *enums;
    const struct _cffi_typename_s *typenames;
    int num_globals;
    int num_struct_unions;
    int num_enums;
    int num_typenames;
    const char *const *includes;
    int num_types;
    int flags;      /* future extension */
};

struct _cffi_parse_info_s {
    const struct _cffi_type_context_s *ctx;
    _cffi_opcode_t *output;
    unsigned int output_size;
    size_t error_location;
    const char *error_message;
};

struct _cffi_externpy_s {
    const char *name;
    size_t size_of_result;
    void *reserved1, *reserved2;
};

#ifdef _CFFI_INTERNAL
static int parse_c_type(struct _cffi_parse_info_s *info, const char *input);
static int search_in_globals(const struct _cffi_type_context_s *ctx,
                             const char *search, size_t search_len);
static int search_in_struct_unions(const struct _cffi_type_context_s *ctx,
                                   const char *search, size_t search_len);
#endif

/* this block of #ifs should be kept exactly identical between
   c/_cffi_backend.c, cffi/vengine_cpy.py, cffi/vengine_gen.py
   and cffi/_cffi_include.h */
#if defined(_MSC_VER)
# include <malloc.h>   /* for alloca() */
# if _MSC_VER < 1600   /* MSVC < 2010 */
   typedef __int8 int8_t;
   typedef __int16 int16_t;
   typedef __int32 int32_t;
   typedef __int64 int64_t;
   typedef unsigned __int8 uint8_t;
   typedef unsigned __int16 uint16_t;
   typedef unsigned __int32 uint32_t;
   typedef unsigned __int64 uint64_t;
   typedef __int8 int_least8_t;
   typedef __int16 int_least16_t;
   typedef __int32 int_least32_t;
   typedef __int64 int_least64_t;
   typedef unsigned __int8 uint_least8_t;
   typedef unsigned __int16 uint_least16_t;
   typedef unsigned __int32 uint_least32_t;
   typedef unsigned __int64 uint_least64_t;
   typedef __int8 int_fast8_t;
   typedef __int16 int_fast16_t;
   typedef __int32 int_fast32_t;
   typedef __int64 int_fast64_t;
   typedef unsigned __int8 uint_fast8_t;
   typedef unsigned __int16 uint_fast16_t;
   typedef unsigned __int32 uint_fast32_t;
   typedef unsigned __int64 uint_fast64_t;
   typedef __int64 intmax_t;
   typedef unsigned __int64 uintmax_t;
# else
#  include <stdint.h>
# endif
# if _MSC_VER < 1800   /* MSVC < 2013 */
#  ifndef __cplusplus
    typedef unsigned char _Bool;
#  endif
# endif
#else
# include <stdint.h>
# if (defined (__SVR4) && defined (__sun)) || defined(_AIX) || defined(__hpux)
#  include <alloca.h>
# endif
#endif

#ifdef __GNUC__
# define _CFFI_UNUSED_FN  __attribute__((unused))
#else
# define _CFFI_UNUSED_FN  /* nothing */
#endif

#ifdef __cplusplus
# ifndef _Bool
   typedef bool _Bool;   /* semi-hackish: C++ has no _Bool; bool is builtin */
# endif
#endif

/**********  CPython-specific section  **********/
#ifndef PYPY_VERSION


#if PY_MAJOR_VERSION >= 3
# define PyInt_FromLong PyLong_FromLong
#endif

#define _cffi_from_c_double PyFloat_FromDouble
#define _cffi_from_c_float PyFloat_FromDouble
#define _cffi_from_c_long PyInt_FromLong
#define _cffi_from_c_ulong PyLong_FromUnsignedLong
#define _cffi_from_c_longlong PyLong_FromLongLong
#define _cffi_from_c_ulonglong PyLong_FromUnsignedLongLong
#define _cffi_from_c__Bool PyBool_FromLong

#define _cffi_to_c_double PyFloat_AsDouble
#define _cffi_to_c_float PyFloat_AsDouble

#define _cffi_from_c_int(x, type)                                        \
    (((type)-1) > 0 ? /* unsigned */                                     \
        (sizeof(type) < sizeof(long) ?                                   \
            PyInt_FromLong((long)x) :                                    \
         sizeof(type) == sizeof(long) ?                                  \
            PyLong_FromUnsignedLong((unsigned long)x) :                  \
            PyLong_FromUnsignedLongLong((unsigned long long)x)) :        \
        (sizeof(type) <= sizeof(long) ?                                  \
            PyInt_FromLong((long)x) :                                    \
            PyLong_FromLongLong((long long)x)))

#define _cffi_to_c_int(o, type)                                          \
    ((type)(                                                             \
     sizeof(type) == 1 ? (((type)-1) > 0 ? (type)_cffi_to_c_u8(o)        \
                                         : (type)_cffi_to_c_i8(o)) :     \
     sizeof(type) == 2 ? (((type)-1) > 0 ? (type)_cffi_to_c_u16(o)       \
                                         : (type)_cffi_to_c_i16(o)) :    \
     sizeof(type) == 4 ? (((type)-1) > 0 ? (type)_cffi_to_c_u32(o)       \
                                         : (type)_cffi_to_c_i32(o)) :    \
     sizeof(type) == 8 ? (((type)-1) > 0 ? (type)_cffi_to_c_u64(o)       \
                                         : (type)_cffi_to_c_i64(o)) :    \
     (Py_FatalError("unsupported size for type " #type), (type)0)))

#define _cffi_to_c_i8                                                    \
                 ((int(*)(PyObject *))_cffi_exports[1])
#define _cffi_to_c_u8                                                    \
                 ((int(*)(PyObject *))_cffi_exports[2])
#define _cffi_to_c_i16                                                   \
                 ((int(*)(PyObject *))_cffi_exports[3])
#define _cffi_to_c_u16                                                   \
                 ((int(*)(PyObject *))_cffi_exports[4])
#define _cffi_to_c_i32                                                   \
                 ((int(*)(PyObject *))_cffi_exports[5])
#define _cffi_to_c_u32                                                   \
                 ((unsigned int(*)(PyObject *))_cffi_exports[6])
#define _cffi_to_c_i64                                                   \
                 ((long long(*)(PyObject *))_cffi_exports[7])
#define _cffi_to_c_u64                                                   \
                 ((unsigned long long(*)(PyObject *))_cffi_exports[8])
#define _cffi_to_c_char                                                  \
                 ((int(*)(PyObject *))_cffi_exports[9])
#define _cffi_from_c_pointer                                             \
    ((PyObject *(*)(char *, struct _cffi_ctypedescr *))_cffi_exports[10])
#define _cffi_to_c_pointer                                               \
    ((char *(*)(PyObject *, struct _cffi_ctypedescr *))_cffi_exports[11])
#define _cffi_get_struct_layout                                          \
    not used any more
#define _cffi_restore_errno                                              \
    ((void(*)(void))_cffi_exports[13])
#define _cffi_save_errno                                                 \
    ((void(*)(void))_cffi_exports[14])
#define _cffi_from_c_char                                                \
    ((PyObject *(*)(char))_cffi_exports[15])
#define _cffi_from_c_deref                                               \
    ((PyObject *(*)(char *, struct _cffi_ctypedescr *))_cffi_exports[16])
#define _cffi_to_c                                                       \
    ((int(*)(char *, struct _cffi_ctypedescr *, PyObject *))_cffi_exports[17])
#define _cffi_from_c_struct                                              \
    ((PyObject *(*)(char *, struct _cffi_ctypedescr *))_cffi_exports[18])
#define _cffi_to_c_wchar_t                                               \
    ((_cffi_wchar_t(*)(PyObject *))_cffi_exports[19])
#define _cffi_from_c_wchar_t                                             \
    ((PyObject *(*)(_cffi_wchar_t))_cffi_exports[20])
#define _cffi_to_c_long_double                                           \
    ((long double(*)(PyObject *))_cffi_exports[21])
#define _cffi_to_c__Bool                                                 \
    ((_Bool(*)(PyObject *))_cffi_exports[22])
#define _cffi_prepare_pointer_call_argument                              \
    ((Py_ssize_t(*)(struct _cffi_ctypedescr *,                           \
                    PyObject *, char **))_cffi_exports[23])
#define _cffi_convert_array_from_object                                  \
    ((int(*)(char *, struct _cffi_ctypedescr *, PyObject *))_cffi_exports[24])
#define _CFFI_CPIDX  25
#define _cffi_call_python                                                \
    ((void(*)(struct _cffi_externpy_s *, char *))_cffi_exports[_CFFI_CPIDX])
#define _cffi_to_c_wchar3216_t                                           \
    ((int(*)(PyObject *))_cffi_exports[26])
#define _cffi_from_c_wchar3216_t                                         \
    ((PyObject *(*)(int))_cffi_exports[27])
#define _CFFI_NUM_EXPORTS 28

struct _cffi_ctypedescr;

static void *_cffi_exports[_CFFI_NUM_EXPORTS];

#define _cffi_type(index)   (                           \
    assert((((uintptr_t)_cffi_types[index]) & 1) == 0), \
    (struct _cffi_ctypedescr *)_cffi_types[index])

static PyObject *_cffi_init(const char *module_name, Py_ssize_t version,
                            const struct _cffi_type_context_s *ctx)
{
    PyObject *module, *o_arg, *new_module;
    void *raw[] = {
        (void *)module_name,
        (void *)version,
        (void *)_cffi_exports,
        (void *)ctx,
    };

    module = PyImport_ImportModule("_cffi_backend");
    if (module == NULL)
        goto failure;

    o_arg = PyLong_FromVoidPtr((void *)raw);
    if (o_arg == NULL)
        goto failure;

    new_module = PyObject_CallMethod(
        module, (char *)"_init_cffi_1_0_external_module", (char *)"O", o_arg);

    Py_DECREF(o_arg);
    Py_DECREF(module);
    return new_module;

  failure:
    Py_XDECREF(module);
    return NULL;
}


#ifdef HAVE_WCHAR_H
typedef wchar_t _cffi_wchar_t;
#else
typedef uint16_t _cffi_wchar_t;   /* same random pick as _cffi_backend.c */
#endif

_CFFI_UNUSED_FN static uint16_t _cffi_to_c_char16_t(PyObject *o)
{
    if (sizeof(_cffi_wchar_t) == 2)
        return (uint16_t)_cffi_to_c_wchar_t(o);
    else
        return (uint16_t)_cffi_to_c_wchar3216_t(o);
}

_CFFI_UNUSED_FN static PyObject *_cffi_from_c_char16_t(uint16_t x)
{
    if (sizeof(_cffi_wchar_t) == 2)
        return _cffi_from_c_wchar_t((_cffi_wchar_t)x);
    else
        return _cffi_from_c_wchar3216_t((int)x);
}

_CFFI_UNUSED_FN static int _cffi_to_c_char32_t(PyObject *o)
{
    if (sizeof(_cffi_wchar_t) == 4)
        return (int)_cffi_to_c_wchar_t(o);
    else
        return (int)_cffi_to_c_wchar3216_t(o);
}

_CFFI_UNUSED_FN static PyObject *_cffi_from_c_char32_t(unsigned int x)
{
    if (sizeof(_cffi_wchar_t) == 4)
        return _cffi_from_c_wchar_t((_cffi_wchar_t)x);
    else
        return _cffi_from_c_wchar3216_t((int)x);
}

union _cffi_union_alignment_u {
    unsigned char m_char;
    unsigned short m_short;
    unsigned int m_int;
    unsigned long m_long;
    unsigned long long m_longlong;
    float m_float;
    double m_double;
    long double m_longdouble;
};

struct _cffi_freeme_s {
    struct _cffi_freeme_s *next;
    union _cffi_union_alignment_u alignment;
};

_CFFI_UNUSED_FN static int
_cffi_convert_array_argument(struct _cffi_ctypedescr *ctptr, PyObject *arg,
                             char **output_data, Py_ssize_t datasize,
                             struct _cffi_freeme_s **freeme)
{
    char *p;
    if (datasize < 0)
        return -1;

    p = *output_data;
    if (p == NULL) {
        struct _cffi_freeme_s *fp = (struct _cffi_freeme_s *)PyObject_Malloc(
            offsetof(struct _cffi_freeme_s, alignment) + (size_t)datasize);
        if (fp == NULL)
            return -1;
        fp->next = *freeme;
        *freeme = fp;
        p = *output_data = (char *)&fp->alignment;
    }
    memset((void *)p, 0, (size_t)datasize);
    return _cffi_convert_array_from_object(p, ctptr, arg);
}

_CFFI_UNUSED_FN static void
_cffi_free_array_arguments(struct _cffi_freeme_s *freeme)
{
    do {
        void *p = (void *)freeme;
        freeme = freeme->next;
        PyObject_Free(p);
    } while (freeme != NULL);
}

/**********  end CPython-specific section  **********/
#else
_CFFI_UNUSED_FN
static void (*_cffi_call_python_org)(struct _cffi_externpy_s *, char *);
# define _cffi_call_python  _cffi_call_python_org
#endif


#define _cffi_array_len(array)   (sizeof(array) / sizeof((array)[0]))

#define _cffi_prim_int(size, sign)                                      \
    ((size) == 1 ? ((sign) ? _CFFI_PRIM_INT8  : _CFFI_PRIM_UINT8)  :    \
     (size) == 2 ? ((sign) ? _CFFI_PRIM_INT16 : _CFFI_PRIM_UINT16) :    \
     (size) == 4 ? ((sign) ? _CFFI_PRIM_INT32 : _CFFI_PRIM_UINT32) :    \
     (size) == 8 ? ((sign) ? _CFFI_PRIM_INT64 : _CFFI_PRIM_UINT64) :    \
     _CFFI__UNKNOWN_PRIM)

#define _cffi_prim_float(size)                                          \
    ((size) == sizeof(float) ? _CFFI_PRIM_FLOAT :                       \
     (size) == sizeof(double) ? _CFFI_PRIM_DOUBLE :                     \
     (size) == sizeof(long double) ? _CFFI__UNKNOWN_LONG_DOUBLE :       \
     _CFFI__UNKNOWN_FLOAT_PRIM)

#define _cffi_check_int(got, got_nonpos, expected)      \
    ((got_nonpos) == (expected <= 0) &&                 \
     (got) == (unsigned long long)expected)

#ifdef MS_WIN32
# define _cffi_stdcall  __stdcall
#else
# define _cffi_stdcall  /* nothing */
#endif

#ifdef __cplusplus
}
#endif

/************************************************************/


    /* the C header of the library */
    #include <tss2/tss2_esys.h>
    #include <tss2/tss2_tcti.h>
    #include <tss2/tss2_tctildr.h>
    #include <tss2/tss2_rc.h>
    #include <tss2/tss2_mu.h>

    /*
     * Add the structure for the Python TCTI which is the TCTI structure and void *
     * for the pyobject representing the object instance. We add it here and to
     * prepare headers so CFFI knows about it (prepare_headers) and here so
     * C code knows about it.
     */
    typedef struct PYTCTI_CONTEXT PYTCTI_CONTEXT;
    struct PYTCTI_CONTEXT {
        TSS2_TCTI_CONTEXT_COMMON_V2 common;
        void *thiz;
    };
    #include <tss2/tss2_tcti_spi_helper.h>

/************************************************************/

static void *_cffi_types[] = {
/*  0 */ _CFFI_OP(_CFFI_OP_FUNCTION, 3422), // TSS2_TCTI_INFO const *()(void)
/*  1 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/*  2 */ _CFFI_OP(_CFFI_OP_FUNCTION, 10), // char const *()(TSS2_RC_INFO *)
/*  3 */ _CFFI_OP(_CFFI_OP_POINTER, 3414), // TSS2_RC_INFO *
/*  4 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/*  5 */ _CFFI_OP(_CFFI_OP_FUNCTION, 10), // char const *()(uint32_t)
/*  6 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22), // uint32_t
/*  7 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/*  8 */ _CFFI_OP(_CFFI_OP_FUNCTION, 11), // char const *(*()(uint8_t, char const *, char const *(*)(uint32_t)))(uint32_t)
/*  9 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18), // uint8_t
/* 10 */ _CFFI_OP(_CFFI_OP_POINTER, 3428), // char const *
/* 11 */ _CFFI_OP(_CFFI_OP_POINTER, 5), // char const *(*)(uint32_t)
/* 12 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 13 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT * *, TSS2_TCTI_CONTEXT *, TSS2_ABI_VERSION *)
/* 14 */ _CFFI_OP(_CFFI_OP_POINTER, 19), // ESYS_CONTEXT * *
/* 15 */ _CFFI_OP(_CFFI_OP_POINTER, 3417), // TSS2_TCTI_CONTEXT *
/* 16 */ _CFFI_OP(_CFFI_OP_POINTER, 3413), // TSS2_ABI_VERSION *
/* 17 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 18 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *)
/* 19 */ _CFFI_OP(_CFFI_OP_POINTER, 3270), // ESYS_CONTEXT *
/* 20 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 21 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, ESYS_CRYPTO_CALLBACKS *)
/* 22 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 23 */ _CFFI_OP(_CFFI_OP_POINTER, 3271), // ESYS_CRYPTO_CALLBACKS *
/* 24 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 25 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_ATTEST * *, TPMT_SIGNATURE * *)
/* 26 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 27 */ _CFFI_OP(_CFFI_OP_POINTER, 2479), // TPM2B_ATTEST * *
/* 28 */ _CFFI_OP(_CFFI_OP_POINTER, 3031), // TPMT_SIGNATURE * *
/* 29 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 30 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_DATA * *)
/* 31 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 32 */ _CFFI_OP(_CFFI_OP_POINTER, 2503), // TPM2B_DATA * *
/* 33 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 34 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_DATA * *, TPM2B_PRIVATE * *, TPM2B_ENCRYPTED_SECRET * *)
/* 35 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 36 */ _CFFI_OP(_CFFI_OP_NOOP, 32),
/* 37 */ _CFFI_OP(_CFFI_OP_POINTER, 2581), // TPM2B_PRIVATE * *
/* 38 */ _CFFI_OP(_CFFI_OP_POINTER, 2527), // TPM2B_ENCRYPTED_SECRET * *
/* 39 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 40 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_DIGEST * *)
/* 41 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 42 */ _CFFI_OP(_CFFI_OP_POINTER, 1670), // TPM2B_DIGEST * *
/* 43 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 44 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_DIGEST * *, TPMT_TK_AUTH * *)
/* 45 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 46 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 47 */ _CFFI_OP(_CFFI_OP_POINTER, 3055), // TPMT_TK_AUTH * *
/* 48 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 49 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_DIGEST * *, TPMT_TK_HASHCHECK * *)
/* 50 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 51 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 52 */ _CFFI_OP(_CFFI_OP_POINTER, 3067), // TPMT_TK_HASHCHECK * *
/* 53 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 54 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_ECC_POINT * *)
/* 55 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 56 */ _CFFI_OP(_CFFI_OP_POINTER, 2521), // TPM2B_ECC_POINT * *
/* 57 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 58 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_ECC_POINT * *, TPM2B_ECC_POINT * *)
/* 59 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 60 */ _CFFI_OP(_CFFI_OP_NOOP, 56),
/* 61 */ _CFFI_OP(_CFFI_OP_NOOP, 56),
/* 62 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 63 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_ECC_POINT * *, TPM2B_ECC_POINT * *, TPM2B_ECC_POINT * *, uint16_t *)
/* 64 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 65 */ _CFFI_OP(_CFFI_OP_NOOP, 56),
/* 66 */ _CFFI_OP(_CFFI_OP_NOOP, 56),
/* 67 */ _CFFI_OP(_CFFI_OP_NOOP, 56),
/* 68 */ _CFFI_OP(_CFFI_OP_POINTER, 205), // uint16_t *
/* 69 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 70 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_ECC_POINT * *, uint16_t *)
/* 71 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 72 */ _CFFI_OP(_CFFI_OP_NOOP, 56),
/* 73 */ _CFFI_OP(_CFFI_OP_NOOP, 68),
/* 74 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 75 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_ID_OBJECT * *, TPM2B_ENCRYPTED_SECRET * *)
/* 76 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 77 */ _CFFI_OP(_CFFI_OP_POINTER, 2539), // TPM2B_ID_OBJECT * *
/* 78 */ _CFFI_OP(_CFFI_OP_NOOP, 38),
/* 79 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 80 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_MAX_BUFFER * *)
/* 81 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 82 */ _CFFI_OP(_CFFI_OP_POINTER, 1455), // TPM2B_MAX_BUFFER * *
/* 83 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 84 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_MAX_BUFFER * *, TPM2B_DIGEST * *, TPMT_SIGNATURE * *)
/* 85 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 86 */ _CFFI_OP(_CFFI_OP_NOOP, 82),
/* 87 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 88 */ _CFFI_OP(_CFFI_OP_NOOP, 28),
/* 89 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 90 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_MAX_BUFFER * *, TPM2B_IV * *)
/* 91 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 92 */ _CFFI_OP(_CFFI_OP_NOOP, 82),
/* 93 */ _CFFI_OP(_CFFI_OP_POINTER, 2545), // TPM2B_IV * *
/* 94 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 95 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_MAX_BUFFER * *, uint32_t *)
/* 96 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 97 */ _CFFI_OP(_CFFI_OP_NOOP, 82),
/* 98 */ _CFFI_OP(_CFFI_OP_POINTER, 6), // uint32_t *
/* 99 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 100 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_MAX_NV_BUFFER * *)
/* 101 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 102 */ _CFFI_OP(_CFFI_OP_POINTER, 2563), // TPM2B_MAX_NV_BUFFER * *
/* 103 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 104 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_NV_PUBLIC * *, TPM2B_NAME * *)
/* 105 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 106 */ _CFFI_OP(_CFFI_OP_POINTER, 2575), // TPM2B_NV_PUBLIC * *
/* 107 */ _CFFI_OP(_CFFI_OP_POINTER, 347), // TPM2B_NAME * *
/* 108 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 109 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_PRIVATE * *)
/* 110 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 111 */ _CFFI_OP(_CFFI_OP_NOOP, 37),
/* 112 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 113 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_PRIVATE * *, TPM2B_ENCRYPTED_SECRET * *)
/* 114 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 115 */ _CFFI_OP(_CFFI_OP_NOOP, 37),
/* 116 */ _CFFI_OP(_CFFI_OP_NOOP, 38),
/* 117 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 118 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_PRIVATE * *, TPM2B_PUBLIC * *, TPM2B_CREATION_DATA * *, TPM2B_DIGEST * *, TPMT_TK_CREATION * *)
/* 119 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 120 */ _CFFI_OP(_CFFI_OP_NOOP, 37),
/* 121 */ _CFFI_OP(_CFFI_OP_POINTER, 1759), // TPM2B_PUBLIC * *
/* 122 */ _CFFI_OP(_CFFI_OP_POINTER, 2497), // TPM2B_CREATION_DATA * *
/* 123 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 124 */ _CFFI_OP(_CFFI_OP_POINTER, 3061), // TPMT_TK_CREATION * *
/* 125 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 126 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_PUBLIC * *, TPM2B_NAME * *, TPM2B_NAME * *)
/* 127 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 128 */ _CFFI_OP(_CFFI_OP_NOOP, 121),
/* 129 */ _CFFI_OP(_CFFI_OP_NOOP, 107),
/* 130 */ _CFFI_OP(_CFFI_OP_NOOP, 107),
/* 131 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 132 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_PUBLIC_KEY_RSA * *)
/* 133 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 134 */ _CFFI_OP(_CFFI_OP_POINTER, 2599), // TPM2B_PUBLIC_KEY_RSA * *
/* 135 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 136 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPM2B_SENSITIVE_DATA * *)
/* 137 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 138 */ _CFFI_OP(_CFFI_OP_POINTER, 2617), // TPM2B_SENSITIVE_DATA * *
/* 139 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 140 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPML_ALG * *)
/* 141 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 142 */ _CFFI_OP(_CFFI_OP_POINTER, 2647), // TPML_ALG * *
/* 143 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 144 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPML_DIGEST_VALUES * *)
/* 145 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 146 */ _CFFI_OP(_CFFI_OP_POINTER, 2677), // TPML_DIGEST_VALUES * *
/* 147 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 148 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPMS_AC_OUTPUT * *)
/* 149 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 150 */ _CFFI_OP(_CFFI_OP_POINTER, 2731), // TPMS_AC_OUTPUT * *
/* 151 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 152 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPMS_ALGORITHM_DETAIL_ECC * *)
/* 153 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 154 */ _CFFI_OP(_CFFI_OP_POINTER, 2737), // TPMS_ALGORITHM_DETAIL_ECC * *
/* 155 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 156 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPMS_CONTEXT * *)
/* 157 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 158 */ _CFFI_OP(_CFFI_OP_POINTER, 2791), // TPMS_CONTEXT * *
/* 159 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 160 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPMS_CONTEXT const *)
/* 161 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 162 */ _CFFI_OP(_CFFI_OP_POINTER, 3338), // TPMS_CONTEXT const *
/* 163 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 164 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPMS_CONTEXT const *, uint32_t *)
/* 165 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 166 */ _CFFI_OP(_CFFI_OP_NOOP, 162),
/* 167 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 168 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 169 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPMS_TIME_INFO * *)
/* 170 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 171 */ _CFFI_OP(_CFFI_OP_POINTER, 2965), // TPMS_TIME_INFO * *
/* 172 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 173 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPMT_HA * *, TPMT_HA * *)
/* 174 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 175 */ _CFFI_OP(_CFFI_OP_POINTER, 2983), // TPMT_HA * *
/* 176 */ _CFFI_OP(_CFFI_OP_NOOP, 175),
/* 177 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 178 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPMT_SIGNATURE * *)
/* 179 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 180 */ _CFFI_OP(_CFFI_OP_NOOP, 28),
/* 181 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 182 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TPMT_TK_VERIFIED * *)
/* 183 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 184 */ _CFFI_OP(_CFFI_OP_POINTER, 3073), // TPMT_TK_VERIFIED * *
/* 185 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 186 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TSS2_SYS_CONTEXT * *)
/* 187 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 188 */ _CFFI_OP(_CFFI_OP_POINTER, 3415), // TSS2_SYS_CONTEXT * *
/* 189 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 190 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TSS2_TCTI_CONTEXT * *)
/* 191 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 192 */ _CFFI_OP(_CFFI_OP_POINTER, 15), // TSS2_TCTI_CONTEXT * *
/* 193 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 194 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, TSS2_TCTI_POLL_HANDLE * *, size_t *)
/* 195 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 196 */ _CFFI_OP(_CFFI_OP_POINTER, 2373), // TSS2_TCTI_POLL_HANDLE * *
/* 197 */ _CFFI_OP(_CFFI_OP_POINTER, 1612), // size_t *
/* 198 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 199 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, int32_t)
/* 200 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 201 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 21), // int32_t
/* 202 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 203 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint16_t)
/* 204 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 205 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20), // uint16_t
/* 206 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 207 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t *)
/* 208 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 209 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 210 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 211 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t *, TPM2B_PRIVATE * *, TPM2B_PUBLIC * *)
/* 212 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 213 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 214 */ _CFFI_OP(_CFFI_OP_NOOP, 37),
/* 215 */ _CFFI_OP(_CFFI_OP_NOOP, 121),
/* 216 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 217 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t *, TPM2B_PUBLIC * *, TPM2B_CREATION_DATA * *, TPM2B_DIGEST * *, TPMT_TK_CREATION * *)
/* 218 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 219 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 220 */ _CFFI_OP(_CFFI_OP_NOOP, 121),
/* 221 */ _CFFI_OP(_CFFI_OP_NOOP, 122),
/* 222 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 223 */ _CFFI_OP(_CFFI_OP_NOOP, 124),
/* 224 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 225 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t *, TPML_PCR_SELECTION * *, TPML_DIGEST * *)
/* 226 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 227 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 228 */ _CFFI_OP(_CFFI_OP_POINTER, 2701), // TPML_PCR_SELECTION * *
/* 229 */ _CFFI_OP(_CFFI_OP_POINTER, 2671), // TPML_DIGEST * *
/* 230 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 231 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t)
/* 232 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 233 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 234 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 235 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, TPM2B_DIGEST * *)
/* 236 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 237 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 238 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 239 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 240 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, TPM2B_DIGEST const *)
/* 241 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 242 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 243 */ _CFFI_OP(_CFFI_OP_POINTER, 3280), // TPM2B_DIGEST const *
/* 244 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 245 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, TPM2B_NAME * *)
/* 246 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 247 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 248 */ _CFFI_OP(_CFFI_OP_NOOP, 107),
/* 249 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 250 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, TPMS_CONTEXT * *)
/* 251 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 252 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 253 */ _CFFI_OP(_CFFI_OP_NOOP, 158),
/* 254 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 255 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t *)
/* 256 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 257 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 258 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 259 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 260 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t)
/* 261 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 262 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 263 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 264 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 265 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 266 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *)
/* 267 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 268 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 269 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 270 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 271 */ _CFFI_OP(_CFFI_OP_POINTER, 3278), // TPM2B_DATA const *
/* 272 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 273 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPM2B_DATA * *)
/* 274 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 275 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 276 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 277 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 278 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 279 */ _CFFI_OP(_CFFI_OP_NOOP, 32),
/* 280 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 281 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, uint16_t)
/* 282 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 283 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 284 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 285 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 286 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 287 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 288 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 289 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, uint16_t, uint32_t *)
/* 290 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 291 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 292 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 293 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 294 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 295 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 296 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 297 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 298 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER * *, uint32_t *)
/* 299 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 300 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 301 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 302 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 303 */ _CFFI_OP(_CFFI_OP_NOOP, 82),
/* 304 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 305 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 306 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER const *)
/* 307 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 308 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 309 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 310 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 311 */ _CFFI_OP(_CFFI_OP_POINTER, 3290), // TPM2B_MAX_BUFFER const *
/* 312 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 313 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER const *, TPMT_HA * *, TPMT_HA * *)
/* 314 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 315 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 316 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 317 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 318 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 319 */ _CFFI_OP(_CFFI_OP_NOOP, 175),
/* 320 */ _CFFI_OP(_CFFI_OP_NOOP, 175),
/* 321 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 322 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER const *, uint16_t, uint32_t)
/* 323 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 324 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 325 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 326 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 327 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 328 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 329 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 330 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 331 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER const *, uint16_t, uint32_t, TPM2B_DIGEST * *, TPMT_TK_HASHCHECK * *)
/* 332 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 333 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 334 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 335 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 336 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 337 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 338 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 339 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 340 */ _CFFI_OP(_CFFI_OP_NOOP, 52),
/* 341 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 342 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPM2B_NAME *, TPM2B_NAME *, TPM2B_NAME *, uint8_t)
/* 343 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 344 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 345 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 346 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 347 */ _CFFI_OP(_CFFI_OP_POINTER, 3293), // TPM2B_NAME *
/* 348 */ _CFFI_OP(_CFFI_OP_NOOP, 347),
/* 349 */ _CFFI_OP(_CFFI_OP_NOOP, 347),
/* 350 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18),
/* 351 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 352 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPM2B_SENSITIVE const *, TPM2B_PUBLIC const *, uint32_t)
/* 353 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 354 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 355 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 356 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 357 */ _CFFI_OP(_CFFI_OP_POINTER, 3300), // TPM2B_SENSITIVE const *
/* 358 */ _CFFI_OP(_CFFI_OP_POINTER, 3298), // TPM2B_PUBLIC const *
/* 359 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 360 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 361 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPM2B_SENSITIVE const *, TPM2B_PUBLIC const *, uint32_t, uint32_t *)
/* 362 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 363 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 364 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 365 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 366 */ _CFFI_OP(_CFFI_OP_NOOP, 357),
/* 367 */ _CFFI_OP(_CFFI_OP_NOOP, 358),
/* 368 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 369 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 370 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 371 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPM2B_SENSITIVE_DATA const *)
/* 372 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 373 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 374 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 375 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 376 */ _CFFI_OP(_CFFI_OP_POINTER, 3302), // TPM2B_SENSITIVE_DATA const *
/* 377 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 378 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPML_ALG const *)
/* 379 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 380 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 381 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 382 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 383 */ _CFFI_OP(_CFFI_OP_POINTER, 3307), // TPML_ALG const *
/* 384 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 385 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPML_ALG const *, TPML_ALG * *)
/* 386 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 387 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 388 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 389 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 390 */ _CFFI_OP(_CFFI_OP_NOOP, 383),
/* 391 */ _CFFI_OP(_CFFI_OP_NOOP, 142),
/* 392 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 393 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPML_PCR_SELECTION const *)
/* 394 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 395 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 396 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 397 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 398 */ _CFFI_OP(_CFFI_OP_POINTER, 3316), // TPML_PCR_SELECTION const *
/* 399 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 400 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPML_PCR_SELECTION const *, uint32_t *, TPML_PCR_SELECTION * *, TPML_DIGEST * *)
/* 401 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 402 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 403 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 404 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 405 */ _CFFI_OP(_CFFI_OP_NOOP, 398),
/* 406 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 407 */ _CFFI_OP(_CFFI_OP_NOOP, 228),
/* 408 */ _CFFI_OP(_CFFI_OP_NOOP, 229),
/* 409 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 410 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPMS_TIME_INFO * *)
/* 411 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 412 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 413 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 414 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 415 */ _CFFI_OP(_CFFI_OP_NOOP, 171),
/* 416 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 417 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, TPMT_PUBLIC_PARMS const *)
/* 418 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 419 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 420 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 421 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 422 */ _CFFI_OP(_CFFI_OP_POINTER, 3385), // TPMT_PUBLIC_PARMS const *
/* 423 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 424 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint16_t)
/* 425 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 426 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 427 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 428 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 429 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 430 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 431 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint16_t, TPM2B_DIGEST * *)
/* 432 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 433 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 434 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 435 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 436 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 437 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 438 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 439 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint16_t, TPM2B_ECC_POINT * *, uint16_t *)
/* 440 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 441 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 442 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 443 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 444 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 445 */ _CFFI_OP(_CFFI_OP_NOOP, 56),
/* 446 */ _CFFI_OP(_CFFI_OP_NOOP, 68),
/* 447 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 448 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint16_t, TPMS_ALGORITHM_DETAIL_ECC * *)
/* 449 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 450 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 451 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 452 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 453 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 454 */ _CFFI_OP(_CFFI_OP_NOOP, 154),
/* 455 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 456 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t)
/* 457 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 458 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 459 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 460 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 461 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 462 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 463 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPM2B_PUBLIC const *, TPM2B_PRIVATE const *, TPM2B_ENCRYPTED_SECRET const *, TPMT_SYM_DEF_OBJECT const *)
/* 464 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 465 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 466 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 467 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 468 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 469 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 470 */ _CFFI_OP(_CFFI_OP_NOOP, 358),
/* 471 */ _CFFI_OP(_CFFI_OP_POINTER, 3295), // TPM2B_PRIVATE const *
/* 472 */ _CFFI_OP(_CFFI_OP_POINTER, 3285), // TPM2B_ENCRYPTED_SECRET const *
/* 473 */ _CFFI_OP(_CFFI_OP_POINTER, 3392), // TPMT_SYM_DEF_OBJECT const *
/* 474 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 475 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPM2B_PUBLIC const *, TPM2B_PRIVATE const *, TPM2B_ENCRYPTED_SECRET const *, TPMT_SYM_DEF_OBJECT const *, TPM2B_PRIVATE * *)
/* 476 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 477 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 478 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 479 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 480 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 481 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 482 */ _CFFI_OP(_CFFI_OP_NOOP, 358),
/* 483 */ _CFFI_OP(_CFFI_OP_NOOP, 471),
/* 484 */ _CFFI_OP(_CFFI_OP_NOOP, 472),
/* 485 */ _CFFI_OP(_CFFI_OP_NOOP, 473),
/* 486 */ _CFFI_OP(_CFFI_OP_NOOP, 37),
/* 487 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 488 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPMT_SIG_SCHEME const *, TPML_PCR_SELECTION const *)
/* 489 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 490 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 491 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 492 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 493 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 494 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 495 */ _CFFI_OP(_CFFI_OP_POINTER, 3390), // TPMT_SIG_SCHEME const *
/* 496 */ _CFFI_OP(_CFFI_OP_NOOP, 398),
/* 497 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 498 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPMT_SIG_SCHEME const *, TPML_PCR_SELECTION const *, TPM2B_ATTEST * *, TPMT_SIGNATURE * *)
/* 499 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 500 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 501 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 502 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 503 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 504 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 505 */ _CFFI_OP(_CFFI_OP_NOOP, 495),
/* 506 */ _CFFI_OP(_CFFI_OP_NOOP, 398),
/* 507 */ _CFFI_OP(_CFFI_OP_NOOP, 27),
/* 508 */ _CFFI_OP(_CFFI_OP_NOOP, 28),
/* 509 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 510 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST * *)
/* 511 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 512 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 513 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 514 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 515 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 516 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 517 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 518 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *)
/* 519 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 520 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 521 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 522 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 523 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 524 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 525 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 526 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPM2B_DIGEST const *, TPM2B_DIGEST const *, TPM2B_NAME const *, TPMT_TK_AUTH const *)
/* 527 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 528 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 529 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 530 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 531 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 532 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 533 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 534 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 535 */ _CFFI_OP(_CFFI_OP_POINTER, 3293), // TPM2B_NAME const *
/* 536 */ _CFFI_OP(_CFFI_OP_POINTER, 3393), // TPMT_TK_AUTH const *
/* 537 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 538 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPM2B_DIGEST const *, TPM2B_NAME const *, TPMT_TK_VERIFIED const *)
/* 539 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 540 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 541 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 542 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 543 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 544 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 545 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 546 */ _CFFI_OP(_CFFI_OP_NOOP, 535),
/* 547 */ _CFFI_OP(_CFFI_OP_POINTER, 3396), // TPMT_TK_VERIFIED const *
/* 548 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 549 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPM2B_NAME const *)
/* 550 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 551 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 552 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 553 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 554 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 555 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 556 */ _CFFI_OP(_CFFI_OP_NOOP, 535),
/* 557 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 558 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPM2B_NAME const *, TPM2B_ID_OBJECT * *, TPM2B_ENCRYPTED_SECRET * *)
/* 559 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 560 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 561 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 562 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 563 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 564 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 565 */ _CFFI_OP(_CFFI_OP_NOOP, 535),
/* 566 */ _CFFI_OP(_CFFI_OP_NOOP, 77),
/* 567 */ _CFFI_OP(_CFFI_OP_NOOP, 38),
/* 568 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 569 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPM2B_NV_PUBLIC const *)
/* 570 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 571 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 572 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 573 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 574 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 575 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 576 */ _CFFI_OP(_CFFI_OP_POINTER, 3294), // TPM2B_NV_PUBLIC const *
/* 577 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 578 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPM2B_NV_PUBLIC const *, uint32_t *)
/* 579 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 580 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 581 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 582 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 583 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 584 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 585 */ _CFFI_OP(_CFFI_OP_NOOP, 576),
/* 586 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 587 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 588 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPML_PCR_SELECTION const *)
/* 589 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 590 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 591 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 592 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 593 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 594 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 595 */ _CFFI_OP(_CFFI_OP_NOOP, 398),
/* 596 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 597 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPMT_SIGNATURE const *)
/* 598 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 599 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 600 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 601 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 602 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 603 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 604 */ _CFFI_OP(_CFFI_OP_POINTER, 3389), // TPMT_SIGNATURE const *
/* 605 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 606 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPMT_SIGNATURE const *, TPMT_TK_VERIFIED * *)
/* 607 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 608 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 609 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 610 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 611 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 612 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 613 */ _CFFI_OP(_CFFI_OP_NOOP, 604),
/* 614 */ _CFFI_OP(_CFFI_OP_NOOP, 184),
/* 615 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 616 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPMT_SIG_SCHEME const *, TPMT_TK_HASHCHECK const *)
/* 617 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 618 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 619 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 620 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 621 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 622 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 623 */ _CFFI_OP(_CFFI_OP_NOOP, 495),
/* 624 */ _CFFI_OP(_CFFI_OP_POINTER, 3395), // TPMT_TK_HASHCHECK const *
/* 625 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 626 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPMT_SIG_SCHEME const *, TPMT_TK_HASHCHECK const *, TPMT_SIGNATURE * *)
/* 627 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 628 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 629 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 630 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 631 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 632 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 633 */ _CFFI_OP(_CFFI_OP_NOOP, 495),
/* 634 */ _CFFI_OP(_CFFI_OP_NOOP, 624),
/* 635 */ _CFFI_OP(_CFFI_OP_NOOP, 28),
/* 636 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 637 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, uint16_t)
/* 638 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 639 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 640 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 641 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 642 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 643 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 644 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 645 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 646 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, uint16_t, uint16_t)
/* 647 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 648 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 649 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 650 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 651 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 652 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 653 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 654 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 655 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 656 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, uint16_t, uint32_t *)
/* 657 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 658 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 659 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 660 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 661 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 662 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 663 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 664 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 665 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 666 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, uint16_t, uint32_t)
/* 667 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 668 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 669 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 670 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 671 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 672 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 673 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 674 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 675 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 676 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_ECC_POINT * *, TPM2B_ECC_POINT * *)
/* 677 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 678 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 679 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 680 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 681 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 682 */ _CFFI_OP(_CFFI_OP_NOOP, 56),
/* 683 */ _CFFI_OP(_CFFI_OP_NOOP, 56),
/* 684 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 685 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_ECC_POINT const *)
/* 686 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 687 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 688 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 689 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 690 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 691 */ _CFFI_OP(_CFFI_OP_POINTER, 3284), // TPM2B_ECC_POINT const *
/* 692 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 693 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_ECC_POINT const *, TPM2B_ECC_POINT * *)
/* 694 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 695 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 696 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 697 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 698 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 699 */ _CFFI_OP(_CFFI_OP_NOOP, 691),
/* 700 */ _CFFI_OP(_CFFI_OP_NOOP, 56),
/* 701 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 702 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_ECC_POINT const *, TPM2B_ECC_POINT const *, uint16_t, uint16_t)
/* 703 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 704 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 705 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 706 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 707 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 708 */ _CFFI_OP(_CFFI_OP_NOOP, 691),
/* 709 */ _CFFI_OP(_CFFI_OP_NOOP, 691),
/* 710 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 711 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 712 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 713 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_ECC_POINT const *, TPM2B_ECC_POINT const *, uint16_t, uint16_t, TPM2B_ECC_POINT * *, TPM2B_ECC_POINT * *)
/* 714 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 715 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 716 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 717 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 718 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 719 */ _CFFI_OP(_CFFI_OP_NOOP, 691),
/* 720 */ _CFFI_OP(_CFFI_OP_NOOP, 691),
/* 721 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 722 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 723 */ _CFFI_OP(_CFFI_OP_NOOP, 56),
/* 724 */ _CFFI_OP(_CFFI_OP_NOOP, 56),
/* 725 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 726 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_ECC_POINT const *, TPM2B_SENSITIVE_DATA const *, TPM2B_ECC_PARAMETER const *)
/* 727 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 728 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 729 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 730 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 731 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 732 */ _CFFI_OP(_CFFI_OP_NOOP, 691),
/* 733 */ _CFFI_OP(_CFFI_OP_NOOP, 376),
/* 734 */ _CFFI_OP(_CFFI_OP_POINTER, 3283), // TPM2B_ECC_PARAMETER const *
/* 735 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 736 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_ECC_POINT const *, TPM2B_SENSITIVE_DATA const *, TPM2B_ECC_PARAMETER const *, TPM2B_ECC_POINT * *, TPM2B_ECC_POINT * *, TPM2B_ECC_POINT * *, uint16_t *)
/* 737 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 738 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 739 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 740 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 741 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 742 */ _CFFI_OP(_CFFI_OP_NOOP, 691),
/* 743 */ _CFFI_OP(_CFFI_OP_NOOP, 376),
/* 744 */ _CFFI_OP(_CFFI_OP_NOOP, 734),
/* 745 */ _CFFI_OP(_CFFI_OP_NOOP, 56),
/* 746 */ _CFFI_OP(_CFFI_OP_NOOP, 56),
/* 747 */ _CFFI_OP(_CFFI_OP_NOOP, 56),
/* 748 */ _CFFI_OP(_CFFI_OP_NOOP, 68),
/* 749 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 750 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_EVENT const *)
/* 751 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 752 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 753 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 754 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 755 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 756 */ _CFFI_OP(_CFFI_OP_POINTER, 3286), // TPM2B_EVENT const *
/* 757 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 758 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_EVENT const *, TPML_DIGEST_VALUES * *)
/* 759 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 760 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 761 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 762 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 763 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 764 */ _CFFI_OP(_CFFI_OP_NOOP, 756),
/* 765 */ _CFFI_OP(_CFFI_OP_NOOP, 146),
/* 766 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 767 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER * *)
/* 768 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 769 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 770 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 771 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 772 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 773 */ _CFFI_OP(_CFFI_OP_NOOP, 82),
/* 774 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 775 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER const *)
/* 776 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 777 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 778 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 779 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 780 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 781 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 782 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 783 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER const *, uint16_t)
/* 784 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 785 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 786 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 787 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 788 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 789 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 790 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 791 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 792 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER const *, uint16_t, TPM2B_DIGEST * *)
/* 793 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 794 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 795 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 796 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 797 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 798 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 799 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 800 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 801 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 802 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER const *, uint32_t)
/* 803 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 804 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 805 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 806 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 807 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 808 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 809 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 810 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 811 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER const *, uint32_t, TPM2B_DIGEST * *, TPMT_TK_HASHCHECK * *)
/* 812 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 813 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 814 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 815 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 816 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 817 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 818 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 819 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 820 */ _CFFI_OP(_CFFI_OP_NOOP, 52),
/* 821 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 822 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER const *, uint8_t, uint16_t, TPM2B_IV const *)
/* 823 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 824 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 825 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 826 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 827 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 828 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 829 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18),
/* 830 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 831 */ _CFFI_OP(_CFFI_OP_POINTER, 3288), // TPM2B_IV const *
/* 832 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 833 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER const *, uint8_t, uint16_t, TPM2B_IV const *, TPM2B_MAX_BUFFER * *, TPM2B_IV * *)
/* 834 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 835 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 836 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 837 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 838 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 839 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 840 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18),
/* 841 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 842 */ _CFFI_OP(_CFFI_OP_NOOP, 831),
/* 843 */ _CFFI_OP(_CFFI_OP_NOOP, 82),
/* 844 */ _CFFI_OP(_CFFI_OP_NOOP, 93),
/* 845 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 846 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_NAME const *, TPM2B_NAME const *, uint8_t)
/* 847 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 848 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 849 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 850 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 851 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 852 */ _CFFI_OP(_CFFI_OP_NOOP, 535),
/* 853 */ _CFFI_OP(_CFFI_OP_NOOP, 535),
/* 854 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18),
/* 855 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 856 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_NV_PUBLIC * *, TPM2B_NAME * *)
/* 857 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 858 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 859 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 860 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 861 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 862 */ _CFFI_OP(_CFFI_OP_NOOP, 106),
/* 863 */ _CFFI_OP(_CFFI_OP_NOOP, 107),
/* 864 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 865 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_PRIVATE const *, TPM2B_PUBLIC const *)
/* 866 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 867 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 868 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 869 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 870 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 871 */ _CFFI_OP(_CFFI_OP_NOOP, 471),
/* 872 */ _CFFI_OP(_CFFI_OP_NOOP, 358),
/* 873 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 874 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_PRIVATE const *, TPM2B_PUBLIC const *, uint32_t *)
/* 875 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 876 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 877 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 878 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 879 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 880 */ _CFFI_OP(_CFFI_OP_NOOP, 471),
/* 881 */ _CFFI_OP(_CFFI_OP_NOOP, 358),
/* 882 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 883 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 884 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_PUBLIC * *, TPM2B_NAME * *, TPM2B_NAME * *)
/* 885 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 886 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 887 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 888 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 889 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 890 */ _CFFI_OP(_CFFI_OP_NOOP, 121),
/* 891 */ _CFFI_OP(_CFFI_OP_NOOP, 107),
/* 892 */ _CFFI_OP(_CFFI_OP_NOOP, 107),
/* 893 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 894 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_PUBLIC_KEY_RSA const *, TPMT_RSA_DECRYPT const *, TPM2B_DATA const *)
/* 895 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 896 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 897 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 898 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 899 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 900 */ _CFFI_OP(_CFFI_OP_POINTER, 3299), // TPM2B_PUBLIC_KEY_RSA const *
/* 901 */ _CFFI_OP(_CFFI_OP_POINTER, 3386), // TPMT_RSA_DECRYPT const *
/* 902 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 903 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 904 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_PUBLIC_KEY_RSA const *, TPMT_RSA_DECRYPT const *, TPM2B_DATA const *, TPM2B_PUBLIC_KEY_RSA * *)
/* 905 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 906 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 907 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 908 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 909 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 910 */ _CFFI_OP(_CFFI_OP_NOOP, 900),
/* 911 */ _CFFI_OP(_CFFI_OP_NOOP, 901),
/* 912 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 913 */ _CFFI_OP(_CFFI_OP_NOOP, 134),
/* 914 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 915 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_SENSITIVE_CREATE const *, TPM2B_PUBLIC const *, TPM2B_DATA const *, TPML_PCR_SELECTION const *)
/* 916 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 917 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 918 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 919 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 920 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 921 */ _CFFI_OP(_CFFI_OP_POINTER, 3301), // TPM2B_SENSITIVE_CREATE const *
/* 922 */ _CFFI_OP(_CFFI_OP_NOOP, 358),
/* 923 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 924 */ _CFFI_OP(_CFFI_OP_NOOP, 398),
/* 925 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 926 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_SENSITIVE_CREATE const *, TPM2B_PUBLIC const *, TPM2B_DATA const *, TPML_PCR_SELECTION const *, TPM2B_PRIVATE * *, TPM2B_PUBLIC * *, TPM2B_CREATION_DATA * *, TPM2B_DIGEST * *, TPMT_TK_CREATION * *)
/* 927 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 928 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 929 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 930 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 931 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 932 */ _CFFI_OP(_CFFI_OP_NOOP, 921),
/* 933 */ _CFFI_OP(_CFFI_OP_NOOP, 358),
/* 934 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 935 */ _CFFI_OP(_CFFI_OP_NOOP, 398),
/* 936 */ _CFFI_OP(_CFFI_OP_NOOP, 37),
/* 937 */ _CFFI_OP(_CFFI_OP_NOOP, 121),
/* 938 */ _CFFI_OP(_CFFI_OP_NOOP, 122),
/* 939 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 940 */ _CFFI_OP(_CFFI_OP_NOOP, 124),
/* 941 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 942 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_SENSITIVE_CREATE const *, TPM2B_PUBLIC const *, TPM2B_DATA const *, TPML_PCR_SELECTION const *, uint32_t *, TPM2B_PUBLIC * *, TPM2B_CREATION_DATA * *, TPM2B_DIGEST * *, TPMT_TK_CREATION * *)
/* 943 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 944 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 945 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 946 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 947 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 948 */ _CFFI_OP(_CFFI_OP_NOOP, 921),
/* 949 */ _CFFI_OP(_CFFI_OP_NOOP, 358),
/* 950 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 951 */ _CFFI_OP(_CFFI_OP_NOOP, 398),
/* 952 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 953 */ _CFFI_OP(_CFFI_OP_NOOP, 121),
/* 954 */ _CFFI_OP(_CFFI_OP_NOOP, 122),
/* 955 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 956 */ _CFFI_OP(_CFFI_OP_NOOP, 124),
/* 957 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 958 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_SENSITIVE_CREATE const *, TPM2B_TEMPLATE const *)
/* 959 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 960 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 961 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 962 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 963 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 964 */ _CFFI_OP(_CFFI_OP_NOOP, 921),
/* 965 */ _CFFI_OP(_CFFI_OP_POINTER, 3304), // TPM2B_TEMPLATE const *
/* 966 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 967 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_SENSITIVE_CREATE const *, TPM2B_TEMPLATE const *, uint32_t *, TPM2B_PRIVATE * *, TPM2B_PUBLIC * *)
/* 968 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 969 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 970 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 971 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 972 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 973 */ _CFFI_OP(_CFFI_OP_NOOP, 921),
/* 974 */ _CFFI_OP(_CFFI_OP_NOOP, 965),
/* 975 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 976 */ _CFFI_OP(_CFFI_OP_NOOP, 37),
/* 977 */ _CFFI_OP(_CFFI_OP_NOOP, 121),
/* 978 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 979 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_SENSITIVE_DATA * *)
/* 980 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 981 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 982 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 983 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 984 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 985 */ _CFFI_OP(_CFFI_OP_NOOP, 138),
/* 986 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 987 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPML_CC const *, TPML_CC const *)
/* 988 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 989 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 990 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 991 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 992 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 993 */ _CFFI_OP(_CFFI_OP_POINTER, 3309), // TPML_CC const *
/* 994 */ _CFFI_OP(_CFFI_OP_NOOP, 993),
/* 995 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 996 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPML_DIGEST const *)
/* 997 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 998 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 999 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1000 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1001 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1002 */ _CFFI_OP(_CFFI_OP_POINTER, 3311), // TPML_DIGEST const *
/* 1003 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1004 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPML_DIGEST_VALUES const *)
/* 1005 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1006 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1007 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1008 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1009 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1010 */ _CFFI_OP(_CFFI_OP_POINTER, 3312), // TPML_DIGEST_VALUES const *
/* 1011 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1012 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPML_PCR_SELECTION const *)
/* 1013 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1014 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1015 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1016 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1017 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1018 */ _CFFI_OP(_CFFI_OP_NOOP, 398),
/* 1019 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1020 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, TPML_PCR_SELECTION const *, uint8_t *, uint32_t *, uint32_t *, uint32_t *)
/* 1021 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1022 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1023 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1024 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1025 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1026 */ _CFFI_OP(_CFFI_OP_NOOP, 398),
/* 1027 */ _CFFI_OP(_CFFI_OP_POINTER, 9), // uint8_t *
/* 1028 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 1029 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 1030 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 1031 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1032 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, int8_t)
/* 1033 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1034 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1035 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1036 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1037 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1038 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 17), // int8_t
/* 1039 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1040 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint16_t, TPML_CC const *, TPML_CC const *)
/* 1041 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1042 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1043 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1044 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1045 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1046 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1047 */ _CFFI_OP(_CFFI_OP_NOOP, 993),
/* 1048 */ _CFFI_OP(_CFFI_OP_NOOP, 993),
/* 1049 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1050 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t *)
/* 1051 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1052 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1053 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1054 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1055 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1056 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 1057 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1058 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)
/* 1059 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1060 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1061 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1062 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1063 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1064 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1065 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1066 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPM2B_DIGEST const *, TPMT_SIG_SCHEME const *, TPMT_TK_CREATION const *)
/* 1067 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1068 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1069 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1070 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1071 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1072 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1073 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 1074 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1075 */ _CFFI_OP(_CFFI_OP_NOOP, 495),
/* 1076 */ _CFFI_OP(_CFFI_OP_POINTER, 3394), // TPMT_TK_CREATION const *
/* 1077 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1078 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPM2B_DIGEST const *, TPMT_SIG_SCHEME const *, TPMT_TK_CREATION const *, TPM2B_ATTEST * *, TPMT_SIGNATURE * *)
/* 1079 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1080 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1081 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1082 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1083 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1084 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1085 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 1086 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1087 */ _CFFI_OP(_CFFI_OP_NOOP, 495),
/* 1088 */ _CFFI_OP(_CFFI_OP_NOOP, 1076),
/* 1089 */ _CFFI_OP(_CFFI_OP_NOOP, 27),
/* 1090 */ _CFFI_OP(_CFFI_OP_NOOP, 28),
/* 1091 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1092 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPMT_SIG_SCHEME const *)
/* 1093 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1094 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1095 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1096 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1097 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1098 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1099 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 1100 */ _CFFI_OP(_CFFI_OP_NOOP, 495),
/* 1101 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1102 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPMT_SIG_SCHEME const *, TPM2B_ATTEST * *, TPMT_SIGNATURE * *)
/* 1103 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1104 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1105 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1106 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1107 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1108 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1109 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 1110 */ _CFFI_OP(_CFFI_OP_NOOP, 495),
/* 1111 */ _CFFI_OP(_CFFI_OP_NOOP, 27),
/* 1112 */ _CFFI_OP(_CFFI_OP_NOOP, 28),
/* 1113 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1114 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPMT_SIG_SCHEME const *, TPM2B_MAX_BUFFER const *)
/* 1115 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1116 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1117 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1118 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1119 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1120 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1121 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 1122 */ _CFFI_OP(_CFFI_OP_NOOP, 495),
/* 1123 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 1124 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1125 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPMT_SIG_SCHEME const *, TPM2B_MAX_BUFFER const *, TPM2B_MAX_BUFFER * *, TPM2B_DIGEST * *, TPMT_SIGNATURE * *)
/* 1126 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1127 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1128 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1129 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1130 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1131 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1132 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 1133 */ _CFFI_OP(_CFFI_OP_NOOP, 495),
/* 1134 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 1135 */ _CFFI_OP(_CFFI_OP_NOOP, 82),
/* 1136 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 1137 */ _CFFI_OP(_CFFI_OP_NOOP, 28),
/* 1138 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1139 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPMT_SYM_DEF_OBJECT const *)
/* 1140 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1141 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1142 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1143 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1144 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1145 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1146 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 1147 */ _CFFI_OP(_CFFI_OP_NOOP, 473),
/* 1148 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1149 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPMT_SYM_DEF_OBJECT const *, TPM2B_DATA * *, TPM2B_PRIVATE * *, TPM2B_ENCRYPTED_SECRET * *)
/* 1150 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1151 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1152 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1153 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1154 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1155 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1156 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 1157 */ _CFFI_OP(_CFFI_OP_NOOP, 473),
/* 1158 */ _CFFI_OP(_CFFI_OP_NOOP, 32),
/* 1159 */ _CFFI_OP(_CFFI_OP_NOOP, 37),
/* 1160 */ _CFFI_OP(_CFFI_OP_NOOP, 38),
/* 1161 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1162 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *)
/* 1163 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1164 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1165 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1166 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1167 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1168 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1169 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1170 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1171 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPM2B_DIGEST const *, TPM2B_DIGEST const *, int32_t)
/* 1172 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1173 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1174 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1175 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1176 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1177 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1178 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1179 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1180 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1181 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 21),
/* 1182 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1183 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPM2B_DIGEST const *, TPM2B_DIGEST const *, int32_t, TPM2B_DIGEST * *, TPMT_TK_AUTH * *)
/* 1184 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1185 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1186 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1187 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1188 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1189 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1190 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1191 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1192 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1193 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 21),
/* 1194 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 1195 */ _CFFI_OP(_CFFI_OP_NOOP, 47),
/* 1196 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1197 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPM2B_DIGEST const *, TPM2B_DIGEST const *, int32_t, TPMT_SIGNATURE const *)
/* 1198 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1199 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1200 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1201 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1202 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1203 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1204 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1205 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1206 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1207 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 21),
/* 1208 */ _CFFI_OP(_CFFI_OP_NOOP, 604),
/* 1209 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1210 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPM2B_DIGEST const *, TPM2B_DIGEST const *, int32_t, TPMT_SIGNATURE const *, TPM2B_DIGEST * *, TPMT_TK_AUTH * *)
/* 1211 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1212 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1213 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1214 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1215 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1216 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1217 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1218 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1219 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1220 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 21),
/* 1221 */ _CFFI_OP(_CFFI_OP_NOOP, 604),
/* 1222 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 1223 */ _CFFI_OP(_CFFI_OP_NOOP, 47),
/* 1224 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1225 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPM2B_PRIVATE * *)
/* 1226 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1227 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1228 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1229 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1230 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1231 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1232 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1233 */ _CFFI_OP(_CFFI_OP_NOOP, 37),
/* 1234 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1235 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, TPMT_SIGNATURE const *)
/* 1236 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1237 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1238 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1239 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1240 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1241 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1242 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1243 */ _CFFI_OP(_CFFI_OP_NOOP, 604),
/* 1244 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1245 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, uint8_t, TPMT_SYM_DEF const *, uint16_t)
/* 1246 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1247 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1248 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1249 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1250 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1251 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1252 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1253 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18),
/* 1254 */ _CFFI_OP(_CFFI_OP_POINTER, 3391), // TPMT_SYM_DEF const *
/* 1255 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1256 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1257 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, uint8_t, TPMT_SYM_DEF const *, uint16_t, uint32_t *)
/* 1258 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1259 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1260 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1261 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1262 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1263 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1264 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1265 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18),
/* 1266 */ _CFFI_OP(_CFFI_OP_NOOP, 1254),
/* 1267 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1268 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 1269 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1270 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_ID_OBJECT const *, TPM2B_ENCRYPTED_SECRET const *)
/* 1271 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1272 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1273 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1274 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1275 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1276 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1277 */ _CFFI_OP(_CFFI_OP_POINTER, 3287), // TPM2B_ID_OBJECT const *
/* 1278 */ _CFFI_OP(_CFFI_OP_NOOP, 472),
/* 1279 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1280 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_ID_OBJECT const *, TPM2B_ENCRYPTED_SECRET const *, TPM2B_DIGEST * *)
/* 1281 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1282 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1283 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1284 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1285 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1286 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1287 */ _CFFI_OP(_CFFI_OP_NOOP, 1277),
/* 1288 */ _CFFI_OP(_CFFI_OP_NOOP, 472),
/* 1289 */ _CFFI_OP(_CFFI_OP_NOOP, 42),
/* 1290 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1291 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER const *)
/* 1292 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1293 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1294 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1295 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1296 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1297 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1298 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 1299 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1300 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER const *, TPML_DIGEST_VALUES * *)
/* 1301 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1302 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1303 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1304 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1305 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1306 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1307 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 1308 */ _CFFI_OP(_CFFI_OP_NOOP, 146),
/* 1309 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1310 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_MAX_NV_BUFFER const *)
/* 1311 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1312 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1313 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1314 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1315 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1316 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1317 */ _CFFI_OP(_CFFI_OP_POINTER, 3292), // TPM2B_MAX_NV_BUFFER const *
/* 1318 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1319 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_MAX_NV_BUFFER const *, uint16_t)
/* 1320 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1321 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1322 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1323 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1324 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1325 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1326 */ _CFFI_OP(_CFFI_OP_NOOP, 1317),
/* 1327 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1328 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1329 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_PRIVATE const *, TPM2B_NAME const *, TPM2B_ENCRYPTED_SECRET const *)
/* 1330 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1331 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1332 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1333 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1334 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1335 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1336 */ _CFFI_OP(_CFFI_OP_NOOP, 471),
/* 1337 */ _CFFI_OP(_CFFI_OP_NOOP, 535),
/* 1338 */ _CFFI_OP(_CFFI_OP_NOOP, 472),
/* 1339 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1340 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_PRIVATE const *, TPM2B_NAME const *, TPM2B_ENCRYPTED_SECRET const *, TPM2B_PRIVATE * *, TPM2B_ENCRYPTED_SECRET * *)
/* 1341 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1342 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1343 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1344 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1345 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1346 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1347 */ _CFFI_OP(_CFFI_OP_NOOP, 471),
/* 1348 */ _CFFI_OP(_CFFI_OP_NOOP, 535),
/* 1349 */ _CFFI_OP(_CFFI_OP_NOOP, 472),
/* 1350 */ _CFFI_OP(_CFFI_OP_NOOP, 37),
/* 1351 */ _CFFI_OP(_CFFI_OP_NOOP, 38),
/* 1352 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1353 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint16_t, uint16_t)
/* 1354 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1355 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1356 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1357 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1358 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1359 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1360 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1361 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1362 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1363 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint16_t, uint16_t, TPM2B_MAX_NV_BUFFER * *)
/* 1364 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1365 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1366 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1367 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1368 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1369 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1370 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1371 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1372 */ _CFFI_OP(_CFFI_OP_NOOP, 102),
/* 1373 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1374 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)
/* 1375 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1376 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1377 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1378 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1379 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1380 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1381 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1382 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1383 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPMT_SIG_SCHEME const *)
/* 1384 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1385 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1386 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1387 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1388 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1389 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1390 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1391 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 1392 */ _CFFI_OP(_CFFI_OP_NOOP, 495),
/* 1393 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1394 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPMT_SIG_SCHEME const *, TPM2B_ATTEST * *, TPMT_SIGNATURE * *)
/* 1395 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1396 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1397 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1398 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1399 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1400 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1401 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1402 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 1403 */ _CFFI_OP(_CFFI_OP_NOOP, 495),
/* 1404 */ _CFFI_OP(_CFFI_OP_NOOP, 27),
/* 1405 */ _CFFI_OP(_CFFI_OP_NOOP, 28),
/* 1406 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1407 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPMT_SIG_SCHEME const *, uint16_t, uint16_t)
/* 1408 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1409 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1410 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1411 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1412 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1413 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1414 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1415 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 1416 */ _CFFI_OP(_CFFI_OP_NOOP, 495),
/* 1417 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1418 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1419 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1420 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DATA const *, TPMT_SIG_SCHEME const *, uint16_t, uint16_t, TPM2B_ATTEST * *, TPMT_SIGNATURE * *)
/* 1421 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1422 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1423 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1424 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1425 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1426 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1427 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1428 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 1429 */ _CFFI_OP(_CFFI_OP_NOOP, 495),
/* 1430 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1431 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1432 */ _CFFI_OP(_CFFI_OP_NOOP, 27),
/* 1433 */ _CFFI_OP(_CFFI_OP_NOOP, 28),
/* 1434 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1435 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_DIGEST const *, uint16_t, uint16_t)
/* 1436 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1437 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1438 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1439 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1440 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1441 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1442 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1443 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1444 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1445 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1446 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1447 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER *)
/* 1448 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1449 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1450 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1451 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1452 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1453 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1454 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1455 */ _CFFI_OP(_CFFI_OP_POINTER, 3290), // TPM2B_MAX_BUFFER *
/* 1456 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1457 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, TPM2B_MAX_BUFFER *, TPMS_AC_OUTPUT * *)
/* 1458 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1459 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1460 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1461 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1462 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1463 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1464 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1465 */ _CFFI_OP(_CFFI_OP_NOOP, 1455),
/* 1466 */ _CFFI_OP(_CFFI_OP_NOOP, 150),
/* 1467 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1468 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t *)
/* 1469 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1470 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1471 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1472 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1473 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1474 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1475 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1476 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 1477 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1478 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)
/* 1479 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1480 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1481 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1482 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1483 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1484 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1485 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1486 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1487 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1488 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint8_t *, TPML_AC_CAPABILITIES * *)
/* 1489 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1490 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1491 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1492 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1493 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1494 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1495 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1496 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1497 */ _CFFI_OP(_CFFI_OP_POINTER, 2641), // TPML_AC_CAPABILITIES * *
/* 1498 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1499 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint8_t *, TPMS_CAPABILITY_DATA * *)
/* 1500 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1501 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1502 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1503 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1504 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1505 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1506 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1507 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1508 */ _CFFI_OP(_CFFI_OP_POINTER, 2767), // TPMS_CAPABILITY_DATA * *
/* 1509 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1510 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint64_t)
/* 1511 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1512 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1513 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1514 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1515 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1516 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1517 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 24), // uint64_t
/* 1518 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1519 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint8_t)
/* 1520 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1521 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1522 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1523 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1524 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1525 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1526 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18),
/* 1527 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1528 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint64_t)
/* 1529 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1530 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1531 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1532 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1533 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1534 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 24),
/* 1535 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1536 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint8_t)
/* 1537 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1538 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1539 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1540 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1541 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1542 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18),
/* 1543 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1544 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint8_t, uint16_t, TPM2B_IV const *, TPM2B_MAX_BUFFER const *)
/* 1545 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1546 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1547 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1548 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1549 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1550 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18),
/* 1551 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1552 */ _CFFI_OP(_CFFI_OP_NOOP, 831),
/* 1553 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 1554 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1555 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint32_t, uint8_t, uint16_t, TPM2B_IV const *, TPM2B_MAX_BUFFER const *, TPM2B_MAX_BUFFER * *, TPM2B_IV * *)
/* 1556 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1557 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1558 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1559 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1560 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1561 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18),
/* 1562 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1563 */ _CFFI_OP(_CFFI_OP_NOOP, 831),
/* 1564 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 1565 */ _CFFI_OP(_CFFI_OP_NOOP, 82),
/* 1566 */ _CFFI_OP(_CFFI_OP_NOOP, 93),
/* 1567 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1568 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint32_t, uint32_t, uint8_t)
/* 1569 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1570 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1571 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1572 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1573 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18),
/* 1574 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1575 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint8_t * *, size_t *)
/* 1576 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1577 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1578 */ _CFFI_OP(_CFFI_OP_POINTER, 1027), // uint8_t * *
/* 1579 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1580 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1581 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint8_t *)
/* 1582 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1583 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1584 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1585 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1586 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint32_t, uint8_t, uint8_t)
/* 1587 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1588 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 1589 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18),
/* 1590 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18),
/* 1591 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1592 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint8_t *, TPML_AC_CAPABILITIES * *)
/* 1593 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1594 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1595 */ _CFFI_OP(_CFFI_OP_NOOP, 1497),
/* 1596 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1597 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint8_t *, TPMS_CAPABILITY_DATA * *)
/* 1598 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1599 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1600 */ _CFFI_OP(_CFFI_OP_NOOP, 1508),
/* 1601 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1602 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint8_t *, uint32_t *, uint32_t *, uint32_t *)
/* 1603 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1604 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1605 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 1606 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 1607 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 1608 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1609 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CONTEXT *, uint8_t const *, size_t, uint32_t *)
/* 1610 */ _CFFI_OP(_CFFI_OP_NOOP, 19),
/* 1611 */ _CFFI_OP(_CFFI_OP_POINTER, 9), // uint8_t const *
/* 1612 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28), // size_t
/* 1613 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 1614 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1615 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CRYPTO_CONTEXT_BLOB * *, uint16_t, uint8_t const *, size_t, void *)
/* 1616 */ _CFFI_OP(_CFFI_OP_POINTER, 1634), // ESYS_CRYPTO_CONTEXT_BLOB * *
/* 1617 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1618 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 1619 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1620 */ _CFFI_OP(_CFFI_OP_POINTER, 3540), // void *
/* 1621 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1622 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CRYPTO_CONTEXT_BLOB * *, uint16_t, void *)
/* 1623 */ _CFFI_OP(_CFFI_OP_NOOP, 1616),
/* 1624 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 1625 */ _CFFI_OP(_CFFI_OP_NOOP, 1620),
/* 1626 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1627 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CRYPTO_CONTEXT_BLOB * *, uint8_t *, size_t *, void *)
/* 1628 */ _CFFI_OP(_CFFI_OP_NOOP, 1616),
/* 1629 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1630 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1631 */ _CFFI_OP(_CFFI_OP_NOOP, 1620),
/* 1632 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1633 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(ESYS_CRYPTO_CONTEXT_BLOB *, uint8_t const *, size_t, void *)
/* 1634 */ _CFFI_OP(_CFFI_OP_POINTER, 3272), // ESYS_CRYPTO_CONTEXT_BLOB *
/* 1635 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 1636 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1637 */ _CFFI_OP(_CFFI_OP_NOOP, 1620),
/* 1638 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1639 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_ATTEST const *, uint8_t *, size_t, size_t *)
/* 1640 */ _CFFI_OP(_CFFI_OP_POINTER, 3274), // TPM2B_ATTEST const *
/* 1641 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1642 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1643 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1644 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1645 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_CONTEXT_DATA const *, uint8_t *, size_t, size_t *)
/* 1646 */ _CFFI_OP(_CFFI_OP_POINTER, 3275), // TPM2B_CONTEXT_DATA const *
/* 1647 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1648 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1649 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1650 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1651 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_CONTEXT_SENSITIVE const *, uint8_t *, size_t, size_t *)
/* 1652 */ _CFFI_OP(_CFFI_OP_POINTER, 3276), // TPM2B_CONTEXT_SENSITIVE const *
/* 1653 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1654 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1655 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1656 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1657 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_CREATION_DATA const *, uint8_t *, size_t, size_t *)
/* 1658 */ _CFFI_OP(_CFFI_OP_POINTER, 3277), // TPM2B_CREATION_DATA const *
/* 1659 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1660 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1661 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1662 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1663 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_DATA const *, uint8_t *, size_t, size_t *)
/* 1664 */ _CFFI_OP(_CFFI_OP_NOOP, 271),
/* 1665 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1666 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1667 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1668 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1669 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_DIGEST *, size_t, void *)
/* 1670 */ _CFFI_OP(_CFFI_OP_POINTER, 3280), // TPM2B_DIGEST *
/* 1671 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1672 */ _CFFI_OP(_CFFI_OP_NOOP, 1620),
/* 1673 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1674 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_DIGEST const *, uint8_t *, size_t, size_t *)
/* 1675 */ _CFFI_OP(_CFFI_OP_NOOP, 243),
/* 1676 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1677 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1678 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1679 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1680 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_ECC_PARAMETER const *, uint8_t *, size_t, size_t *)
/* 1681 */ _CFFI_OP(_CFFI_OP_NOOP, 734),
/* 1682 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1683 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1684 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1685 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1686 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_ECC_POINT const *, uint8_t *, size_t, size_t *)
/* 1687 */ _CFFI_OP(_CFFI_OP_NOOP, 691),
/* 1688 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1689 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1690 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1691 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1692 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_ENCRYPTED_SECRET const *, uint8_t *, size_t, size_t *)
/* 1693 */ _CFFI_OP(_CFFI_OP_NOOP, 472),
/* 1694 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1695 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1696 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1697 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1698 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_EVENT const *, uint8_t *, size_t, size_t *)
/* 1699 */ _CFFI_OP(_CFFI_OP_NOOP, 756),
/* 1700 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1701 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1702 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1703 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1704 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_ID_OBJECT const *, uint8_t *, size_t, size_t *)
/* 1705 */ _CFFI_OP(_CFFI_OP_NOOP, 1277),
/* 1706 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1707 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1708 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1709 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1710 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_IV const *, uint8_t *, size_t, size_t *)
/* 1711 */ _CFFI_OP(_CFFI_OP_NOOP, 831),
/* 1712 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1713 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1714 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1715 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1716 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_MAX_BUFFER const *, uint8_t *, size_t, size_t *)
/* 1717 */ _CFFI_OP(_CFFI_OP_NOOP, 311),
/* 1718 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1719 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1720 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1721 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1722 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_MAX_CAP_BUFFER const *, uint8_t *, size_t, size_t *)
/* 1723 */ _CFFI_OP(_CFFI_OP_POINTER, 3291), // TPM2B_MAX_CAP_BUFFER const *
/* 1724 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1725 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1726 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1727 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1728 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_MAX_NV_BUFFER const *, uint8_t *, size_t, size_t *)
/* 1729 */ _CFFI_OP(_CFFI_OP_NOOP, 1317),
/* 1730 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1731 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1732 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1733 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1734 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_NAME const *, uint8_t *, size_t, size_t *)
/* 1735 */ _CFFI_OP(_CFFI_OP_NOOP, 535),
/* 1736 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1737 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1738 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1739 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1740 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_NV_PUBLIC const *, uint8_t *, size_t, size_t *)
/* 1741 */ _CFFI_OP(_CFFI_OP_NOOP, 576),
/* 1742 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1743 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1744 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1745 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1746 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_PRIVATE const *, uint8_t *, size_t, size_t *)
/* 1747 */ _CFFI_OP(_CFFI_OP_NOOP, 471),
/* 1748 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1749 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1750 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1751 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1752 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_PRIVATE_KEY_RSA const *, uint8_t *, size_t, size_t *)
/* 1753 */ _CFFI_OP(_CFFI_OP_POINTER, 3296), // TPM2B_PRIVATE_KEY_RSA const *
/* 1754 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1755 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1756 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1757 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1758 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_PUBLIC *, size_t, TPM2B_ECC_PARAMETER *, TPMS_ECC_POINT *, uint8_t *, size_t *, void *)
/* 1759 */ _CFFI_OP(_CFFI_OP_POINTER, 3298), // TPM2B_PUBLIC *
/* 1760 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1761 */ _CFFI_OP(_CFFI_OP_POINTER, 3283), // TPM2B_ECC_PARAMETER *
/* 1762 */ _CFFI_OP(_CFFI_OP_POINTER, 3344), // TPMS_ECC_POINT *
/* 1763 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1764 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1765 */ _CFFI_OP(_CFFI_OP_NOOP, 1620),
/* 1766 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1767 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_PUBLIC *, size_t, uint8_t *, size_t, uint8_t *, size_t *, char const *, void *)
/* 1768 */ _CFFI_OP(_CFFI_OP_NOOP, 1759),
/* 1769 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1770 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1771 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1772 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1773 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1774 */ _CFFI_OP(_CFFI_OP_NOOP, 10),
/* 1775 */ _CFFI_OP(_CFFI_OP_NOOP, 1620),
/* 1776 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1777 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_PUBLIC const *, uint8_t *, size_t, size_t *)
/* 1778 */ _CFFI_OP(_CFFI_OP_NOOP, 358),
/* 1779 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1780 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1781 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1782 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1783 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_PUBLIC_KEY_RSA const *, uint8_t *, size_t, size_t *)
/* 1784 */ _CFFI_OP(_CFFI_OP_NOOP, 900),
/* 1785 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1786 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1787 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1788 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1789 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_SENSITIVE const *, uint8_t *, size_t, size_t *)
/* 1790 */ _CFFI_OP(_CFFI_OP_NOOP, 357),
/* 1791 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1792 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1793 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1794 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1795 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_SENSITIVE_CREATE const *, uint8_t *, size_t, size_t *)
/* 1796 */ _CFFI_OP(_CFFI_OP_NOOP, 921),
/* 1797 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1798 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1799 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1800 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1801 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_SENSITIVE_DATA const *, uint8_t *, size_t, size_t *)
/* 1802 */ _CFFI_OP(_CFFI_OP_NOOP, 376),
/* 1803 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1804 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1805 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1806 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1807 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_SYM_KEY const *, uint8_t *, size_t, size_t *)
/* 1808 */ _CFFI_OP(_CFFI_OP_POINTER, 3303), // TPM2B_SYM_KEY const *
/* 1809 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1810 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1811 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1812 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1813 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPM2B_TEMPLATE const *, uint8_t *, size_t, size_t *)
/* 1814 */ _CFFI_OP(_CFFI_OP_NOOP, 965),
/* 1815 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1816 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1817 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1818 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1819 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPML_ACT_DATA const *, uint8_t *, size_t, size_t *)
/* 1820 */ _CFFI_OP(_CFFI_OP_POINTER, 3305), // TPML_ACT_DATA const *
/* 1821 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1822 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1823 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1824 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1825 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPML_AC_CAPABILITIES const *, uint8_t *, size_t, size_t *)
/* 1826 */ _CFFI_OP(_CFFI_OP_POINTER, 3306), // TPML_AC_CAPABILITIES const *
/* 1827 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1828 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1829 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1830 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1831 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPML_ALG const *, uint8_t *, size_t, size_t *)
/* 1832 */ _CFFI_OP(_CFFI_OP_NOOP, 383),
/* 1833 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1834 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1835 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1836 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1837 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPML_ALG_PROPERTY const *, uint8_t *, size_t, size_t *)
/* 1838 */ _CFFI_OP(_CFFI_OP_POINTER, 3308), // TPML_ALG_PROPERTY const *
/* 1839 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1840 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1841 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1842 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1843 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPML_CC const *, uint8_t *, size_t, size_t *)
/* 1844 */ _CFFI_OP(_CFFI_OP_NOOP, 993),
/* 1845 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1846 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1847 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1848 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1849 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPML_CCA const *, uint8_t *, size_t, size_t *)
/* 1850 */ _CFFI_OP(_CFFI_OP_POINTER, 3310), // TPML_CCA const *
/* 1851 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1852 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1853 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1854 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1855 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPML_DIGEST const *, uint8_t *, size_t, size_t *)
/* 1856 */ _CFFI_OP(_CFFI_OP_NOOP, 1002),
/* 1857 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1858 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1859 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1860 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1861 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPML_DIGEST_VALUES const *, uint8_t *, size_t, size_t *)
/* 1862 */ _CFFI_OP(_CFFI_OP_NOOP, 1010),
/* 1863 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1864 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1865 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1866 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1867 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPML_ECC_CURVE const *, uint8_t *, size_t, size_t *)
/* 1868 */ _CFFI_OP(_CFFI_OP_POINTER, 3313), // TPML_ECC_CURVE const *
/* 1869 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1870 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1871 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1872 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1873 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPML_HANDLE const *, uint8_t *, size_t, size_t *)
/* 1874 */ _CFFI_OP(_CFFI_OP_POINTER, 3314), // TPML_HANDLE const *
/* 1875 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1876 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1877 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1878 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1879 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPML_INTEL_PTT_PROPERTY const *, uint8_t *, size_t, size_t *)
/* 1880 */ _CFFI_OP(_CFFI_OP_POINTER, 3315), // TPML_INTEL_PTT_PROPERTY const *
/* 1881 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1882 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1883 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1884 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1885 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPML_PCR_SELECTION const *, uint8_t *, size_t, size_t *)
/* 1886 */ _CFFI_OP(_CFFI_OP_NOOP, 398),
/* 1887 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1888 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1889 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1890 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1891 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPML_TAGGED_PCR_PROPERTY const *, uint8_t *, size_t, size_t *)
/* 1892 */ _CFFI_OP(_CFFI_OP_POINTER, 3317), // TPML_TAGGED_PCR_PROPERTY const *
/* 1893 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1894 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1895 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1896 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1897 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPML_TAGGED_POLICY const *, uint8_t *, size_t, size_t *)
/* 1898 */ _CFFI_OP(_CFFI_OP_POINTER, 3318), // TPML_TAGGED_POLICY const *
/* 1899 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1900 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1901 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1902 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1903 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPML_TAGGED_TPM_PROPERTY const *, uint8_t *, size_t, size_t *)
/* 1904 */ _CFFI_OP(_CFFI_OP_POINTER, 3319), // TPML_TAGGED_TPM_PROPERTY const *
/* 1905 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1906 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1907 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1908 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1909 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_ACT_DATA const *, uint8_t *, size_t, size_t *)
/* 1910 */ _CFFI_OP(_CFFI_OP_POINTER, 3320), // TPMS_ACT_DATA const *
/* 1911 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1912 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1913 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1914 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1915 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_AC_OUTPUT const *, uint8_t *, size_t, size_t *)
/* 1916 */ _CFFI_OP(_CFFI_OP_POINTER, 3323), // TPMS_AC_OUTPUT const *
/* 1917 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1918 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1919 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1920 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1921 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_ALGORITHM_DETAIL_ECC const *, uint8_t *, size_t, size_t *)
/* 1922 */ _CFFI_OP(_CFFI_OP_POINTER, 3326), // TPMS_ALGORITHM_DETAIL_ECC const *
/* 1923 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1924 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1925 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1926 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1927 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_ALG_PROPERTY const *, uint8_t *, size_t, size_t *)
/* 1928 */ _CFFI_OP(_CFFI_OP_POINTER, 3327), // TPMS_ALG_PROPERTY const *
/* 1929 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1930 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1931 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1932 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1933 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_ATTEST const *, uint8_t *, size_t, size_t *)
/* 1934 */ _CFFI_OP(_CFFI_OP_POINTER, 3331), // TPMS_ATTEST const *
/* 1935 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1936 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1937 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1938 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1939 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_AUTH_COMMAND const *, uint8_t *, size_t, size_t *)
/* 1940 */ _CFFI_OP(_CFFI_OP_POINTER, 3332), // TPMS_AUTH_COMMAND const *
/* 1941 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1942 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1943 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1944 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1945 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_AUTH_RESPONSE const *, uint8_t *, size_t, size_t *)
/* 1946 */ _CFFI_OP(_CFFI_OP_POINTER, 3333), // TPMS_AUTH_RESPONSE const *
/* 1947 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1948 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1949 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1950 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1951 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_CAPABILITY_DATA const *, uint8_t *, size_t, size_t *)
/* 1952 */ _CFFI_OP(_CFFI_OP_POINTER, 3334), // TPMS_CAPABILITY_DATA const *
/* 1953 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1954 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1955 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1956 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1957 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_CERTIFY_INFO const *, uint8_t *, size_t, size_t *)
/* 1958 */ _CFFI_OP(_CFFI_OP_POINTER, 3335), // TPMS_CERTIFY_INFO const *
/* 1959 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1960 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1961 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1962 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1963 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_CLOCK_INFO const *, uint8_t *, size_t, size_t *)
/* 1964 */ _CFFI_OP(_CFFI_OP_POINTER, 3336), // TPMS_CLOCK_INFO const *
/* 1965 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1966 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1967 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1968 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1969 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_COMMAND_AUDIT_INFO const *, uint8_t *, size_t, size_t *)
/* 1970 */ _CFFI_OP(_CFFI_OP_POINTER, 3337), // TPMS_COMMAND_AUDIT_INFO const *
/* 1971 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1972 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1973 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1974 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1975 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_CONTEXT const *, uint8_t *, size_t, size_t *)
/* 1976 */ _CFFI_OP(_CFFI_OP_NOOP, 162),
/* 1977 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1978 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1979 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1980 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1981 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_CONTEXT_DATA const *, uint8_t *, size_t, size_t *)
/* 1982 */ _CFFI_OP(_CFFI_OP_POINTER, 3339), // TPMS_CONTEXT_DATA const *
/* 1983 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1984 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1985 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1986 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1987 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_CREATION_DATA const *, uint8_t *, size_t, size_t *)
/* 1988 */ _CFFI_OP(_CFFI_OP_POINTER, 3340), // TPMS_CREATION_DATA const *
/* 1989 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1990 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1991 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1992 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1993 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_CREATION_INFO const *, uint8_t *, size_t, size_t *)
/* 1994 */ _CFFI_OP(_CFFI_OP_POINTER, 3341), // TPMS_CREATION_INFO const *
/* 1995 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 1996 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 1997 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 1998 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 1999 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_ECC_PARMS const *, uint8_t *, size_t, size_t *)
/* 2000 */ _CFFI_OP(_CFFI_OP_POINTER, 3343), // TPMS_ECC_PARMS const *
/* 2001 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2002 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2003 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2004 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2005 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_ECC_POINT const *, uint8_t *, size_t, size_t *)
/* 2006 */ _CFFI_OP(_CFFI_OP_POINTER, 3344), // TPMS_ECC_POINT const *
/* 2007 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2008 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2009 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2010 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2011 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_EMPTY const *, uint8_t *, size_t, size_t *)
/* 2012 */ _CFFI_OP(_CFFI_OP_POINTER, 3345), // TPMS_EMPTY const *
/* 2013 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2014 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2015 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2016 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2017 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_ID_OBJECT const *, uint8_t *, size_t, size_t *)
/* 2018 */ _CFFI_OP(_CFFI_OP_POINTER, 3346), // TPMS_ID_OBJECT const *
/* 2019 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2020 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2021 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2022 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2023 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_KEYEDHASH_PARMS const *, uint8_t *, size_t, size_t *)
/* 2024 */ _CFFI_OP(_CFFI_OP_POINTER, 3347), // TPMS_KEYEDHASH_PARMS const *
/* 2025 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2026 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2027 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2028 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2029 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_NV_CERTIFY_INFO const *, uint8_t *, size_t, size_t *)
/* 2030 */ _CFFI_OP(_CFFI_OP_POINTER, 3348), // TPMS_NV_CERTIFY_INFO const *
/* 2031 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2032 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2033 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2034 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2035 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_NV_DIGEST_CERTIFY_INFO const *, uint8_t *, size_t, size_t *)
/* 2036 */ _CFFI_OP(_CFFI_OP_POINTER, 3349), // TPMS_NV_DIGEST_CERTIFY_INFO const *
/* 2037 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2038 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2039 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2040 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2041 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_NV_PIN_COUNTER_PARAMETERS const *, uint8_t *, size_t, size_t *)
/* 2042 */ _CFFI_OP(_CFFI_OP_POINTER, 3350), // TPMS_NV_PIN_COUNTER_PARAMETERS const *
/* 2043 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2044 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2045 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2046 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2047 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_NV_PUBLIC const *, uint8_t *, size_t, size_t *)
/* 2048 */ _CFFI_OP(_CFFI_OP_POINTER, 3351), // TPMS_NV_PUBLIC const *
/* 2049 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2050 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2051 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2052 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2053 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_PCR_SELECT const *, uint8_t *, size_t, size_t *)
/* 2054 */ _CFFI_OP(_CFFI_OP_POINTER, 3352), // TPMS_PCR_SELECT const *
/* 2055 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2056 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2057 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2058 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2059 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_PCR_SELECTION const *, uint8_t *, size_t, size_t *)
/* 2060 */ _CFFI_OP(_CFFI_OP_POINTER, 3353), // TPMS_PCR_SELECTION const *
/* 2061 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2062 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2063 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2064 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2065 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_QUOTE_INFO const *, uint8_t *, size_t, size_t *)
/* 2066 */ _CFFI_OP(_CFFI_OP_POINTER, 3356), // TPMS_QUOTE_INFO const *
/* 2067 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2068 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2069 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2070 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2071 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_RSA_PARMS const *, uint8_t *, size_t, size_t *)
/* 2072 */ _CFFI_OP(_CFFI_OP_POINTER, 3357), // TPMS_RSA_PARMS const *
/* 2073 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2074 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2075 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2076 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2077 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_SCHEME_ECDAA const *, uint8_t *, size_t, size_t *)
/* 2078 */ _CFFI_OP(_CFFI_OP_POINTER, 3358), // TPMS_SCHEME_ECDAA const *
/* 2079 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2080 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2081 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2082 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2083 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_SCHEME_HASH const *, uint8_t *, size_t, size_t *)
/* 2084 */ _CFFI_OP(_CFFI_OP_POINTER, 3359), // TPMS_SCHEME_HASH const *
/* 2085 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2086 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2087 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2088 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2089 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_SCHEME_XOR const *, uint8_t *, size_t, size_t *)
/* 2090 */ _CFFI_OP(_CFFI_OP_POINTER, 3360), // TPMS_SCHEME_XOR const *
/* 2091 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2092 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2093 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2094 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2095 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_SENSITIVE_CREATE const *, uint8_t *, size_t, size_t *)
/* 2096 */ _CFFI_OP(_CFFI_OP_POINTER, 3361), // TPMS_SENSITIVE_CREATE const *
/* 2097 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2098 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2099 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2100 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2101 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_SESSION_AUDIT_INFO const *, uint8_t *, size_t, size_t *)
/* 2102 */ _CFFI_OP(_CFFI_OP_POINTER, 3362), // TPMS_SESSION_AUDIT_INFO const *
/* 2103 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2104 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2105 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2106 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2107 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_SIGNATURE_ECC const *, uint8_t *, size_t, size_t *)
/* 2108 */ _CFFI_OP(_CFFI_OP_POINTER, 3363), // TPMS_SIGNATURE_ECC const *
/* 2109 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2110 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2111 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2112 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2113 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_SIGNATURE_RSA const *, uint8_t *, size_t, size_t *)
/* 2114 */ _CFFI_OP(_CFFI_OP_POINTER, 3364), // TPMS_SIGNATURE_RSA const *
/* 2115 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2116 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2117 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2118 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2119 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_SYMCIPHER_PARMS const *, uint8_t *, size_t, size_t *)
/* 2120 */ _CFFI_OP(_CFFI_OP_POINTER, 3365), // TPMS_SYMCIPHER_PARMS const *
/* 2121 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2122 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2123 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2124 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2125 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_TAGGED_PCR_SELECT const *, uint8_t *, size_t, size_t *)
/* 2126 */ _CFFI_OP(_CFFI_OP_POINTER, 3366), // TPMS_TAGGED_PCR_SELECT const *
/* 2127 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2128 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2129 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2130 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2131 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_TAGGED_POLICY const *, uint8_t *, size_t, size_t *)
/* 2132 */ _CFFI_OP(_CFFI_OP_POINTER, 3369), // TPMS_TAGGED_POLICY const *
/* 2133 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2134 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2135 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2136 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2137 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_TAGGED_PROPERTY const *, uint8_t *, size_t, size_t *)
/* 2138 */ _CFFI_OP(_CFFI_OP_POINTER, 3372), // TPMS_TAGGED_PROPERTY const *
/* 2139 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2140 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2141 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2142 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2143 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_TIME_ATTEST_INFO const *, uint8_t *, size_t, size_t *)
/* 2144 */ _CFFI_OP(_CFFI_OP_POINTER, 3375), // TPMS_TIME_ATTEST_INFO const *
/* 2145 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2146 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2147 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2148 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2149 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMS_TIME_INFO const *, uint8_t *, size_t, size_t *)
/* 2150 */ _CFFI_OP(_CFFI_OP_POINTER, 3376), // TPMS_TIME_INFO const *
/* 2151 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2152 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2153 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2154 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2155 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_ASYM_SCHEME const *, uint8_t *, size_t, size_t *)
/* 2156 */ _CFFI_OP(_CFFI_OP_POINTER, 3377), // TPMT_ASYM_SCHEME const *
/* 2157 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2158 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2159 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2160 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2161 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_ECC_SCHEME const *, uint8_t *, size_t, size_t *)
/* 2162 */ _CFFI_OP(_CFFI_OP_POINTER, 3378), // TPMT_ECC_SCHEME const *
/* 2163 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2164 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2165 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2166 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2167 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_HA const *, uint8_t *, size_t, size_t *)
/* 2168 */ _CFFI_OP(_CFFI_OP_POINTER, 3379), // TPMT_HA const *
/* 2169 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2170 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2171 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2172 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2173 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_KDF_SCHEME const *, uint8_t *, size_t, size_t *)
/* 2174 */ _CFFI_OP(_CFFI_OP_POINTER, 3382), // TPMT_KDF_SCHEME const *
/* 2175 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2176 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2177 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2178 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2179 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_KEYEDHASH_SCHEME const *, uint8_t *, size_t, size_t *)
/* 2180 */ _CFFI_OP(_CFFI_OP_POINTER, 3383), // TPMT_KEYEDHASH_SCHEME const *
/* 2181 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2182 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2183 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2184 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2185 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_PUBLIC const *, uint8_t *, size_t, size_t *)
/* 2186 */ _CFFI_OP(_CFFI_OP_POINTER, 3384), // TPMT_PUBLIC const *
/* 2187 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2188 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2189 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2190 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2191 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_PUBLIC_PARMS const *, uint8_t *, size_t, size_t *)
/* 2192 */ _CFFI_OP(_CFFI_OP_NOOP, 422),
/* 2193 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2194 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2195 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2196 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2197 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_RSA_DECRYPT const *, uint8_t *, size_t, size_t *)
/* 2198 */ _CFFI_OP(_CFFI_OP_NOOP, 901),
/* 2199 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2200 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2201 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2202 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2203 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_RSA_SCHEME const *, uint8_t *, size_t, size_t *)
/* 2204 */ _CFFI_OP(_CFFI_OP_POINTER, 3387), // TPMT_RSA_SCHEME const *
/* 2205 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2206 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2207 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2208 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2209 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_SENSITIVE const *, uint8_t *, size_t, size_t *)
/* 2210 */ _CFFI_OP(_CFFI_OP_POINTER, 3388), // TPMT_SENSITIVE const *
/* 2211 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2212 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2213 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2214 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2215 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_SIGNATURE const *, uint8_t *, size_t, size_t *)
/* 2216 */ _CFFI_OP(_CFFI_OP_NOOP, 604),
/* 2217 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2218 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2219 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2220 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2221 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_SIG_SCHEME const *, uint8_t *, size_t, size_t *)
/* 2222 */ _CFFI_OP(_CFFI_OP_NOOP, 495),
/* 2223 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2224 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2225 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2226 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2227 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_SYM_DEF const *, uint8_t *, size_t, size_t *)
/* 2228 */ _CFFI_OP(_CFFI_OP_NOOP, 1254),
/* 2229 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2230 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2231 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2232 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2233 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_SYM_DEF_OBJECT const *, uint8_t *, size_t, size_t *)
/* 2234 */ _CFFI_OP(_CFFI_OP_NOOP, 473),
/* 2235 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2236 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2237 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2238 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2239 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_TK_AUTH const *, uint8_t *, size_t, size_t *)
/* 2240 */ _CFFI_OP(_CFFI_OP_NOOP, 536),
/* 2241 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2242 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2243 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2244 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2245 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_TK_CREATION const *, uint8_t *, size_t, size_t *)
/* 2246 */ _CFFI_OP(_CFFI_OP_NOOP, 1076),
/* 2247 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2248 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2249 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2250 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2251 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_TK_HASHCHECK const *, uint8_t *, size_t, size_t *)
/* 2252 */ _CFFI_OP(_CFFI_OP_NOOP, 624),
/* 2253 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2254 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2255 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2256 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2257 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMT_TK_VERIFIED const *, uint8_t *, size_t, size_t *)
/* 2258 */ _CFFI_OP(_CFFI_OP_NOOP, 547),
/* 2259 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2260 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2261 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2262 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2263 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMU_ASYM_SCHEME const *, uint32_t, uint8_t *, size_t, size_t *)
/* 2264 */ _CFFI_OP(_CFFI_OP_POINTER, 3397), // TPMU_ASYM_SCHEME const *
/* 2265 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2266 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2267 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2268 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2269 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2270 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMU_ATTEST const *, uint32_t, uint8_t *, size_t, size_t *)
/* 2271 */ _CFFI_OP(_CFFI_OP_POINTER, 3398), // TPMU_ATTEST const *
/* 2272 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2273 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2274 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2275 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2276 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2277 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMU_CAPABILITIES const *, uint32_t, uint8_t *, size_t, size_t *)
/* 2278 */ _CFFI_OP(_CFFI_OP_POINTER, 3399), // TPMU_CAPABILITIES const *
/* 2279 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2280 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2281 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2282 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2283 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2284 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMU_ENCRYPTED_SECRET const *, uint32_t, uint8_t *, size_t, size_t *)
/* 2285 */ _CFFI_OP(_CFFI_OP_POINTER, 3400), // TPMU_ENCRYPTED_SECRET const *
/* 2286 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2287 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2288 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2289 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2290 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2291 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMU_HA const *, uint32_t, uint8_t *, size_t, size_t *)
/* 2292 */ _CFFI_OP(_CFFI_OP_POINTER, 3401), // TPMU_HA const *
/* 2293 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2294 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2295 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2296 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2297 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2298 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMU_KDF_SCHEME const *, uint32_t, uint8_t *, size_t, size_t *)
/* 2299 */ _CFFI_OP(_CFFI_OP_POINTER, 3402), // TPMU_KDF_SCHEME const *
/* 2300 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2301 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2302 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2303 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2304 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2305 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMU_NAME const *, uint32_t, uint8_t *, size_t, size_t *)
/* 2306 */ _CFFI_OP(_CFFI_OP_POINTER, 3403), // TPMU_NAME const *
/* 2307 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2308 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2309 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2310 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2311 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2312 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMU_PUBLIC_ID const *, uint32_t, uint8_t *, size_t, size_t *)
/* 2313 */ _CFFI_OP(_CFFI_OP_POINTER, 3404), // TPMU_PUBLIC_ID const *
/* 2314 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2315 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2316 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2317 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2318 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2319 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMU_PUBLIC_PARMS const *, uint32_t, uint8_t *, size_t, size_t *)
/* 2320 */ _CFFI_OP(_CFFI_OP_POINTER, 3405), // TPMU_PUBLIC_PARMS const *
/* 2321 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2322 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2323 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2324 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2325 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2326 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMU_SCHEME_KEYEDHASH const *, uint32_t, uint8_t *, size_t, size_t *)
/* 2327 */ _CFFI_OP(_CFFI_OP_POINTER, 3406), // TPMU_SCHEME_KEYEDHASH const *
/* 2328 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2329 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2330 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2331 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2332 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2333 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMU_SENSITIVE_COMPOSITE const *, uint32_t, uint8_t *, size_t, size_t *)
/* 2334 */ _CFFI_OP(_CFFI_OP_POINTER, 3407), // TPMU_SENSITIVE_COMPOSITE const *
/* 2335 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2336 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2337 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2338 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2339 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2340 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMU_SIGNATURE const *, uint32_t, uint8_t *, size_t, size_t *)
/* 2341 */ _CFFI_OP(_CFFI_OP_POINTER, 3409), // TPMU_SIGNATURE const *
/* 2342 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2343 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2344 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2345 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2346 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2347 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMU_SIG_SCHEME const *, uint32_t, uint8_t *, size_t, size_t *)
/* 2348 */ _CFFI_OP(_CFFI_OP_POINTER, 3410), // TPMU_SIG_SCHEME const *
/* 2349 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2350 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2351 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2352 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2353 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2354 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMU_SYM_KEY_BITS const *, uint32_t, uint8_t *, size_t, size_t *)
/* 2355 */ _CFFI_OP(_CFFI_OP_POINTER, 3411), // TPMU_SYM_KEY_BITS const *
/* 2356 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2357 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2358 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2359 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2360 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2361 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TPMU_SYM_MODE const *, uint32_t, uint8_t *, size_t, size_t *)
/* 2362 */ _CFFI_OP(_CFFI_OP_POINTER, 3412), // TPMU_SYM_MODE const *
/* 2363 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2364 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2365 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2366 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2367 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2368 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TSS2_TCTI_CONTEXT *)
/* 2369 */ _CFFI_OP(_CFFI_OP_NOOP, 15),
/* 2370 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2371 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TSS2_TCTI_CONTEXT *, TSS2_TCTI_POLL_HANDLE *, size_t *)
/* 2372 */ _CFFI_OP(_CFFI_OP_NOOP, 15),
/* 2373 */ _CFFI_OP(_CFFI_OP_POINTER, 3424), // TSS2_TCTI_POLL_HANDLE *
/* 2374 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2375 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2376 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TSS2_TCTI_CONTEXT *, size_t *, TSS2_TCTI_SPI_HELPER_PLATFORM *)
/* 2377 */ _CFFI_OP(_CFFI_OP_NOOP, 15),
/* 2378 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2379 */ _CFFI_OP(_CFFI_OP_POINTER, 3425), // TSS2_TCTI_SPI_HELPER_PLATFORM *
/* 2380 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2381 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TSS2_TCTI_CONTEXT *, size_t *, char const *)
/* 2382 */ _CFFI_OP(_CFFI_OP_NOOP, 15),
/* 2383 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2384 */ _CFFI_OP(_CFFI_OP_NOOP, 10),
/* 2385 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2386 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TSS2_TCTI_CONTEXT *, size_t *, uint8_t *, int32_t)
/* 2387 */ _CFFI_OP(_CFFI_OP_NOOP, 15),
/* 2388 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2389 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2390 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 21),
/* 2391 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2392 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TSS2_TCTI_CONTEXT *, size_t, uint8_t const *)
/* 2393 */ _CFFI_OP(_CFFI_OP_NOOP, 15),
/* 2394 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2395 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2396 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2397 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TSS2_TCTI_CONTEXT *, uint32_t *, uint8_t)
/* 2398 */ _CFFI_OP(_CFFI_OP_NOOP, 15),
/* 2399 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 2400 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18),
/* 2401 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2402 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(TSS2_TCTI_CONTEXT *, uint8_t)
/* 2403 */ _CFFI_OP(_CFFI_OP_NOOP, 15),
/* 2404 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18),
/* 2405 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2406 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(char const *, TSS2_TCTI_CONTEXT * *)
/* 2407 */ _CFFI_OP(_CFFI_OP_NOOP, 10),
/* 2408 */ _CFFI_OP(_CFFI_OP_NOOP, 192),
/* 2409 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2410 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(char const *, TSS2_TCTI_INFO * *)
/* 2411 */ _CFFI_OP(_CFFI_OP_NOOP, 10),
/* 2412 */ _CFFI_OP(_CFFI_OP_POINTER, 3420), // TSS2_TCTI_INFO * *
/* 2413 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2414 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(char const *, char const *, TSS2_TCTI_CONTEXT * *)
/* 2415 */ _CFFI_OP(_CFFI_OP_NOOP, 10),
/* 2416 */ _CFFI_OP(_CFFI_OP_NOOP, 10),
/* 2417 */ _CFFI_OP(_CFFI_OP_NOOP, 192),
/* 2418 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2419 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(int16_t, uint8_t *, size_t, size_t *)
/* 2420 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 19), // int16_t
/* 2421 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2422 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2423 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2424 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2425 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(int32_t, uint8_t *, size_t, size_t *)
/* 2426 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 21),
/* 2427 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2428 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2429 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2430 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2431 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(int64_t, uint8_t *, size_t, size_t *)
/* 2432 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 23), // int64_t
/* 2433 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2434 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2435 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2436 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2437 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(int8_t, uint8_t *, size_t, size_t *)
/* 2438 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 17),
/* 2439 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2440 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2441 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2442 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2443 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint16_t, uint8_t *, size_t, size_t *)
/* 2444 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 2445 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2446 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2447 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2448 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2449 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint32_t, TSS2_RC_INFO *)
/* 2450 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2451 */ _CFFI_OP(_CFFI_OP_NOOP, 3),
/* 2452 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2453 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint32_t, uint8_t *, size_t, size_t *)
/* 2454 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 2455 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2456 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2457 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2458 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2459 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint64_t, uint8_t *, size_t, size_t *)
/* 2460 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 24),
/* 2461 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2462 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2463 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2464 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2465 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t *, uint16_t, uint16_t, uint16_t, uint8_t *, size_t, uint8_t *, void *)
/* 2466 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2467 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 2468 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 2469 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 20),
/* 2470 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2471 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2472 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 2473 */ _CFFI_OP(_CFFI_OP_NOOP, 1620),
/* 2474 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2475 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_ATTEST *)
/* 2476 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2477 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2478 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2479 */ _CFFI_OP(_CFFI_OP_POINTER, 3274), // TPM2B_ATTEST *
/* 2480 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2481 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_CONTEXT_DATA *)
/* 2482 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2483 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2484 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2485 */ _CFFI_OP(_CFFI_OP_POINTER, 3275), // TPM2B_CONTEXT_DATA *
/* 2486 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2487 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_CONTEXT_SENSITIVE *)
/* 2488 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2489 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2490 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2491 */ _CFFI_OP(_CFFI_OP_POINTER, 3276), // TPM2B_CONTEXT_SENSITIVE *
/* 2492 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2493 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_CREATION_DATA *)
/* 2494 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2495 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2496 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2497 */ _CFFI_OP(_CFFI_OP_POINTER, 3277), // TPM2B_CREATION_DATA *
/* 2498 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2499 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_DATA *)
/* 2500 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2501 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2502 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2503 */ _CFFI_OP(_CFFI_OP_POINTER, 3278), // TPM2B_DATA *
/* 2504 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2505 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_DIGEST *)
/* 2506 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2507 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2508 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2509 */ _CFFI_OP(_CFFI_OP_NOOP, 1670),
/* 2510 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2511 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_ECC_PARAMETER *)
/* 2512 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2513 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2514 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2515 */ _CFFI_OP(_CFFI_OP_NOOP, 1761),
/* 2516 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2517 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_ECC_POINT *)
/* 2518 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2519 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2520 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2521 */ _CFFI_OP(_CFFI_OP_POINTER, 3284), // TPM2B_ECC_POINT *
/* 2522 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2523 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_ENCRYPTED_SECRET *)
/* 2524 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2525 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2526 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2527 */ _CFFI_OP(_CFFI_OP_POINTER, 3285), // TPM2B_ENCRYPTED_SECRET *
/* 2528 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2529 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_EVENT *)
/* 2530 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2531 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2532 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2533 */ _CFFI_OP(_CFFI_OP_POINTER, 3286), // TPM2B_EVENT *
/* 2534 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2535 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_ID_OBJECT *)
/* 2536 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2537 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2538 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2539 */ _CFFI_OP(_CFFI_OP_POINTER, 3287), // TPM2B_ID_OBJECT *
/* 2540 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2541 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_IV *)
/* 2542 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2543 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2544 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2545 */ _CFFI_OP(_CFFI_OP_POINTER, 3288), // TPM2B_IV *
/* 2546 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2547 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_MAX_BUFFER *)
/* 2548 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2549 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2550 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2551 */ _CFFI_OP(_CFFI_OP_NOOP, 1455),
/* 2552 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2553 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_MAX_CAP_BUFFER *)
/* 2554 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2555 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2556 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2557 */ _CFFI_OP(_CFFI_OP_POINTER, 3291), // TPM2B_MAX_CAP_BUFFER *
/* 2558 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2559 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_MAX_NV_BUFFER *)
/* 2560 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2561 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2562 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2563 */ _CFFI_OP(_CFFI_OP_POINTER, 3292), // TPM2B_MAX_NV_BUFFER *
/* 2564 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2565 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_NAME *)
/* 2566 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2567 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2568 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2569 */ _CFFI_OP(_CFFI_OP_NOOP, 347),
/* 2570 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2571 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_NV_PUBLIC *)
/* 2572 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2573 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2574 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2575 */ _CFFI_OP(_CFFI_OP_POINTER, 3294), // TPM2B_NV_PUBLIC *
/* 2576 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2577 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_PRIVATE *)
/* 2578 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2579 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2580 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2581 */ _CFFI_OP(_CFFI_OP_POINTER, 3295), // TPM2B_PRIVATE *
/* 2582 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2583 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_PRIVATE_KEY_RSA *)
/* 2584 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2585 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2586 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2587 */ _CFFI_OP(_CFFI_OP_POINTER, 3296), // TPM2B_PRIVATE_KEY_RSA *
/* 2588 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2589 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_PUBLIC *)
/* 2590 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2591 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2592 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2593 */ _CFFI_OP(_CFFI_OP_NOOP, 1759),
/* 2594 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2595 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_PUBLIC_KEY_RSA *)
/* 2596 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2597 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2598 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2599 */ _CFFI_OP(_CFFI_OP_POINTER, 3299), // TPM2B_PUBLIC_KEY_RSA *
/* 2600 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2601 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_SENSITIVE *)
/* 2602 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2603 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2604 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2605 */ _CFFI_OP(_CFFI_OP_POINTER, 3300), // TPM2B_SENSITIVE *
/* 2606 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2607 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_SENSITIVE_CREATE *)
/* 2608 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2609 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2610 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2611 */ _CFFI_OP(_CFFI_OP_POINTER, 3301), // TPM2B_SENSITIVE_CREATE *
/* 2612 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2613 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_SENSITIVE_DATA *)
/* 2614 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2615 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2616 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2617 */ _CFFI_OP(_CFFI_OP_POINTER, 3302), // TPM2B_SENSITIVE_DATA *
/* 2618 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2619 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_SYM_KEY *)
/* 2620 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2621 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2622 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2623 */ _CFFI_OP(_CFFI_OP_POINTER, 3303), // TPM2B_SYM_KEY *
/* 2624 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2625 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPM2B_TEMPLATE *)
/* 2626 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2627 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2628 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2629 */ _CFFI_OP(_CFFI_OP_POINTER, 3304), // TPM2B_TEMPLATE *
/* 2630 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2631 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPML_ACT_DATA *)
/* 2632 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2633 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2634 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2635 */ _CFFI_OP(_CFFI_OP_POINTER, 3305), // TPML_ACT_DATA *
/* 2636 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2637 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPML_AC_CAPABILITIES *)
/* 2638 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2639 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2640 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2641 */ _CFFI_OP(_CFFI_OP_POINTER, 3306), // TPML_AC_CAPABILITIES *
/* 2642 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2643 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPML_ALG *)
/* 2644 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2645 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2646 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2647 */ _CFFI_OP(_CFFI_OP_POINTER, 3307), // TPML_ALG *
/* 2648 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2649 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPML_ALG_PROPERTY *)
/* 2650 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2651 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2652 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2653 */ _CFFI_OP(_CFFI_OP_POINTER, 3308), // TPML_ALG_PROPERTY *
/* 2654 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2655 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPML_CC *)
/* 2656 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2657 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2658 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2659 */ _CFFI_OP(_CFFI_OP_POINTER, 3309), // TPML_CC *
/* 2660 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2661 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPML_CCA *)
/* 2662 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2663 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2664 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2665 */ _CFFI_OP(_CFFI_OP_POINTER, 3310), // TPML_CCA *
/* 2666 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2667 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPML_DIGEST *)
/* 2668 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2669 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2670 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2671 */ _CFFI_OP(_CFFI_OP_POINTER, 3311), // TPML_DIGEST *
/* 2672 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2673 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPML_DIGEST_VALUES *)
/* 2674 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2675 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2676 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2677 */ _CFFI_OP(_CFFI_OP_POINTER, 3312), // TPML_DIGEST_VALUES *
/* 2678 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2679 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPML_ECC_CURVE *)
/* 2680 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2681 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2682 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2683 */ _CFFI_OP(_CFFI_OP_POINTER, 3313), // TPML_ECC_CURVE *
/* 2684 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2685 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPML_HANDLE *)
/* 2686 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2687 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2688 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2689 */ _CFFI_OP(_CFFI_OP_POINTER, 3314), // TPML_HANDLE *
/* 2690 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2691 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPML_INTEL_PTT_PROPERTY *)
/* 2692 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2693 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2694 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2695 */ _CFFI_OP(_CFFI_OP_POINTER, 3315), // TPML_INTEL_PTT_PROPERTY *
/* 2696 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2697 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPML_PCR_SELECTION *)
/* 2698 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2699 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2700 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2701 */ _CFFI_OP(_CFFI_OP_POINTER, 3316), // TPML_PCR_SELECTION *
/* 2702 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2703 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPML_TAGGED_PCR_PROPERTY *)
/* 2704 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2705 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2706 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2707 */ _CFFI_OP(_CFFI_OP_POINTER, 3317), // TPML_TAGGED_PCR_PROPERTY *
/* 2708 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2709 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPML_TAGGED_POLICY *)
/* 2710 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2711 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2712 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2713 */ _CFFI_OP(_CFFI_OP_POINTER, 3318), // TPML_TAGGED_POLICY *
/* 2714 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2715 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPML_TAGGED_TPM_PROPERTY *)
/* 2716 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2717 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2718 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2719 */ _CFFI_OP(_CFFI_OP_POINTER, 3319), // TPML_TAGGED_TPM_PROPERTY *
/* 2720 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2721 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_ACT_DATA *)
/* 2722 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2723 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2724 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2725 */ _CFFI_OP(_CFFI_OP_POINTER, 3320), // TPMS_ACT_DATA *
/* 2726 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2727 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_AC_OUTPUT *)
/* 2728 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2729 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2730 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2731 */ _CFFI_OP(_CFFI_OP_POINTER, 3323), // TPMS_AC_OUTPUT *
/* 2732 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2733 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_ALGORITHM_DETAIL_ECC *)
/* 2734 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2735 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2736 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2737 */ _CFFI_OP(_CFFI_OP_POINTER, 3326), // TPMS_ALGORITHM_DETAIL_ECC *
/* 2738 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2739 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_ALG_PROPERTY *)
/* 2740 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2741 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2742 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2743 */ _CFFI_OP(_CFFI_OP_POINTER, 3327), // TPMS_ALG_PROPERTY *
/* 2744 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2745 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_ATTEST *)
/* 2746 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2747 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2748 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2749 */ _CFFI_OP(_CFFI_OP_POINTER, 3331), // TPMS_ATTEST *
/* 2750 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2751 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_AUTH_COMMAND *)
/* 2752 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2753 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2754 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2755 */ _CFFI_OP(_CFFI_OP_POINTER, 3332), // TPMS_AUTH_COMMAND *
/* 2756 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2757 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_AUTH_RESPONSE *)
/* 2758 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2759 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2760 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2761 */ _CFFI_OP(_CFFI_OP_POINTER, 3333), // TPMS_AUTH_RESPONSE *
/* 2762 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2763 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_CAPABILITY_DATA *)
/* 2764 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2765 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2766 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2767 */ _CFFI_OP(_CFFI_OP_POINTER, 3334), // TPMS_CAPABILITY_DATA *
/* 2768 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2769 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_CERTIFY_INFO *)
/* 2770 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2771 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2772 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2773 */ _CFFI_OP(_CFFI_OP_POINTER, 3335), // TPMS_CERTIFY_INFO *
/* 2774 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2775 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_CLOCK_INFO *)
/* 2776 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2777 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2778 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2779 */ _CFFI_OP(_CFFI_OP_POINTER, 3336), // TPMS_CLOCK_INFO *
/* 2780 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2781 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_COMMAND_AUDIT_INFO *)
/* 2782 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2783 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2784 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2785 */ _CFFI_OP(_CFFI_OP_POINTER, 3337), // TPMS_COMMAND_AUDIT_INFO *
/* 2786 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2787 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_CONTEXT *)
/* 2788 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2789 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2790 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2791 */ _CFFI_OP(_CFFI_OP_POINTER, 3338), // TPMS_CONTEXT *
/* 2792 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2793 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_CONTEXT_DATA *)
/* 2794 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2795 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2796 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2797 */ _CFFI_OP(_CFFI_OP_POINTER, 3339), // TPMS_CONTEXT_DATA *
/* 2798 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2799 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_CREATION_DATA *)
/* 2800 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2801 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2802 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2803 */ _CFFI_OP(_CFFI_OP_POINTER, 3340), // TPMS_CREATION_DATA *
/* 2804 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2805 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_CREATION_INFO *)
/* 2806 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2807 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2808 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2809 */ _CFFI_OP(_CFFI_OP_POINTER, 3341), // TPMS_CREATION_INFO *
/* 2810 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2811 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_ECC_PARMS *)
/* 2812 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2813 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2814 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2815 */ _CFFI_OP(_CFFI_OP_POINTER, 3343), // TPMS_ECC_PARMS *
/* 2816 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2817 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_ECC_POINT *)
/* 2818 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2819 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2820 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2821 */ _CFFI_OP(_CFFI_OP_NOOP, 1762),
/* 2822 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2823 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_EMPTY *)
/* 2824 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2825 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2826 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2827 */ _CFFI_OP(_CFFI_OP_POINTER, 3345), // TPMS_EMPTY *
/* 2828 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2829 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_ID_OBJECT *)
/* 2830 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2831 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2832 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2833 */ _CFFI_OP(_CFFI_OP_POINTER, 3346), // TPMS_ID_OBJECT *
/* 2834 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2835 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_KEYEDHASH_PARMS *)
/* 2836 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2837 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2838 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2839 */ _CFFI_OP(_CFFI_OP_POINTER, 3347), // TPMS_KEYEDHASH_PARMS *
/* 2840 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2841 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_NV_CERTIFY_INFO *)
/* 2842 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2843 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2844 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2845 */ _CFFI_OP(_CFFI_OP_POINTER, 3348), // TPMS_NV_CERTIFY_INFO *
/* 2846 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2847 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_NV_DIGEST_CERTIFY_INFO *)
/* 2848 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2849 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2850 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2851 */ _CFFI_OP(_CFFI_OP_POINTER, 3349), // TPMS_NV_DIGEST_CERTIFY_INFO *
/* 2852 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2853 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_NV_PIN_COUNTER_PARAMETERS *)
/* 2854 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2855 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2856 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2857 */ _CFFI_OP(_CFFI_OP_POINTER, 3350), // TPMS_NV_PIN_COUNTER_PARAMETERS *
/* 2858 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2859 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_NV_PUBLIC *)
/* 2860 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2861 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2862 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2863 */ _CFFI_OP(_CFFI_OP_POINTER, 3351), // TPMS_NV_PUBLIC *
/* 2864 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2865 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_PCR_SELECT *)
/* 2866 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2867 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2868 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2869 */ _CFFI_OP(_CFFI_OP_POINTER, 3352), // TPMS_PCR_SELECT *
/* 2870 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2871 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_PCR_SELECTION *)
/* 2872 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2873 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2874 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2875 */ _CFFI_OP(_CFFI_OP_POINTER, 3353), // TPMS_PCR_SELECTION *
/* 2876 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2877 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_QUOTE_INFO *)
/* 2878 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2879 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2880 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2881 */ _CFFI_OP(_CFFI_OP_POINTER, 3356), // TPMS_QUOTE_INFO *
/* 2882 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2883 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_RSA_PARMS *)
/* 2884 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2885 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2886 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2887 */ _CFFI_OP(_CFFI_OP_POINTER, 3357), // TPMS_RSA_PARMS *
/* 2888 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2889 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_SCHEME_ECDAA *)
/* 2890 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2891 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2892 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2893 */ _CFFI_OP(_CFFI_OP_POINTER, 3358), // TPMS_SCHEME_ECDAA *
/* 2894 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2895 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_SCHEME_HASH *)
/* 2896 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2897 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2898 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2899 */ _CFFI_OP(_CFFI_OP_POINTER, 3359), // TPMS_SCHEME_HASH *
/* 2900 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2901 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_SCHEME_XOR *)
/* 2902 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2903 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2904 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2905 */ _CFFI_OP(_CFFI_OP_POINTER, 3360), // TPMS_SCHEME_XOR *
/* 2906 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2907 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_SENSITIVE_CREATE *)
/* 2908 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2909 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2910 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2911 */ _CFFI_OP(_CFFI_OP_POINTER, 3361), // TPMS_SENSITIVE_CREATE *
/* 2912 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2913 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_SESSION_AUDIT_INFO *)
/* 2914 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2915 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2916 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2917 */ _CFFI_OP(_CFFI_OP_POINTER, 3362), // TPMS_SESSION_AUDIT_INFO *
/* 2918 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2919 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_SIGNATURE_ECC *)
/* 2920 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2921 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2922 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2923 */ _CFFI_OP(_CFFI_OP_POINTER, 3363), // TPMS_SIGNATURE_ECC *
/* 2924 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2925 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_SIGNATURE_RSA *)
/* 2926 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2927 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2928 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2929 */ _CFFI_OP(_CFFI_OP_POINTER, 3364), // TPMS_SIGNATURE_RSA *
/* 2930 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2931 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_SYMCIPHER_PARMS *)
/* 2932 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2933 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2934 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2935 */ _CFFI_OP(_CFFI_OP_POINTER, 3365), // TPMS_SYMCIPHER_PARMS *
/* 2936 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2937 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_TAGGED_PCR_SELECT *)
/* 2938 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2939 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2940 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2941 */ _CFFI_OP(_CFFI_OP_POINTER, 3366), // TPMS_TAGGED_PCR_SELECT *
/* 2942 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2943 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_TAGGED_POLICY *)
/* 2944 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2945 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2946 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2947 */ _CFFI_OP(_CFFI_OP_POINTER, 3369), // TPMS_TAGGED_POLICY *
/* 2948 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2949 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_TAGGED_PROPERTY *)
/* 2950 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2951 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2952 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2953 */ _CFFI_OP(_CFFI_OP_POINTER, 3372), // TPMS_TAGGED_PROPERTY *
/* 2954 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2955 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_TIME_ATTEST_INFO *)
/* 2956 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2957 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2958 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2959 */ _CFFI_OP(_CFFI_OP_POINTER, 3375), // TPMS_TIME_ATTEST_INFO *
/* 2960 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2961 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMS_TIME_INFO *)
/* 2962 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2963 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2964 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2965 */ _CFFI_OP(_CFFI_OP_POINTER, 3376), // TPMS_TIME_INFO *
/* 2966 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2967 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_ASYM_SCHEME *)
/* 2968 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2969 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2970 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2971 */ _CFFI_OP(_CFFI_OP_POINTER, 3377), // TPMT_ASYM_SCHEME *
/* 2972 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2973 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_ECC_SCHEME *)
/* 2974 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2975 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2976 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2977 */ _CFFI_OP(_CFFI_OP_POINTER, 3378), // TPMT_ECC_SCHEME *
/* 2978 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2979 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_HA *)
/* 2980 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2981 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2982 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2983 */ _CFFI_OP(_CFFI_OP_POINTER, 3379), // TPMT_HA *
/* 2984 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2985 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_KDF_SCHEME *)
/* 2986 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2987 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2988 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2989 */ _CFFI_OP(_CFFI_OP_POINTER, 3382), // TPMT_KDF_SCHEME *
/* 2990 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2991 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_KEYEDHASH_SCHEME *)
/* 2992 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2993 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 2994 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 2995 */ _CFFI_OP(_CFFI_OP_POINTER, 3383), // TPMT_KEYEDHASH_SCHEME *
/* 2996 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 2997 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_PUBLIC *)
/* 2998 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 2999 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3000 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3001 */ _CFFI_OP(_CFFI_OP_POINTER, 3384), // TPMT_PUBLIC *
/* 3002 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3003 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_PUBLIC_PARMS *)
/* 3004 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3005 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3006 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3007 */ _CFFI_OP(_CFFI_OP_POINTER, 3385), // TPMT_PUBLIC_PARMS *
/* 3008 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3009 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_RSA_DECRYPT *)
/* 3010 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3011 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3012 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3013 */ _CFFI_OP(_CFFI_OP_POINTER, 3386), // TPMT_RSA_DECRYPT *
/* 3014 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3015 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_RSA_SCHEME *)
/* 3016 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3017 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3018 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3019 */ _CFFI_OP(_CFFI_OP_POINTER, 3387), // TPMT_RSA_SCHEME *
/* 3020 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3021 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_SENSITIVE *)
/* 3022 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3023 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3024 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3025 */ _CFFI_OP(_CFFI_OP_POINTER, 3388), // TPMT_SENSITIVE *
/* 3026 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3027 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_SIGNATURE *)
/* 3028 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3029 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3030 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3031 */ _CFFI_OP(_CFFI_OP_POINTER, 3389), // TPMT_SIGNATURE *
/* 3032 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3033 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_SIG_SCHEME *)
/* 3034 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3035 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3036 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3037 */ _CFFI_OP(_CFFI_OP_POINTER, 3390), // TPMT_SIG_SCHEME *
/* 3038 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3039 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_SYM_DEF *)
/* 3040 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3041 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3042 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3043 */ _CFFI_OP(_CFFI_OP_POINTER, 3391), // TPMT_SYM_DEF *
/* 3044 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3045 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_SYM_DEF_OBJECT *)
/* 3046 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3047 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3048 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3049 */ _CFFI_OP(_CFFI_OP_POINTER, 3392), // TPMT_SYM_DEF_OBJECT *
/* 3050 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3051 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_TK_AUTH *)
/* 3052 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3053 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3054 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3055 */ _CFFI_OP(_CFFI_OP_POINTER, 3393), // TPMT_TK_AUTH *
/* 3056 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3057 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_TK_CREATION *)
/* 3058 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3059 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3060 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3061 */ _CFFI_OP(_CFFI_OP_POINTER, 3394), // TPMT_TK_CREATION *
/* 3062 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3063 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_TK_HASHCHECK *)
/* 3064 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3065 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3066 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3067 */ _CFFI_OP(_CFFI_OP_POINTER, 3395), // TPMT_TK_HASHCHECK *
/* 3068 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3069 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, TPMT_TK_VERIFIED *)
/* 3070 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3071 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3072 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3073 */ _CFFI_OP(_CFFI_OP_POINTER, 3396), // TPMT_TK_VERIFIED *
/* 3074 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3075 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, int16_t *)
/* 3076 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3077 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3078 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3079 */ _CFFI_OP(_CFFI_OP_POINTER, 2420), // int16_t *
/* 3080 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3081 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, int32_t *)
/* 3082 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3083 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3084 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3085 */ _CFFI_OP(_CFFI_OP_POINTER, 201), // int32_t *
/* 3086 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3087 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, int64_t *)
/* 3088 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3089 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3090 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3091 */ _CFFI_OP(_CFFI_OP_POINTER, 2432), // int64_t *
/* 3092 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3093 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, int8_t *)
/* 3094 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3095 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3096 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3097 */ _CFFI_OP(_CFFI_OP_POINTER, 1038), // int8_t *
/* 3098 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3099 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint16_t *)
/* 3100 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3101 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3102 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3103 */ _CFFI_OP(_CFFI_OP_NOOP, 68),
/* 3104 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3105 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint32_t *)
/* 3106 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3107 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3108 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3109 */ _CFFI_OP(_CFFI_OP_NOOP, 98),
/* 3110 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3111 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint32_t, TPMU_ASYM_SCHEME *)
/* 3112 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3113 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3114 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3115 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 3116 */ _CFFI_OP(_CFFI_OP_POINTER, 3397), // TPMU_ASYM_SCHEME *
/* 3117 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3118 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint32_t, TPMU_ATTEST *)
/* 3119 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3120 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3121 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3122 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 3123 */ _CFFI_OP(_CFFI_OP_POINTER, 3398), // TPMU_ATTEST *
/* 3124 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3125 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint32_t, TPMU_CAPABILITIES *)
/* 3126 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3127 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3128 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3129 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 3130 */ _CFFI_OP(_CFFI_OP_POINTER, 3399), // TPMU_CAPABILITIES *
/* 3131 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3132 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint32_t, TPMU_ENCRYPTED_SECRET *)
/* 3133 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3134 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3135 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3136 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 3137 */ _CFFI_OP(_CFFI_OP_POINTER, 3400), // TPMU_ENCRYPTED_SECRET *
/* 3138 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3139 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint32_t, TPMU_HA *)
/* 3140 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3141 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3142 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3143 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 3144 */ _CFFI_OP(_CFFI_OP_POINTER, 3401), // TPMU_HA *
/* 3145 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3146 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint32_t, TPMU_KDF_SCHEME *)
/* 3147 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3148 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3149 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3150 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 3151 */ _CFFI_OP(_CFFI_OP_POINTER, 3402), // TPMU_KDF_SCHEME *
/* 3152 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3153 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint32_t, TPMU_NAME *)
/* 3154 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3155 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3156 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3157 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 3158 */ _CFFI_OP(_CFFI_OP_POINTER, 3403), // TPMU_NAME *
/* 3159 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3160 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint32_t, TPMU_PUBLIC_ID *)
/* 3161 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3162 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3163 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3164 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 3165 */ _CFFI_OP(_CFFI_OP_POINTER, 3404), // TPMU_PUBLIC_ID *
/* 3166 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3167 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint32_t, TPMU_PUBLIC_PARMS *)
/* 3168 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3169 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3170 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3171 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 3172 */ _CFFI_OP(_CFFI_OP_POINTER, 3405), // TPMU_PUBLIC_PARMS *
/* 3173 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3174 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint32_t, TPMU_SCHEME_KEYEDHASH *)
/* 3175 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3176 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3177 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3178 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 3179 */ _CFFI_OP(_CFFI_OP_POINTER, 3406), // TPMU_SCHEME_KEYEDHASH *
/* 3180 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3181 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint32_t, TPMU_SENSITIVE_COMPOSITE *)
/* 3182 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3183 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3184 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3185 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 3186 */ _CFFI_OP(_CFFI_OP_POINTER, 3407), // TPMU_SENSITIVE_COMPOSITE *
/* 3187 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3188 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint32_t, TPMU_SIGNATURE *)
/* 3189 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3190 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3191 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3192 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 3193 */ _CFFI_OP(_CFFI_OP_POINTER, 3409), // TPMU_SIGNATURE *
/* 3194 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3195 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint32_t, TPMU_SIG_SCHEME *)
/* 3196 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3197 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3198 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3199 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 3200 */ _CFFI_OP(_CFFI_OP_POINTER, 3410), // TPMU_SIG_SCHEME *
/* 3201 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3202 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint32_t, TPMU_SYM_KEY_BITS *)
/* 3203 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3204 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3205 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3206 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 3207 */ _CFFI_OP(_CFFI_OP_POINTER, 3411), // TPMU_SYM_KEY_BITS *
/* 3208 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3209 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint32_t, TPMU_SYM_MODE *)
/* 3210 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3211 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3212 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3213 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 22),
/* 3214 */ _CFFI_OP(_CFFI_OP_POINTER, 3412), // TPMU_SYM_MODE *
/* 3215 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3216 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint64_t *)
/* 3217 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3218 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3219 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3220 */ _CFFI_OP(_CFFI_OP_POINTER, 1517), // uint64_t *
/* 3221 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3222 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t const *, size_t, size_t *, uint8_t *)
/* 3223 */ _CFFI_OP(_CFFI_OP_NOOP, 1611),
/* 3224 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3225 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3226 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 3227 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3228 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(uint8_t, uint8_t *, size_t, size_t *)
/* 3229 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 18),
/* 3230 */ _CFFI_OP(_CFFI_OP_NOOP, 1027),
/* 3231 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3232 */ _CFFI_OP(_CFFI_OP_NOOP, 197),
/* 3233 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3234 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(void *)
/* 3235 */ _CFFI_OP(_CFFI_OP_NOOP, 1620),
/* 3236 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3237 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(void *, _Bool *)
/* 3238 */ _CFFI_OP(_CFFI_OP_NOOP, 1620),
/* 3239 */ _CFFI_OP(_CFFI_OP_POINTER, 3426), // _Bool *
/* 3240 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3241 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(void *, int)
/* 3242 */ _CFFI_OP(_CFFI_OP_NOOP, 1620),
/* 3243 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 7), // int
/* 3244 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3245 */ _CFFI_OP(_CFFI_OP_FUNCTION, 6), // uint32_t()(void *, void const *, void *, size_t)
/* 3246 */ _CFFI_OP(_CFFI_OP_NOOP, 1620),
/* 3247 */ _CFFI_OP(_CFFI_OP_POINTER, 3540), // void const *
/* 3248 */ _CFFI_OP(_CFFI_OP_NOOP, 1620),
/* 3249 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 28),
/* 3250 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3251 */ _CFFI_OP(_CFFI_OP_FUNCTION, 3540), // void()(ESYS_CONTEXT * *)
/* 3252 */ _CFFI_OP(_CFFI_OP_NOOP, 14),
/* 3253 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3254 */ _CFFI_OP(_CFFI_OP_FUNCTION, 3540), // void()(ESYS_CRYPTO_CONTEXT_BLOB * *, void *)
/* 3255 */ _CFFI_OP(_CFFI_OP_NOOP, 1616),
/* 3256 */ _CFFI_OP(_CFFI_OP_NOOP, 1620),
/* 3257 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3258 */ _CFFI_OP(_CFFI_OP_FUNCTION, 3540), // void()(TSS2_TCTI_CONTEXT * *)
/* 3259 */ _CFFI_OP(_CFFI_OP_NOOP, 192),
/* 3260 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3261 */ _CFFI_OP(_CFFI_OP_FUNCTION, 3540), // void()(TSS2_TCTI_CONTEXT *)
/* 3262 */ _CFFI_OP(_CFFI_OP_NOOP, 15),
/* 3263 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3264 */ _CFFI_OP(_CFFI_OP_FUNCTION, 3540), // void()(TSS2_TCTI_INFO * *)
/* 3265 */ _CFFI_OP(_CFFI_OP_NOOP, 2412),
/* 3266 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3267 */ _CFFI_OP(_CFFI_OP_FUNCTION, 3540), // void()(void *)
/* 3268 */ _CFFI_OP(_CFFI_OP_NOOP, 1620),
/* 3269 */ _CFFI_OP(_CFFI_OP_FUNCTION_END, 0),
/* 3270 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 0), // ESYS_CONTEXT
/* 3271 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 1), // ESYS_CRYPTO_CALLBACKS
/* 3272 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 2), // ESYS_CRYPTO_CONTEXT_BLOB
/* 3273 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 3), // PYTCTI_CONTEXT
/* 3274 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 4), // TPM2B_ATTEST
/* 3275 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 5), // TPM2B_CONTEXT_DATA
/* 3276 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 6), // TPM2B_CONTEXT_SENSITIVE
/* 3277 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 7), // TPM2B_CREATION_DATA
/* 3278 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 8), // TPM2B_DATA
/* 3279 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 9), // TPM2B_DERIVE
/* 3280 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 10), // TPM2B_DIGEST
/* 3281 */ _CFFI_OP(_CFFI_OP_ARRAY, 3280), // TPM2B_DIGEST[_cffi_array_len(((TPML_DIGEST *)0)->digests)]
/* 3282 */ (_cffi_opcode_t)(_cffi_array_len(((TPML_DIGEST *)0)->digests)),
/* 3283 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 11), // TPM2B_ECC_PARAMETER
/* 3284 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 12), // TPM2B_ECC_POINT
/* 3285 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 13), // TPM2B_ENCRYPTED_SECRET
/* 3286 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 14), // TPM2B_EVENT
/* 3287 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 15), // TPM2B_ID_OBJECT
/* 3288 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 16), // TPM2B_IV
/* 3289 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 17), // TPM2B_LABEL
/* 3290 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 18), // TPM2B_MAX_BUFFER
/* 3291 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 19), // TPM2B_MAX_CAP_BUFFER
/* 3292 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 20), // TPM2B_MAX_NV_BUFFER
/* 3293 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 21), // TPM2B_NAME
/* 3294 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 22), // TPM2B_NV_PUBLIC
/* 3295 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 23), // TPM2B_PRIVATE
/* 3296 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 24), // TPM2B_PRIVATE_KEY_RSA
/* 3297 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 25), // TPM2B_PRIVATE_VENDOR_SPECIFIC
/* 3298 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 26), // TPM2B_PUBLIC
/* 3299 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 27), // TPM2B_PUBLIC_KEY_RSA
/* 3300 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 28), // TPM2B_SENSITIVE
/* 3301 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 29), // TPM2B_SENSITIVE_CREATE
/* 3302 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 30), // TPM2B_SENSITIVE_DATA
/* 3303 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 31), // TPM2B_SYM_KEY
/* 3304 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 32), // TPM2B_TEMPLATE
/* 3305 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 33), // TPML_ACT_DATA
/* 3306 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 34), // TPML_AC_CAPABILITIES
/* 3307 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 35), // TPML_ALG
/* 3308 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 36), // TPML_ALG_PROPERTY
/* 3309 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 37), // TPML_CC
/* 3310 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 38), // TPML_CCA
/* 3311 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 39), // TPML_DIGEST
/* 3312 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 40), // TPML_DIGEST_VALUES
/* 3313 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 41), // TPML_ECC_CURVE
/* 3314 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 42), // TPML_HANDLE
/* 3315 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 43), // TPML_INTEL_PTT_PROPERTY
/* 3316 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 44), // TPML_PCR_SELECTION
/* 3317 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 45), // TPML_TAGGED_PCR_PROPERTY
/* 3318 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 46), // TPML_TAGGED_POLICY
/* 3319 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 47), // TPML_TAGGED_TPM_PROPERTY
/* 3320 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 48), // TPMS_ACT_DATA
/* 3321 */ _CFFI_OP(_CFFI_OP_ARRAY, 3320), // TPMS_ACT_DATA[_cffi_array_len(((TPML_ACT_DATA *)0)->actData)]
/* 3322 */ (_cffi_opcode_t)(_cffi_array_len(((TPML_ACT_DATA *)0)->actData)),
/* 3323 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 49), // TPMS_AC_OUTPUT
/* 3324 */ _CFFI_OP(_CFFI_OP_ARRAY, 3323), // TPMS_AC_OUTPUT[_cffi_array_len(((TPML_AC_CAPABILITIES *)0)->acCapabilities)]
/* 3325 */ (_cffi_opcode_t)(_cffi_array_len(((TPML_AC_CAPABILITIES *)0)->acCapabilities)),
/* 3326 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 50), // TPMS_ALGORITHM_DETAIL_ECC
/* 3327 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 51), // TPMS_ALG_PROPERTY
/* 3328 */ _CFFI_OP(_CFFI_OP_ARRAY, 3327), // TPMS_ALG_PROPERTY[_cffi_array_len(((TPML_ALG_PROPERTY *)0)->algProperties)]
/* 3329 */ (_cffi_opcode_t)(_cffi_array_len(((TPML_ALG_PROPERTY *)0)->algProperties)),
/* 3330 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 52), // TPMS_ASYM_PARMS
/* 3331 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 53), // TPMS_ATTEST
/* 3332 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 54), // TPMS_AUTH_COMMAND
/* 3333 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 55), // TPMS_AUTH_RESPONSE
/* 3334 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 56), // TPMS_CAPABILITY_DATA
/* 3335 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 57), // TPMS_CERTIFY_INFO
/* 3336 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 58), // TPMS_CLOCK_INFO
/* 3337 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 59), // TPMS_COMMAND_AUDIT_INFO
/* 3338 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 60), // TPMS_CONTEXT
/* 3339 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 61), // TPMS_CONTEXT_DATA
/* 3340 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 62), // TPMS_CREATION_DATA
/* 3341 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 63), // TPMS_CREATION_INFO
/* 3342 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 64), // TPMS_DERIVE
/* 3343 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 65), // TPMS_ECC_PARMS
/* 3344 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 66), // TPMS_ECC_POINT
/* 3345 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 67), // TPMS_EMPTY
/* 3346 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 68), // TPMS_ID_OBJECT
/* 3347 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 69), // TPMS_KEYEDHASH_PARMS
/* 3348 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 70), // TPMS_NV_CERTIFY_INFO
/* 3349 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 71), // TPMS_NV_DIGEST_CERTIFY_INFO
/* 3350 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 72), // TPMS_NV_PIN_COUNTER_PARAMETERS
/* 3351 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 73), // TPMS_NV_PUBLIC
/* 3352 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 74), // TPMS_PCR_SELECT
/* 3353 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 75), // TPMS_PCR_SELECTION
/* 3354 */ _CFFI_OP(_CFFI_OP_ARRAY, 3353), // TPMS_PCR_SELECTION[_cffi_array_len(((TPML_PCR_SELECTION *)0)->pcrSelections)]
/* 3355 */ (_cffi_opcode_t)(_cffi_array_len(((TPML_PCR_SELECTION *)0)->pcrSelections)),
/* 3356 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 76), // TPMS_QUOTE_INFO
/* 3357 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 77), // TPMS_RSA_PARMS
/* 3358 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 78), // TPMS_SCHEME_ECDAA
/* 3359 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 79), // TPMS_SCHEME_HASH
/* 3360 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 80), // TPMS_SCHEME_XOR
/* 3361 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 81), // TPMS_SENSITIVE_CREATE
/* 3362 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 82), // TPMS_SESSION_AUDIT_INFO
/* 3363 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 83), // TPMS_SIGNATURE_ECC
/* 3364 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 84), // TPMS_SIGNATURE_RSA
/* 3365 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 85), // TPMS_SYMCIPHER_PARMS
/* 3366 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 86), // TPMS_TAGGED_PCR_SELECT
/* 3367 */ _CFFI_OP(_CFFI_OP_ARRAY, 3366), // TPMS_TAGGED_PCR_SELECT[_cffi_array_len(((TPML_TAGGED_PCR_PROPERTY *)0)->pcrProperty)]
/* 3368 */ (_cffi_opcode_t)(_cffi_array_len(((TPML_TAGGED_PCR_PROPERTY *)0)->pcrProperty)),
/* 3369 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 87), // TPMS_TAGGED_POLICY
/* 3370 */ _CFFI_OP(_CFFI_OP_ARRAY, 3369), // TPMS_TAGGED_POLICY[_cffi_array_len(((TPML_TAGGED_POLICY *)0)->policies)]
/* 3371 */ (_cffi_opcode_t)(_cffi_array_len(((TPML_TAGGED_POLICY *)0)->policies)),
/* 3372 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 88), // TPMS_TAGGED_PROPERTY
/* 3373 */ _CFFI_OP(_CFFI_OP_ARRAY, 3372), // TPMS_TAGGED_PROPERTY[_cffi_array_len(((TPML_TAGGED_TPM_PROPERTY *)0)->tpmProperty)]
/* 3374 */ (_cffi_opcode_t)(_cffi_array_len(((TPML_TAGGED_TPM_PROPERTY *)0)->tpmProperty)),
/* 3375 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 89), // TPMS_TIME_ATTEST_INFO
/* 3376 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 90), // TPMS_TIME_INFO
/* 3377 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 91), // TPMT_ASYM_SCHEME
/* 3378 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 92), // TPMT_ECC_SCHEME
/* 3379 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 93), // TPMT_HA
/* 3380 */ _CFFI_OP(_CFFI_OP_ARRAY, 3379), // TPMT_HA[_cffi_array_len(((TPML_DIGEST_VALUES *)0)->digests)]
/* 3381 */ (_cffi_opcode_t)(_cffi_array_len(((TPML_DIGEST_VALUES *)0)->digests)),
/* 3382 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 94), // TPMT_KDF_SCHEME
/* 3383 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 95), // TPMT_KEYEDHASH_SCHEME
/* 3384 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 96), // TPMT_PUBLIC
/* 3385 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 97), // TPMT_PUBLIC_PARMS
/* 3386 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 98), // TPMT_RSA_DECRYPT
/* 3387 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 99), // TPMT_RSA_SCHEME
/* 3388 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 100), // TPMT_SENSITIVE
/* 3389 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 101), // TPMT_SIGNATURE
/* 3390 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 102), // TPMT_SIG_SCHEME
/* 3391 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 103), // TPMT_SYM_DEF
/* 3392 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 104), // TPMT_SYM_DEF_OBJECT
/* 3393 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 105), // TPMT_TK_AUTH
/* 3394 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 106), // TPMT_TK_CREATION
/* 3395 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 107), // TPMT_TK_HASHCHECK
/* 3396 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 108), // TPMT_TK_VERIFIED
/* 3397 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 109), // TPMU_ASYM_SCHEME
/* 3398 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 110), // TPMU_ATTEST
/* 3399 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 111), // TPMU_CAPABILITIES
/* 3400 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 112), // TPMU_ENCRYPTED_SECRET
/* 3401 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 113), // TPMU_HA
/* 3402 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 114), // TPMU_KDF_SCHEME
/* 3403 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 115), // TPMU_NAME
/* 3404 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 116), // TPMU_PUBLIC_ID
/* 3405 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 117), // TPMU_PUBLIC_PARMS
/* 3406 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 118), // TPMU_SCHEME_KEYEDHASH
/* 3407 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 119), // TPMU_SENSITIVE_COMPOSITE
/* 3408 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 120), // TPMU_SENSITIVE_CREATE
/* 3409 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 121), // TPMU_SIGNATURE
/* 3410 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 122), // TPMU_SIG_SCHEME
/* 3411 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 123), // TPMU_SYM_KEY_BITS
/* 3412 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 124), // TPMU_SYM_MODE
/* 3413 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 125), // TSS2_ABI_VERSION
/* 3414 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 126), // TSS2_RC_INFO
/* 3415 */ _CFFI_OP(_CFFI_OP_POINTER, 3416), // TSS2_SYS_CONTEXT *
/* 3416 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 127), // TSS2_SYS_CONTEXT
/* 3417 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 131), // TSS2_TCTI_CONTEXT
/* 3418 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 128), // TSS2_TCTI_CONTEXT_COMMON_V1
/* 3419 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 129), // TSS2_TCTI_CONTEXT_COMMON_V2
/* 3420 */ _CFFI_OP(_CFFI_OP_POINTER, 3423), // TSS2_TCTI_INFO *
/* 3421 */ _CFFI_OP(_CFFI_OP_POINTER, 0), // TSS2_TCTI_INFO const *(*)(void)
/* 3422 */ _CFFI_OP(_CFFI_OP_POINTER, 3423), // TSS2_TCTI_INFO const *
/* 3423 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 130), // TSS2_TCTI_INFO
/* 3424 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 134), // TSS2_TCTI_POLL_HANDLE
/* 3425 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 132), // TSS2_TCTI_SPI_HELPER_PLATFORM
/* 3426 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 1), // _Bool
/* 3427 */ _CFFI_OP(_CFFI_OP_STRUCT_UNION, 133), // _PRIVATE
/* 3428 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 2), // char
/* 3429 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 5), // short
/* 3430 */ _CFFI_OP(_CFFI_OP_ARRAY, 205), // uint16_t[_cffi_array_len(((TPML_ALG *)0)->algorithms)]
/* 3431 */ (_cffi_opcode_t)(_cffi_array_len(((TPML_ALG *)0)->algorithms)),
/* 3432 */ _CFFI_OP(_CFFI_OP_ARRAY, 205), // uint16_t[_cffi_array_len(((TPML_ECC_CURVE *)0)->eccCurves)]
/* 3433 */ (_cffi_opcode_t)(_cffi_array_len(((TPML_ECC_CURVE *)0)->eccCurves)),
/* 3434 */ _CFFI_OP(_CFFI_OP_POINTER, 1615), // uint32_t(*)(ESYS_CRYPTO_CONTEXT_BLOB * *, uint16_t, uint8_t const *, size_t, void *)
/* 3435 */ _CFFI_OP(_CFFI_OP_POINTER, 1622), // uint32_t(*)(ESYS_CRYPTO_CONTEXT_BLOB * *, uint16_t, void *)
/* 3436 */ _CFFI_OP(_CFFI_OP_POINTER, 1627), // uint32_t(*)(ESYS_CRYPTO_CONTEXT_BLOB * *, uint8_t *, size_t *, void *)
/* 3437 */ _CFFI_OP(_CFFI_OP_POINTER, 1633), // uint32_t(*)(ESYS_CRYPTO_CONTEXT_BLOB *, uint8_t const *, size_t, void *)
/* 3438 */ _CFFI_OP(_CFFI_OP_POINTER, 1669), // uint32_t(*)(TPM2B_DIGEST *, size_t, void *)
/* 3439 */ _CFFI_OP(_CFFI_OP_POINTER, 1758), // uint32_t(*)(TPM2B_PUBLIC *, size_t, TPM2B_ECC_PARAMETER *, TPMS_ECC_POINT *, uint8_t *, size_t *, void *)
/* 3440 */ _CFFI_OP(_CFFI_OP_POINTER, 1767), // uint32_t(*)(TPM2B_PUBLIC *, size_t, uint8_t *, size_t, uint8_t *, size_t *, char const *, void *)
/* 3441 */ _CFFI_OP(_CFFI_OP_POINTER, 2368), // uint32_t(*)(TSS2_TCTI_CONTEXT *)
/* 3442 */ _CFFI_OP(_CFFI_OP_POINTER, 2371), // uint32_t(*)(TSS2_TCTI_CONTEXT *, TSS2_TCTI_POLL_HANDLE *, size_t *)
/* 3443 */ _CFFI_OP(_CFFI_OP_POINTER, 2381), // uint32_t(*)(TSS2_TCTI_CONTEXT *, size_t *, char const *)
/* 3444 */ _CFFI_OP(_CFFI_OP_POINTER, 2386), // uint32_t(*)(TSS2_TCTI_CONTEXT *, size_t *, uint8_t *, int32_t)
/* 3445 */ _CFFI_OP(_CFFI_OP_POINTER, 2392), // uint32_t(*)(TSS2_TCTI_CONTEXT *, size_t, uint8_t const *)
/* 3446 */ _CFFI_OP(_CFFI_OP_POINTER, 2397), // uint32_t(*)(TSS2_TCTI_CONTEXT *, uint32_t *, uint8_t)
/* 3447 */ _CFFI_OP(_CFFI_OP_POINTER, 2402), // uint32_t(*)(TSS2_TCTI_CONTEXT *, uint8_t)
/* 3448 */ _CFFI_OP(_CFFI_OP_POINTER, 2465), // uint32_t(*)(uint8_t *, uint16_t, uint16_t, uint16_t, uint8_t *, size_t, uint8_t *, void *)
/* 3449 */ _CFFI_OP(_CFFI_OP_POINTER, 3234), // uint32_t(*)(void *)
/* 3450 */ _CFFI_OP(_CFFI_OP_POINTER, 3237), // uint32_t(*)(void *, _Bool *)
/* 3451 */ _CFFI_OP(_CFFI_OP_POINTER, 3241), // uint32_t(*)(void *, int)
/* 3452 */ _CFFI_OP(_CFFI_OP_POINTER, 3245), // uint32_t(*)(void *, void const *, void *, size_t)
/* 3453 */ _CFFI_OP(_CFFI_OP_ARRAY, 6), // uint32_t[_cffi_array_len(((TPML_CC *)0)->commandCodes)]
/* 3454 */ (_cffi_opcode_t)(_cffi_array_len(((TPML_CC *)0)->commandCodes)),
/* 3455 */ _CFFI_OP(_CFFI_OP_ARRAY, 6), // uint32_t[_cffi_array_len(((TPML_CCA *)0)->commandAttributes)]
/* 3456 */ (_cffi_opcode_t)(_cffi_array_len(((TPML_CCA *)0)->commandAttributes)),
/* 3457 */ _CFFI_OP(_CFFI_OP_ARRAY, 6), // uint32_t[_cffi_array_len(((TPML_HANDLE *)0)->handle)]
/* 3458 */ (_cffi_opcode_t)(_cffi_array_len(((TPML_HANDLE *)0)->handle)),
/* 3459 */ _CFFI_OP(_CFFI_OP_ARRAY, 6), // uint32_t[_cffi_array_len(((TPML_INTEL_PTT_PROPERTY *)0)->property)]
/* 3460 */ (_cffi_opcode_t)(_cffi_array_len(((TPML_INTEL_PTT_PROPERTY *)0)->property)),
/* 3461 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_ATTEST *)0)->attestationData)]
/* 3462 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_ATTEST *)0)->attestationData)),
/* 3463 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_CONTEXT_DATA *)0)->buffer)]
/* 3464 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_CONTEXT_DATA *)0)->buffer)),
/* 3465 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_CONTEXT_SENSITIVE *)0)->buffer)]
/* 3466 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_CONTEXT_SENSITIVE *)0)->buffer)),
/* 3467 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_DATA *)0)->buffer)]
/* 3468 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_DATA *)0)->buffer)),
/* 3469 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_DERIVE *)0)->buffer)]
/* 3470 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_DERIVE *)0)->buffer)),
/* 3471 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_DIGEST *)0)->buffer)]
/* 3472 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_DIGEST *)0)->buffer)),
/* 3473 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_ECC_PARAMETER *)0)->buffer)]
/* 3474 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_ECC_PARAMETER *)0)->buffer)),
/* 3475 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_ENCRYPTED_SECRET *)0)->secret)]
/* 3476 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_ENCRYPTED_SECRET *)0)->secret)),
/* 3477 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_EVENT *)0)->buffer)]
/* 3478 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_EVENT *)0)->buffer)),
/* 3479 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_ID_OBJECT *)0)->credential)]
/* 3480 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_ID_OBJECT *)0)->credential)),
/* 3481 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_IV *)0)->buffer)]
/* 3482 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_IV *)0)->buffer)),
/* 3483 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_LABEL *)0)->buffer)]
/* 3484 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_LABEL *)0)->buffer)),
/* 3485 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_MAX_BUFFER *)0)->buffer)]
/* 3486 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_MAX_BUFFER *)0)->buffer)),
/* 3487 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_MAX_CAP_BUFFER *)0)->buffer)]
/* 3488 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_MAX_CAP_BUFFER *)0)->buffer)),
/* 3489 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_MAX_NV_BUFFER *)0)->buffer)]
/* 3490 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_MAX_NV_BUFFER *)0)->buffer)),
/* 3491 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_NAME *)0)->name)]
/* 3492 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_NAME *)0)->name)),
/* 3493 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_PRIVATE *)0)->buffer)]
/* 3494 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_PRIVATE *)0)->buffer)),
/* 3495 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_PRIVATE_KEY_RSA *)0)->buffer)]
/* 3496 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_PRIVATE_KEY_RSA *)0)->buffer)),
/* 3497 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_PRIVATE_VENDOR_SPECIFIC *)0)->buffer)]
/* 3498 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_PRIVATE_VENDOR_SPECIFIC *)0)->buffer)),
/* 3499 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_PUBLIC_KEY_RSA *)0)->buffer)]
/* 3500 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_PUBLIC_KEY_RSA *)0)->buffer)),
/* 3501 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_SENSITIVE_DATA *)0)->buffer)]
/* 3502 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_SENSITIVE_DATA *)0)->buffer)),
/* 3503 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_SYM_KEY *)0)->buffer)]
/* 3504 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_SYM_KEY *)0)->buffer)),
/* 3505 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPM2B_TEMPLATE *)0)->buffer)]
/* 3506 */ (_cffi_opcode_t)(_cffi_array_len(((TPM2B_TEMPLATE *)0)->buffer)),
/* 3507 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPMS_EMPTY *)0)->empty)]
/* 3508 */ (_cffi_opcode_t)(_cffi_array_len(((TPMS_EMPTY *)0)->empty)),
/* 3509 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPMS_PCR_SELECT *)0)->pcrSelect)]
/* 3510 */ (_cffi_opcode_t)(_cffi_array_len(((TPMS_PCR_SELECT *)0)->pcrSelect)),
/* 3511 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPMS_PCR_SELECTION *)0)->pcrSelect)]
/* 3512 */ (_cffi_opcode_t)(_cffi_array_len(((TPMS_PCR_SELECTION *)0)->pcrSelect)),
/* 3513 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPMS_TAGGED_PCR_SELECT *)0)->pcrSelect)]
/* 3514 */ (_cffi_opcode_t)(_cffi_array_len(((TPMS_TAGGED_PCR_SELECT *)0)->pcrSelect)),
/* 3515 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPMU_ENCRYPTED_SECRET *)0)->ecc)]
/* 3516 */ (_cffi_opcode_t)(_cffi_array_len(((TPMU_ENCRYPTED_SECRET *)0)->ecc)),
/* 3517 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPMU_ENCRYPTED_SECRET *)0)->keyedHash)]
/* 3518 */ (_cffi_opcode_t)(_cffi_array_len(((TPMU_ENCRYPTED_SECRET *)0)->keyedHash)),
/* 3519 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPMU_ENCRYPTED_SECRET *)0)->rsa)]
/* 3520 */ (_cffi_opcode_t)(_cffi_array_len(((TPMU_ENCRYPTED_SECRET *)0)->rsa)),
/* 3521 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPMU_ENCRYPTED_SECRET *)0)->symmetric)]
/* 3522 */ (_cffi_opcode_t)(_cffi_array_len(((TPMU_ENCRYPTED_SECRET *)0)->symmetric)),
/* 3523 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPMU_HA *)0)->sha)]
/* 3524 */ (_cffi_opcode_t)(_cffi_array_len(((TPMU_HA *)0)->sha)),
/* 3525 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPMU_HA *)0)->sha1)]
/* 3526 */ (_cffi_opcode_t)(_cffi_array_len(((TPMU_HA *)0)->sha1)),
/* 3527 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPMU_HA *)0)->sha256)]
/* 3528 */ (_cffi_opcode_t)(_cffi_array_len(((TPMU_HA *)0)->sha256)),
/* 3529 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPMU_HA *)0)->sha384)]
/* 3530 */ (_cffi_opcode_t)(_cffi_array_len(((TPMU_HA *)0)->sha384)),
/* 3531 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPMU_HA *)0)->sha512)]
/* 3532 */ (_cffi_opcode_t)(_cffi_array_len(((TPMU_HA *)0)->sha512)),
/* 3533 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPMU_HA *)0)->sm3_256)]
/* 3534 */ (_cffi_opcode_t)(_cffi_array_len(((TPMU_HA *)0)->sm3_256)),
/* 3535 */ _CFFI_OP(_CFFI_OP_ARRAY, 9), // uint8_t[_cffi_array_len(((TPMU_SENSITIVE_CREATE *)0)->create)]
/* 3536 */ (_cffi_opcode_t)(_cffi_array_len(((TPMU_SENSITIVE_CREATE *)0)->create)),
/* 3537 */ _CFFI_OP(_CFFI_OP_POINTER, 3254), // void(*)(ESYS_CRYPTO_CONTEXT_BLOB * *, void *)
/* 3538 */ _CFFI_OP(_CFFI_OP_POINTER, 3261), // void(*)(TSS2_TCTI_CONTEXT *)
/* 3539 */ _CFFI_OP(_CFFI_OP_POINTER, 3267), // void(*)(void *)
/* 3540 */ _CFFI_OP(_CFFI_OP_PRIMITIVE, 0), // void
};

static struct _cffi_externpy_s _cffi_externpy___tcti_cancel_wrapper =
  { "tpm2_pytss._libtpm2_pytss._tcti_cancel_wrapper", (int)sizeof(uint32_t), 0, 0 };

static uint32_t _tcti_cancel_wrapper(TSS2_TCTI_CONTEXT * a0)
{
  char a[8];
  char *p = a;
  *(TSS2_TCTI_CONTEXT * *)(p + 0) = a0;
  _cffi_call_python(&_cffi_externpy___tcti_cancel_wrapper, p);
  return *(uint32_t *)p;
}

static struct _cffi_externpy_s _cffi_externpy___tcti_finalize_wrapper =
  { "tpm2_pytss._libtpm2_pytss._tcti_finalize_wrapper", 0, 0, 0 };

static void _tcti_finalize_wrapper(TSS2_TCTI_CONTEXT * a0)
{
  char a[8];
  char *p = a;
  *(TSS2_TCTI_CONTEXT * *)(p + 0) = a0;
  _cffi_call_python(&_cffi_externpy___tcti_finalize_wrapper, p);
}

static struct _cffi_externpy_s _cffi_externpy___tcti_get_pollfds_wrapper =
  { "tpm2_pytss._libtpm2_pytss._tcti_get_pollfds_wrapper", (int)sizeof(uint32_t), 0, 0 };

static uint32_t _tcti_get_pollfds_wrapper(TSS2_TCTI_CONTEXT * a0, TSS2_TCTI_POLL_HANDLE * a1, size_t * a2)
{
  char a[24];
  char *p = a;
  *(TSS2_TCTI_CONTEXT * *)(p + 0) = a0;
  *(TSS2_TCTI_POLL_HANDLE * *)(p + 8) = a1;
  *(size_t * *)(p + 16) = a2;
  _cffi_call_python(&_cffi_externpy___tcti_get_pollfds_wrapper, p);
  return *(uint32_t *)p;
}

static struct _cffi_externpy_s _cffi_externpy___tcti_make_sticky_wrapper =
  { "tpm2_pytss._libtpm2_pytss._tcti_make_sticky_wrapper", (int)sizeof(uint32_t), 0, 0 };

static uint32_t _tcti_make_sticky_wrapper(TSS2_TCTI_CONTEXT * a0, uint32_t * a1, uint8_t a2)
{
  char a[24];
  char *p = a;
  *(TSS2_TCTI_CONTEXT * *)(p + 0) = a0;
  *(uint32_t * *)(p + 8) = a1;
  *(uint8_t *)(p + 16) = a2;
  _cffi_call_python(&_cffi_externpy___tcti_make_sticky_wrapper, p);
  return *(uint32_t *)p;
}

static struct _cffi_externpy_s _cffi_externpy___tcti_receive_wrapper =
  { "tpm2_pytss._libtpm2_pytss._tcti_receive_wrapper", (int)sizeof(uint32_t), 0, 0 };

static uint32_t _tcti_receive_wrapper(TSS2_TCTI_CONTEXT * a0, size_t * a1, uint8_t * a2, int32_t a3)
{
  char a[32];
  char *p = a;
  *(TSS2_TCTI_CONTEXT * *)(p + 0) = a0;
  *(size_t * *)(p + 8) = a1;
  *(uint8_t * *)(p + 16) = a2;
  *(int32_t *)(p + 24) = a3;
  _cffi_call_python(&_cffi_externpy___tcti_receive_wrapper, p);
  return *(uint32_t *)p;
}

static struct _cffi_externpy_s _cffi_externpy___tcti_set_locality_wrapper =
  { "tpm2_pytss._libtpm2_pytss._tcti_set_locality_wrapper", (int)sizeof(uint32_t), 0, 0 };

static uint32_t _tcti_set_locality_wrapper(TSS2_TCTI_CONTEXT * a0, uint8_t a1)
{
  char a[16];
  char *p = a;
  *(TSS2_TCTI_CONTEXT * *)(p + 0) = a0;
  *(uint8_t *)(p + 8) = a1;
  _cffi_call_python(&_cffi_externpy___tcti_set_locality_wrapper, p);
  return *(uint32_t *)p;
}

static struct _cffi_externpy_s _cffi_externpy___tcti_spi_helper_finalize =
  { "tpm2_pytss._libtpm2_pytss._tcti_spi_helper_finalize", 0, 0, 0 };

static void _tcti_spi_helper_finalize(void * a0)
{
  char a[8];
  char *p = a;
  *(void * *)(p + 0) = a0;
  _cffi_call_python(&_cffi_externpy___tcti_spi_helper_finalize, p);
}

static struct _cffi_externpy_s _cffi_externpy___tcti_spi_helper_sleep_ms =
  { "tpm2_pytss._libtpm2_pytss._tcti_spi_helper_sleep_ms", (int)sizeof(uint32_t), 0, 0 };

static uint32_t _tcti_spi_helper_sleep_ms(void * a0, int a1)
{
  char a[16];
  char *p = a;
  *(void * *)(p + 0) = a0;
  *(int *)(p + 8) = a1;
  _cffi_call_python(&_cffi_externpy___tcti_spi_helper_sleep_ms, p);
  return *(uint32_t *)p;
}

static struct _cffi_externpy_s _cffi_externpy___tcti_spi_helper_spi_acquire =
  { "tpm2_pytss._libtpm2_pytss._tcti_spi_helper_spi_acquire", (int)sizeof(uint32_t), 0, 0 };

static uint32_t _tcti_spi_helper_spi_acquire(void * a0)
{
  char a[8];
  char *p = a;
  *(void * *)(p + 0) = a0;
  _cffi_call_python(&_cffi_externpy___tcti_spi_helper_spi_acquire, p);
  return *(uint32_t *)p;
}

static struct _cffi_externpy_s _cffi_externpy___tcti_spi_helper_spi_release =
  { "tpm2_pytss._libtpm2_pytss._tcti_spi_helper_spi_release", (int)sizeof(uint32_t), 0, 0 };

static uint32_t _tcti_spi_helper_spi_release(void * a0)
{
  char a[8];
  char *p = a;
  *(void * *)(p + 0) = a0;
  _cffi_call_python(&_cffi_externpy___tcti_spi_helper_spi_release, p);
  return *(uint32_t *)p;
}

static struct _cffi_externpy_s _cffi_externpy___tcti_spi_helper_spi_transfer =
  { "tpm2_pytss._libtpm2_pytss._tcti_spi_helper_spi_transfer", (int)sizeof(uint32_t), 0, 0 };

static uint32_t _tcti_spi_helper_spi_transfer(void * a0, void const * a1, void * a2, size_t a3)
{
  char a[32];
  char *p = a;
  *(void * *)(p + 0) = a0;
  *(void const * *)(p + 8) = a1;
  *(void * *)(p + 16) = a2;
  *(size_t *)(p + 24) = a3;
  _cffi_call_python(&_cffi_externpy___tcti_spi_helper_spi_transfer, p);
  return *(uint32_t *)p;
}

static struct _cffi_externpy_s _cffi_externpy___tcti_spi_helper_start_timeout =
  { "tpm2_pytss._libtpm2_pytss._tcti_spi_helper_start_timeout", (int)sizeof(uint32_t), 0, 0 };

static uint32_t _tcti_spi_helper_start_timeout(void * a0, int a1)
{
  char a[16];
  char *p = a;
  *(void * *)(p + 0) = a0;
  *(int *)(p + 8) = a1;
  _cffi_call_python(&_cffi_externpy___tcti_spi_helper_start_timeout, p);
  return *(uint32_t *)p;
}

static struct _cffi_externpy_s _cffi_externpy___tcti_spi_helper_timeout_expired =
  { "tpm2_pytss._libtpm2_pytss._tcti_spi_helper_timeout_expired", (int)sizeof(uint32_t), 0, 0 };

static uint32_t _tcti_spi_helper_timeout_expired(void * a0, _Bool * a1)
{
  char a[16];
  char *p = a;
  *(void * *)(p + 0) = a0;
  *(_Bool * *)(p + 8) = a1;
  _cffi_call_python(&_cffi_externpy___tcti_spi_helper_timeout_expired, p);
  return *(uint32_t *)p;
}

static struct _cffi_externpy_s _cffi_externpy___tcti_transmit_wrapper =
  { "tpm2_pytss._libtpm2_pytss._tcti_transmit_wrapper", (int)sizeof(uint32_t), 0, 0 };

static uint32_t _tcti_transmit_wrapper(TSS2_TCTI_CONTEXT * a0, size_t a1, uint8_t const * a2)
{
  char a[24];
  char *p = a;
  *(TSS2_TCTI_CONTEXT * *)(p + 0) = a0;
  *(size_t *)(p + 8) = a1;
  *(uint8_t const * *)(p + 16) = a2;
  _cffi_call_python(&_cffi_externpy___tcti_transmit_wrapper, p);
  return *(uint32_t *)p;
}

static uint32_t _cffi_d_Esys_ACT_SetTimeout(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5)
{
  return Esys_ACT_SetTimeout(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ACT_SetTimeout(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_ACT_SetTimeout", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ACT_SetTimeout(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ACT_SetTimeout _cffi_d_Esys_ACT_SetTimeout
#endif

static uint32_t _cffi_d_Esys_ACT_SetTimeout_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5)
{
  return Esys_ACT_SetTimeout_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ACT_SetTimeout_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_ACT_SetTimeout_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ACT_SetTimeout_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ACT_SetTimeout_Async _cffi_d_Esys_ACT_SetTimeout_Async
#endif

static uint32_t _cffi_d_Esys_ACT_SetTimeout_Finish(ESYS_CONTEXT * x0)
{
  return Esys_ACT_SetTimeout_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ACT_SetTimeout_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ACT_SetTimeout_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ACT_SetTimeout_Finish _cffi_d_Esys_ACT_SetTimeout_Finish
#endif

static uint32_t _cffi_d_Esys_AC_GetCapability(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6, uint8_t * x7, TPML_AC_CAPABILITIES * * x8)
{
  return Esys_AC_GetCapability(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_AC_GetCapability(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  uint8_t * x7;
  TPML_AC_CAPABILITIES * * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_AC_GetCapability", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1497), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPML_AC_CAPABILITIES * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1497), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_AC_GetCapability(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_AC_GetCapability _cffi_d_Esys_AC_GetCapability
#endif

static uint32_t _cffi_d_Esys_AC_GetCapability_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6)
{
  return Esys_AC_GetCapability_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_AC_GetCapability_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_AC_GetCapability_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_AC_GetCapability_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_AC_GetCapability_Async _cffi_d_Esys_AC_GetCapability_Async
#endif

static uint32_t _cffi_d_Esys_AC_GetCapability_Finish(ESYS_CONTEXT * x0, uint8_t * x1, TPML_AC_CAPABILITIES * * x2)
{
  return Esys_AC_GetCapability_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_AC_GetCapability_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint8_t * x1;
  TPML_AC_CAPABILITIES * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_AC_GetCapability_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1497), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPML_AC_CAPABILITIES * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1497), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_AC_GetCapability_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_AC_GetCapability_Finish _cffi_d_Esys_AC_GetCapability_Finish
#endif

static uint32_t _cffi_d_Esys_AC_Send(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6, TPM2B_MAX_BUFFER * x7, TPMS_AC_OUTPUT * * x8)
{
  return Esys_AC_Send(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_AC_Send(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  TPM2B_MAX_BUFFER * x7;
  TPMS_AC_OUTPUT * * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_AC_Send", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1455), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1455), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(150), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPMS_AC_OUTPUT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(150), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_AC_Send(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_AC_Send _cffi_d_Esys_AC_Send
#endif

static uint32_t _cffi_d_Esys_AC_Send_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6, TPM2B_MAX_BUFFER * x7)
{
  return Esys_AC_Send_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_AC_Send_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  TPM2B_MAX_BUFFER * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_AC_Send_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1455), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1455), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_AC_Send_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_AC_Send_Async _cffi_d_Esys_AC_Send_Async
#endif

static uint32_t _cffi_d_Esys_AC_Send_Finish(ESYS_CONTEXT * x0, TPMS_AC_OUTPUT * * x1)
{
  return Esys_AC_Send_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_AC_Send_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPMS_AC_OUTPUT * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_AC_Send_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(150), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPMS_AC_OUTPUT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(150), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_AC_Send_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_AC_Send_Finish _cffi_d_Esys_AC_Send_Finish
#endif

static uint32_t _cffi_d_Esys_ActivateCredential(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_ID_OBJECT const * x6, TPM2B_ENCRYPTED_SECRET const * x7, TPM2B_DIGEST * * x8)
{
  return Esys_ActivateCredential(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ActivateCredential(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_ID_OBJECT const * x6;
  TPM2B_ENCRYPTED_SECRET const * x7;
  TPM2B_DIGEST * * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_ActivateCredential", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1277), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_ID_OBJECT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1277), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(472), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_ENCRYPTED_SECRET const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(472), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ActivateCredential(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ActivateCredential _cffi_d_Esys_ActivateCredential
#endif

static uint32_t _cffi_d_Esys_ActivateCredential_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_ID_OBJECT const * x6, TPM2B_ENCRYPTED_SECRET const * x7)
{
  return Esys_ActivateCredential_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ActivateCredential_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_ID_OBJECT const * x6;
  TPM2B_ENCRYPTED_SECRET const * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_ActivateCredential_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1277), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_ID_OBJECT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1277), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(472), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_ENCRYPTED_SECRET const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(472), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ActivateCredential_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ActivateCredential_Async _cffi_d_Esys_ActivateCredential_Async
#endif

static uint32_t _cffi_d_Esys_ActivateCredential_Finish(ESYS_CONTEXT * x0, TPM2B_DIGEST * * x1)
{
  return Esys_ActivateCredential_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ActivateCredential_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_DIGEST * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_ActivateCredential_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ActivateCredential_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ActivateCredential_Finish _cffi_d_Esys_ActivateCredential_Finish
#endif

static uint32_t _cffi_d_Esys_Certify(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DATA const * x6, TPMT_SIG_SCHEME const * x7, TPM2B_ATTEST * * x8, TPMT_SIGNATURE * * x9)
{
  return Esys_Certify(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Certify(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DATA const * x6;
  TPMT_SIG_SCHEME const * x7;
  TPM2B_ATTEST * * x8;
  TPMT_SIGNATURE * * x9;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;

  if (!PyArg_UnpackTuple(args, "Esys_Certify", 10, 10, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(27), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_ATTEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(27), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Certify(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Certify _cffi_d_Esys_Certify
#endif

static uint32_t _cffi_d_Esys_CertifyCreation(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DATA const * x6, TPM2B_DIGEST const * x7, TPMT_SIG_SCHEME const * x8, TPMT_TK_CREATION const * x9, TPM2B_ATTEST * * x10, TPMT_SIGNATURE * * x11)
{
  return Esys_CertifyCreation(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_CertifyCreation(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DATA const * x6;
  TPM2B_DIGEST const * x7;
  TPMT_SIG_SCHEME const * x8;
  TPMT_TK_CREATION const * x9;
  TPM2B_ATTEST * * x10;
  TPMT_SIGNATURE * * x11;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;
  PyObject *arg11;

  if (!PyArg_UnpackTuple(args, "Esys_CertifyCreation", 12, 12, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10, &arg11))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1076), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPMT_TK_CREATION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1076), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(27), arg10, (char **)&x10);
  if (datasize != 0) {
    x10 = ((size_t)datasize) <= 640 ? (TPM2B_ATTEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(27), arg10, (char **)&x10,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg11, (char **)&x11);
  if (datasize != 0) {
    x11 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg11, (char **)&x11,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_CertifyCreation(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_CertifyCreation _cffi_d_Esys_CertifyCreation
#endif

static uint32_t _cffi_d_Esys_CertifyCreation_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DATA const * x6, TPM2B_DIGEST const * x7, TPMT_SIG_SCHEME const * x8, TPMT_TK_CREATION const * x9)
{
  return Esys_CertifyCreation_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_CertifyCreation_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DATA const * x6;
  TPM2B_DIGEST const * x7;
  TPMT_SIG_SCHEME const * x8;
  TPMT_TK_CREATION const * x9;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;

  if (!PyArg_UnpackTuple(args, "Esys_CertifyCreation_Async", 10, 10, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1076), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPMT_TK_CREATION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1076), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_CertifyCreation_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_CertifyCreation_Async _cffi_d_Esys_CertifyCreation_Async
#endif

static uint32_t _cffi_d_Esys_CertifyCreation_Finish(ESYS_CONTEXT * x0, TPM2B_ATTEST * * x1, TPMT_SIGNATURE * * x2)
{
  return Esys_CertifyCreation_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_CertifyCreation_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_ATTEST * * x1;
  TPMT_SIGNATURE * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_CertifyCreation_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(27), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_ATTEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(27), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_CertifyCreation_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_CertifyCreation_Finish _cffi_d_Esys_CertifyCreation_Finish
#endif

static uint32_t _cffi_d_Esys_CertifyX509(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DATA const * x6, TPMT_SIG_SCHEME const * x7, TPM2B_MAX_BUFFER const * x8, TPM2B_MAX_BUFFER * * x9, TPM2B_DIGEST * * x10, TPMT_SIGNATURE * * x11)
{
  return Esys_CertifyX509(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_CertifyX509(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DATA const * x6;
  TPMT_SIG_SCHEME const * x7;
  TPM2B_MAX_BUFFER const * x8;
  TPM2B_MAX_BUFFER * * x9;
  TPM2B_DIGEST * * x10;
  TPMT_SIGNATURE * * x11;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;
  PyObject *arg11;

  if (!PyArg_UnpackTuple(args, "Esys_CertifyX509", 12, 12, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10, &arg11))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(82), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(82), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg10, (char **)&x10);
  if (datasize != 0) {
    x10 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg10, (char **)&x10,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg11, (char **)&x11);
  if (datasize != 0) {
    x11 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg11, (char **)&x11,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_CertifyX509(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_CertifyX509 _cffi_d_Esys_CertifyX509
#endif

static uint32_t _cffi_d_Esys_CertifyX509_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DATA const * x6, TPMT_SIG_SCHEME const * x7, TPM2B_MAX_BUFFER const * x8)
{
  return Esys_CertifyX509_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_CertifyX509_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DATA const * x6;
  TPMT_SIG_SCHEME const * x7;
  TPM2B_MAX_BUFFER const * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_CertifyX509_Async", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_CertifyX509_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_CertifyX509_Async _cffi_d_Esys_CertifyX509_Async
#endif

static uint32_t _cffi_d_Esys_CertifyX509_Finish(ESYS_CONTEXT * x0, TPM2B_MAX_BUFFER * * x1, TPM2B_DIGEST * * x2, TPMT_SIGNATURE * * x3)
{
  return Esys_CertifyX509_Finish(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_CertifyX509_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_MAX_BUFFER * * x1;
  TPM2B_DIGEST * * x2;
  TPMT_SIGNATURE * * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Esys_CertifyX509_Finish", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(82), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(82), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_CertifyX509_Finish(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_CertifyX509_Finish _cffi_d_Esys_CertifyX509_Finish
#endif

static uint32_t _cffi_d_Esys_Certify_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DATA const * x6, TPMT_SIG_SCHEME const * x7)
{
  return Esys_Certify_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Certify_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DATA const * x6;
  TPMT_SIG_SCHEME const * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_Certify_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Certify_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Certify_Async _cffi_d_Esys_Certify_Async
#endif

static uint32_t _cffi_d_Esys_Certify_Finish(ESYS_CONTEXT * x0, TPM2B_ATTEST * * x1, TPMT_SIGNATURE * * x2)
{
  return Esys_Certify_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Certify_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_ATTEST * * x1;
  TPMT_SIGNATURE * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_Certify_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(27), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_ATTEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(27), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Certify_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Certify_Finish _cffi_d_Esys_Certify_Finish
#endif

static uint32_t _cffi_d_Esys_ChangeEPS(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_ChangeEPS(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ChangeEPS(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_ChangeEPS", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ChangeEPS(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ChangeEPS _cffi_d_Esys_ChangeEPS
#endif

static uint32_t _cffi_d_Esys_ChangeEPS_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_ChangeEPS_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ChangeEPS_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_ChangeEPS_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ChangeEPS_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ChangeEPS_Async _cffi_d_Esys_ChangeEPS_Async
#endif

static uint32_t _cffi_d_Esys_ChangeEPS_Finish(ESYS_CONTEXT * x0)
{
  return Esys_ChangeEPS_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ChangeEPS_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ChangeEPS_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ChangeEPS_Finish _cffi_d_Esys_ChangeEPS_Finish
#endif

static uint32_t _cffi_d_Esys_ChangePPS(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_ChangePPS(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ChangePPS(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_ChangePPS", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ChangePPS(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ChangePPS _cffi_d_Esys_ChangePPS
#endif

static uint32_t _cffi_d_Esys_ChangePPS_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_ChangePPS_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ChangePPS_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_ChangePPS_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ChangePPS_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ChangePPS_Async _cffi_d_Esys_ChangePPS_Async
#endif

static uint32_t _cffi_d_Esys_ChangePPS_Finish(ESYS_CONTEXT * x0)
{
  return Esys_ChangePPS_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ChangePPS_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ChangePPS_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ChangePPS_Finish _cffi_d_Esys_ChangePPS_Finish
#endif

static uint32_t _cffi_d_Esys_Clear(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_Clear(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Clear(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_Clear", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Clear(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Clear _cffi_d_Esys_Clear
#endif

static uint32_t _cffi_d_Esys_ClearControl(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint8_t x5)
{
  return Esys_ClearControl(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ClearControl(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint8_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_ClearControl", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint8_t);
  if (x5 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ClearControl(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ClearControl _cffi_d_Esys_ClearControl
#endif

static uint32_t _cffi_d_Esys_ClearControl_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint8_t x5)
{
  return Esys_ClearControl_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ClearControl_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint8_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_ClearControl_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint8_t);
  if (x5 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ClearControl_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ClearControl_Async _cffi_d_Esys_ClearControl_Async
#endif

static uint32_t _cffi_d_Esys_ClearControl_Finish(ESYS_CONTEXT * x0)
{
  return Esys_ClearControl_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ClearControl_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ClearControl_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ClearControl_Finish _cffi_d_Esys_ClearControl_Finish
#endif

static uint32_t _cffi_d_Esys_Clear_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_Clear_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Clear_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_Clear_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Clear_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Clear_Async _cffi_d_Esys_Clear_Async
#endif

static uint32_t _cffi_d_Esys_Clear_Finish(ESYS_CONTEXT * x0)
{
  return Esys_Clear_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Clear_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Clear_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Clear_Finish _cffi_d_Esys_Clear_Finish
#endif

static uint32_t _cffi_d_Esys_ClockRateAdjust(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, int8_t x5)
{
  return Esys_ClockRateAdjust(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ClockRateAdjust(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  int8_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_ClockRateAdjust", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, int8_t);
  if (x5 == (int8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ClockRateAdjust(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ClockRateAdjust _cffi_d_Esys_ClockRateAdjust
#endif

static uint32_t _cffi_d_Esys_ClockRateAdjust_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, int8_t x5)
{
  return Esys_ClockRateAdjust_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ClockRateAdjust_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  int8_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_ClockRateAdjust_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, int8_t);
  if (x5 == (int8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ClockRateAdjust_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ClockRateAdjust_Async _cffi_d_Esys_ClockRateAdjust_Async
#endif

static uint32_t _cffi_d_Esys_ClockRateAdjust_Finish(ESYS_CONTEXT * x0)
{
  return Esys_ClockRateAdjust_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ClockRateAdjust_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ClockRateAdjust_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ClockRateAdjust_Finish _cffi_d_Esys_ClockRateAdjust_Finish
#endif

static uint32_t _cffi_d_Esys_ClockSet(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint64_t x5)
{
  return Esys_ClockSet(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ClockSet(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint64_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_ClockSet", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint64_t);
  if (x5 == (uint64_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ClockSet(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ClockSet _cffi_d_Esys_ClockSet
#endif

static uint32_t _cffi_d_Esys_ClockSet_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint64_t x5)
{
  return Esys_ClockSet_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ClockSet_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint64_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_ClockSet_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint64_t);
  if (x5 == (uint64_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ClockSet_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ClockSet_Async _cffi_d_Esys_ClockSet_Async
#endif

static uint32_t _cffi_d_Esys_ClockSet_Finish(ESYS_CONTEXT * x0)
{
  return Esys_ClockSet_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ClockSet_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ClockSet_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ClockSet_Finish _cffi_d_Esys_ClockSet_Finish
#endif

static uint32_t _cffi_d_Esys_Commit(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_ECC_POINT const * x5, TPM2B_SENSITIVE_DATA const * x6, TPM2B_ECC_PARAMETER const * x7, TPM2B_ECC_POINT * * x8, TPM2B_ECC_POINT * * x9, TPM2B_ECC_POINT * * x10, uint16_t * x11)
{
  return Esys_Commit(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Commit(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_ECC_POINT const * x5;
  TPM2B_SENSITIVE_DATA const * x6;
  TPM2B_ECC_PARAMETER const * x7;
  TPM2B_ECC_POINT * * x8;
  TPM2B_ECC_POINT * * x9;
  TPM2B_ECC_POINT * * x10;
  uint16_t * x11;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;
  PyObject *arg11;

  if (!PyArg_UnpackTuple(args, "Esys_Commit", 12, 12, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10, &arg11))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(691), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(691), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(376), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(376), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(734), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_PARAMETER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(734), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg10, (char **)&x10);
  if (datasize != 0) {
    x10 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg10, (char **)&x10,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(68), arg11, (char **)&x11);
  if (datasize != 0) {
    x11 = ((size_t)datasize) <= 640 ? (uint16_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(68), arg11, (char **)&x11,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Commit(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Commit _cffi_d_Esys_Commit
#endif

static uint32_t _cffi_d_Esys_Commit_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_ECC_POINT const * x5, TPM2B_SENSITIVE_DATA const * x6, TPM2B_ECC_PARAMETER const * x7)
{
  return Esys_Commit_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Commit_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_ECC_POINT const * x5;
  TPM2B_SENSITIVE_DATA const * x6;
  TPM2B_ECC_PARAMETER const * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_Commit_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(691), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(691), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(376), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(376), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(734), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_PARAMETER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(734), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Commit_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Commit_Async _cffi_d_Esys_Commit_Async
#endif

static uint32_t _cffi_d_Esys_Commit_Finish(ESYS_CONTEXT * x0, TPM2B_ECC_POINT * * x1, TPM2B_ECC_POINT * * x2, TPM2B_ECC_POINT * * x3, uint16_t * x4)
{
  return Esys_Commit_Finish(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Commit_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_ECC_POINT * * x1;
  TPM2B_ECC_POINT * * x2;
  TPM2B_ECC_POINT * * x3;
  uint16_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_Commit_Finish", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(68), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (uint16_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(68), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Commit_Finish(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Commit_Finish _cffi_d_Esys_Commit_Finish
#endif

static uint32_t _cffi_d_Esys_ContextLoad(ESYS_CONTEXT * x0, TPMS_CONTEXT const * x1, uint32_t * x2)
{
  return Esys_ContextLoad(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ContextLoad(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPMS_CONTEXT const * x1;
  uint32_t * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_ContextLoad", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(162), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPMS_CONTEXT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(162), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ContextLoad(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ContextLoad _cffi_d_Esys_ContextLoad
#endif

static uint32_t _cffi_d_Esys_ContextLoad_Async(ESYS_CONTEXT * x0, TPMS_CONTEXT const * x1)
{
  return Esys_ContextLoad_Async(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ContextLoad_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPMS_CONTEXT const * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_ContextLoad_Async", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(162), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPMS_CONTEXT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(162), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ContextLoad_Async(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ContextLoad_Async _cffi_d_Esys_ContextLoad_Async
#endif

static uint32_t _cffi_d_Esys_ContextLoad_Finish(ESYS_CONTEXT * x0, uint32_t * x1)
{
  return Esys_ContextLoad_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ContextLoad_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_ContextLoad_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ContextLoad_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ContextLoad_Finish _cffi_d_Esys_ContextLoad_Finish
#endif

static uint32_t _cffi_d_Esys_ContextSave(ESYS_CONTEXT * x0, uint32_t x1, TPMS_CONTEXT * * x2)
{
  return Esys_ContextSave(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ContextSave(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  TPMS_CONTEXT * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_ContextSave", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(158), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPMS_CONTEXT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(158), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ContextSave(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ContextSave _cffi_d_Esys_ContextSave
#endif

static uint32_t _cffi_d_Esys_ContextSave_Async(ESYS_CONTEXT * x0, uint32_t x1)
{
  return Esys_ContextSave_Async(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ContextSave_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_ContextSave_Async", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ContextSave_Async(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ContextSave_Async _cffi_d_Esys_ContextSave_Async
#endif

static uint32_t _cffi_d_Esys_ContextSave_Finish(ESYS_CONTEXT * x0, TPMS_CONTEXT * * x1)
{
  return Esys_ContextSave_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ContextSave_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPMS_CONTEXT * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_ContextSave_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(158), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPMS_CONTEXT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(158), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ContextSave_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ContextSave_Finish _cffi_d_Esys_ContextSave_Finish
#endif

static uint32_t _cffi_d_Esys_Create(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_SENSITIVE_CREATE const * x5, TPM2B_PUBLIC const * x6, TPM2B_DATA const * x7, TPML_PCR_SELECTION const * x8, TPM2B_PRIVATE * * x9, TPM2B_PUBLIC * * x10, TPM2B_CREATION_DATA * * x11, TPM2B_DIGEST * * x12, TPMT_TK_CREATION * * x13)
{
  return Esys_Create(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Create(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_SENSITIVE_CREATE const * x5;
  TPM2B_PUBLIC const * x6;
  TPM2B_DATA const * x7;
  TPML_PCR_SELECTION const * x8;
  TPM2B_PRIVATE * * x9;
  TPM2B_PUBLIC * * x10;
  TPM2B_CREATION_DATA * * x11;
  TPM2B_DIGEST * * x12;
  TPMT_TK_CREATION * * x13;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;
  PyObject *arg11;
  PyObject *arg12;
  PyObject *arg13;

  if (!PyArg_UnpackTuple(args, "Esys_Create", 14, 14, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10, &arg11, &arg12, &arg13))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(921), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE_CREATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(921), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(358), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(358), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(398), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPML_PCR_SELECTION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(398), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(37), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(37), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(121), arg10, (char **)&x10);
  if (datasize != 0) {
    x10 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(121), arg10, (char **)&x10,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(122), arg11, (char **)&x11);
  if (datasize != 0) {
    x11 = ((size_t)datasize) <= 640 ? (TPM2B_CREATION_DATA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(122), arg11, (char **)&x11,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg12, (char **)&x12);
  if (datasize != 0) {
    x12 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg12, (char **)&x12,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(124), arg13, (char **)&x13);
  if (datasize != 0) {
    x13 = ((size_t)datasize) <= 640 ? (TPMT_TK_CREATION * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(124), arg13, (char **)&x13,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Create(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Create _cffi_d_Esys_Create
#endif

static uint32_t _cffi_d_Esys_CreateLoaded(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_SENSITIVE_CREATE const * x5, TPM2B_TEMPLATE const * x6, uint32_t * x7, TPM2B_PRIVATE * * x8, TPM2B_PUBLIC * * x9)
{
  return Esys_CreateLoaded(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_CreateLoaded(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_SENSITIVE_CREATE const * x5;
  TPM2B_TEMPLATE const * x6;
  uint32_t * x7;
  TPM2B_PRIVATE * * x8;
  TPM2B_PUBLIC * * x9;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;

  if (!PyArg_UnpackTuple(args, "Esys_CreateLoaded", 10, 10, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(921), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE_CREATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(921), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(965), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_TEMPLATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(965), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(37), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(37), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(121), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(121), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_CreateLoaded(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_CreateLoaded _cffi_d_Esys_CreateLoaded
#endif

static uint32_t _cffi_d_Esys_CreateLoaded_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_SENSITIVE_CREATE const * x5, TPM2B_TEMPLATE const * x6)
{
  return Esys_CreateLoaded_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_CreateLoaded_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_SENSITIVE_CREATE const * x5;
  TPM2B_TEMPLATE const * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_CreateLoaded_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(921), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE_CREATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(921), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(965), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_TEMPLATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(965), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_CreateLoaded_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_CreateLoaded_Async _cffi_d_Esys_CreateLoaded_Async
#endif

static uint32_t _cffi_d_Esys_CreateLoaded_Finish(ESYS_CONTEXT * x0, uint32_t * x1, TPM2B_PRIVATE * * x2, TPM2B_PUBLIC * * x3)
{
  return Esys_CreateLoaded_Finish(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_CreateLoaded_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t * x1;
  TPM2B_PRIVATE * * x2;
  TPM2B_PUBLIC * * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Esys_CreateLoaded_Finish", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(37), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(37), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(121), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(121), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_CreateLoaded_Finish(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_CreateLoaded_Finish _cffi_d_Esys_CreateLoaded_Finish
#endif

static uint32_t _cffi_d_Esys_CreatePrimary(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_SENSITIVE_CREATE const * x5, TPM2B_PUBLIC const * x6, TPM2B_DATA const * x7, TPML_PCR_SELECTION const * x8, uint32_t * x9, TPM2B_PUBLIC * * x10, TPM2B_CREATION_DATA * * x11, TPM2B_DIGEST * * x12, TPMT_TK_CREATION * * x13)
{
  return Esys_CreatePrimary(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_CreatePrimary(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_SENSITIVE_CREATE const * x5;
  TPM2B_PUBLIC const * x6;
  TPM2B_DATA const * x7;
  TPML_PCR_SELECTION const * x8;
  uint32_t * x9;
  TPM2B_PUBLIC * * x10;
  TPM2B_CREATION_DATA * * x11;
  TPM2B_DIGEST * * x12;
  TPMT_TK_CREATION * * x13;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;
  PyObject *arg11;
  PyObject *arg12;
  PyObject *arg13;

  if (!PyArg_UnpackTuple(args, "Esys_CreatePrimary", 14, 14, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10, &arg11, &arg12, &arg13))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(921), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE_CREATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(921), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(358), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(358), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(398), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPML_PCR_SELECTION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(398), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(121), arg10, (char **)&x10);
  if (datasize != 0) {
    x10 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(121), arg10, (char **)&x10,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(122), arg11, (char **)&x11);
  if (datasize != 0) {
    x11 = ((size_t)datasize) <= 640 ? (TPM2B_CREATION_DATA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(122), arg11, (char **)&x11,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg12, (char **)&x12);
  if (datasize != 0) {
    x12 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg12, (char **)&x12,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(124), arg13, (char **)&x13);
  if (datasize != 0) {
    x13 = ((size_t)datasize) <= 640 ? (TPMT_TK_CREATION * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(124), arg13, (char **)&x13,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_CreatePrimary(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_CreatePrimary _cffi_d_Esys_CreatePrimary
#endif

static uint32_t _cffi_d_Esys_CreatePrimary_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_SENSITIVE_CREATE const * x5, TPM2B_PUBLIC const * x6, TPM2B_DATA const * x7, TPML_PCR_SELECTION const * x8)
{
  return Esys_CreatePrimary_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_CreatePrimary_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_SENSITIVE_CREATE const * x5;
  TPM2B_PUBLIC const * x6;
  TPM2B_DATA const * x7;
  TPML_PCR_SELECTION const * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_CreatePrimary_Async", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(921), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE_CREATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(921), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(358), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(358), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(398), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPML_PCR_SELECTION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(398), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_CreatePrimary_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_CreatePrimary_Async _cffi_d_Esys_CreatePrimary_Async
#endif

static uint32_t _cffi_d_Esys_CreatePrimary_Finish(ESYS_CONTEXT * x0, uint32_t * x1, TPM2B_PUBLIC * * x2, TPM2B_CREATION_DATA * * x3, TPM2B_DIGEST * * x4, TPMT_TK_CREATION * * x5)
{
  return Esys_CreatePrimary_Finish(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_CreatePrimary_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t * x1;
  TPM2B_PUBLIC * * x2;
  TPM2B_CREATION_DATA * * x3;
  TPM2B_DIGEST * * x4;
  TPMT_TK_CREATION * * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_CreatePrimary_Finish", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(121), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(121), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(122), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_CREATION_DATA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(122), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(124), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPMT_TK_CREATION * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(124), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_CreatePrimary_Finish(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_CreatePrimary_Finish _cffi_d_Esys_CreatePrimary_Finish
#endif

static uint32_t _cffi_d_Esys_Create_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_SENSITIVE_CREATE const * x5, TPM2B_PUBLIC const * x6, TPM2B_DATA const * x7, TPML_PCR_SELECTION const * x8)
{
  return Esys_Create_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Create_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_SENSITIVE_CREATE const * x5;
  TPM2B_PUBLIC const * x6;
  TPM2B_DATA const * x7;
  TPML_PCR_SELECTION const * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_Create_Async", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(921), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE_CREATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(921), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(358), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(358), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(398), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPML_PCR_SELECTION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(398), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Create_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Create_Async _cffi_d_Esys_Create_Async
#endif

static uint32_t _cffi_d_Esys_Create_Finish(ESYS_CONTEXT * x0, TPM2B_PRIVATE * * x1, TPM2B_PUBLIC * * x2, TPM2B_CREATION_DATA * * x3, TPM2B_DIGEST * * x4, TPMT_TK_CREATION * * x5)
{
  return Esys_Create_Finish(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Create_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_PRIVATE * * x1;
  TPM2B_PUBLIC * * x2;
  TPM2B_CREATION_DATA * * x3;
  TPM2B_DIGEST * * x4;
  TPMT_TK_CREATION * * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_Create_Finish", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(37), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(37), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(121), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(121), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(122), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_CREATION_DATA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(122), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(124), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPMT_TK_CREATION * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(124), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Create_Finish(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Create_Finish _cffi_d_Esys_Create_Finish
#endif

static uint32_t _cffi_d_Esys_DictionaryAttackLockReset(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_DictionaryAttackLockReset(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_DictionaryAttackLockReset(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_DictionaryAttackLockReset", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_DictionaryAttackLockReset(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_DictionaryAttackLockReset _cffi_d_Esys_DictionaryAttackLockReset
#endif

static uint32_t _cffi_d_Esys_DictionaryAttackLockReset_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_DictionaryAttackLockReset_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_DictionaryAttackLockReset_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_DictionaryAttackLockReset_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_DictionaryAttackLockReset_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_DictionaryAttackLockReset_Async _cffi_d_Esys_DictionaryAttackLockReset_Async
#endif

static uint32_t _cffi_d_Esys_DictionaryAttackLockReset_Finish(ESYS_CONTEXT * x0)
{
  return Esys_DictionaryAttackLockReset_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_DictionaryAttackLockReset_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_DictionaryAttackLockReset_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_DictionaryAttackLockReset_Finish _cffi_d_Esys_DictionaryAttackLockReset_Finish
#endif

static uint32_t _cffi_d_Esys_DictionaryAttackParameters(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6, uint32_t x7)
{
  return Esys_DictionaryAttackParameters(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_DictionaryAttackParameters(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  uint32_t x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_DictionaryAttackParameters", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x7 = _cffi_to_c_int(arg7, uint32_t);
  if (x7 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_DictionaryAttackParameters(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_DictionaryAttackParameters _cffi_d_Esys_DictionaryAttackParameters
#endif

static uint32_t _cffi_d_Esys_DictionaryAttackParameters_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6, uint32_t x7)
{
  return Esys_DictionaryAttackParameters_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_DictionaryAttackParameters_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  uint32_t x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_DictionaryAttackParameters_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x7 = _cffi_to_c_int(arg7, uint32_t);
  if (x7 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_DictionaryAttackParameters_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_DictionaryAttackParameters_Async _cffi_d_Esys_DictionaryAttackParameters_Async
#endif

static uint32_t _cffi_d_Esys_DictionaryAttackParameters_Finish(ESYS_CONTEXT * x0)
{
  return Esys_DictionaryAttackParameters_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_DictionaryAttackParameters_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_DictionaryAttackParameters_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_DictionaryAttackParameters_Finish _cffi_d_Esys_DictionaryAttackParameters_Finish
#endif

static uint32_t _cffi_d_Esys_Duplicate(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DATA const * x6, TPMT_SYM_DEF_OBJECT const * x7, TPM2B_DATA * * x8, TPM2B_PRIVATE * * x9, TPM2B_ENCRYPTED_SECRET * * x10)
{
  return Esys_Duplicate(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Duplicate(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DATA const * x6;
  TPMT_SYM_DEF_OBJECT const * x7;
  TPM2B_DATA * * x8;
  TPM2B_PRIVATE * * x9;
  TPM2B_ENCRYPTED_SECRET * * x10;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;

  if (!PyArg_UnpackTuple(args, "Esys_Duplicate", 11, 11, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(473), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPMT_SYM_DEF_OBJECT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(473), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(32), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_DATA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(32), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(37), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(37), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(38), arg10, (char **)&x10);
  if (datasize != 0) {
    x10 = ((size_t)datasize) <= 640 ? (TPM2B_ENCRYPTED_SECRET * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(38), arg10, (char **)&x10,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Duplicate(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Duplicate _cffi_d_Esys_Duplicate
#endif

static uint32_t _cffi_d_Esys_Duplicate_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DATA const * x6, TPMT_SYM_DEF_OBJECT const * x7)
{
  return Esys_Duplicate_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Duplicate_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DATA const * x6;
  TPMT_SYM_DEF_OBJECT const * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_Duplicate_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(473), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPMT_SYM_DEF_OBJECT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(473), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Duplicate_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Duplicate_Async _cffi_d_Esys_Duplicate_Async
#endif

static uint32_t _cffi_d_Esys_Duplicate_Finish(ESYS_CONTEXT * x0, TPM2B_DATA * * x1, TPM2B_PRIVATE * * x2, TPM2B_ENCRYPTED_SECRET * * x3)
{
  return Esys_Duplicate_Finish(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Duplicate_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_DATA * * x1;
  TPM2B_PRIVATE * * x2;
  TPM2B_ENCRYPTED_SECRET * * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Esys_Duplicate_Finish", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(32), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_DATA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(32), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(37), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(37), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(38), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_ENCRYPTED_SECRET * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(38), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Duplicate_Finish(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Duplicate_Finish _cffi_d_Esys_Duplicate_Finish
#endif

static uint32_t _cffi_d_Esys_ECC_Parameters(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint16_t x4, TPMS_ALGORITHM_DETAIL_ECC * * x5)
{
  return Esys_ECC_Parameters(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ECC_Parameters(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint16_t x4;
  TPMS_ALGORITHM_DETAIL_ECC * * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_ECC_Parameters", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint16_t);
  if (x4 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(154), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPMS_ALGORITHM_DETAIL_ECC * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(154), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ECC_Parameters(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ECC_Parameters _cffi_d_Esys_ECC_Parameters
#endif

static uint32_t _cffi_d_Esys_ECC_Parameters_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint16_t x4)
{
  return Esys_ECC_Parameters_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ECC_Parameters_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint16_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_ECC_Parameters_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint16_t);
  if (x4 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ECC_Parameters_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ECC_Parameters_Async _cffi_d_Esys_ECC_Parameters_Async
#endif

static uint32_t _cffi_d_Esys_ECC_Parameters_Finish(ESYS_CONTEXT * x0, TPMS_ALGORITHM_DETAIL_ECC * * x1)
{
  return Esys_ECC_Parameters_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ECC_Parameters_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPMS_ALGORITHM_DETAIL_ECC * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_ECC_Parameters_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(154), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPMS_ALGORITHM_DETAIL_ECC * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(154), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ECC_Parameters_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ECC_Parameters_Finish _cffi_d_Esys_ECC_Parameters_Finish
#endif

static uint32_t _cffi_d_Esys_ECDH_KeyGen(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_ECC_POINT * * x5, TPM2B_ECC_POINT * * x6)
{
  return Esys_ECDH_KeyGen(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ECDH_KeyGen(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_ECC_POINT * * x5;
  TPM2B_ECC_POINT * * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_ECDH_KeyGen", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ECDH_KeyGen(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ECDH_KeyGen _cffi_d_Esys_ECDH_KeyGen
#endif

static uint32_t _cffi_d_Esys_ECDH_KeyGen_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_ECDH_KeyGen_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ECDH_KeyGen_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_ECDH_KeyGen_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ECDH_KeyGen_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ECDH_KeyGen_Async _cffi_d_Esys_ECDH_KeyGen_Async
#endif

static uint32_t _cffi_d_Esys_ECDH_KeyGen_Finish(ESYS_CONTEXT * x0, TPM2B_ECC_POINT * * x1, TPM2B_ECC_POINT * * x2)
{
  return Esys_ECDH_KeyGen_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ECDH_KeyGen_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_ECC_POINT * * x1;
  TPM2B_ECC_POINT * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_ECDH_KeyGen_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ECDH_KeyGen_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ECDH_KeyGen_Finish _cffi_d_Esys_ECDH_KeyGen_Finish
#endif

static uint32_t _cffi_d_Esys_ECDH_ZGen(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_ECC_POINT const * x5, TPM2B_ECC_POINT * * x6)
{
  return Esys_ECDH_ZGen(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ECDH_ZGen(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_ECC_POINT const * x5;
  TPM2B_ECC_POINT * * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_ECDH_ZGen", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(691), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(691), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ECDH_ZGen(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ECDH_ZGen _cffi_d_Esys_ECDH_ZGen
#endif

static uint32_t _cffi_d_Esys_ECDH_ZGen_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_ECC_POINT const * x5)
{
  return Esys_ECDH_ZGen_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ECDH_ZGen_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_ECC_POINT const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_ECDH_ZGen_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(691), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(691), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ECDH_ZGen_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ECDH_ZGen_Async _cffi_d_Esys_ECDH_ZGen_Async
#endif

static uint32_t _cffi_d_Esys_ECDH_ZGen_Finish(ESYS_CONTEXT * x0, TPM2B_ECC_POINT * * x1)
{
  return Esys_ECDH_ZGen_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ECDH_ZGen_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_ECC_POINT * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_ECDH_ZGen_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ECDH_ZGen_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ECDH_ZGen_Finish _cffi_d_Esys_ECDH_ZGen_Finish
#endif

static uint32_t _cffi_d_Esys_EC_Ephemeral(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint16_t x4, TPM2B_ECC_POINT * * x5, uint16_t * x6)
{
  return Esys_EC_Ephemeral(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_EC_Ephemeral(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint16_t x4;
  TPM2B_ECC_POINT * * x5;
  uint16_t * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_EC_Ephemeral", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint16_t);
  if (x4 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(68), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (uint16_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(68), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_EC_Ephemeral(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_EC_Ephemeral _cffi_d_Esys_EC_Ephemeral
#endif

static uint32_t _cffi_d_Esys_EC_Ephemeral_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint16_t x4)
{
  return Esys_EC_Ephemeral_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_EC_Ephemeral_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint16_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_EC_Ephemeral_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint16_t);
  if (x4 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_EC_Ephemeral_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_EC_Ephemeral_Async _cffi_d_Esys_EC_Ephemeral_Async
#endif

static uint32_t _cffi_d_Esys_EC_Ephemeral_Finish(ESYS_CONTEXT * x0, TPM2B_ECC_POINT * * x1, uint16_t * x2)
{
  return Esys_EC_Ephemeral_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_EC_Ephemeral_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_ECC_POINT * * x1;
  uint16_t * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_EC_Ephemeral_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(68), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint16_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(68), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_EC_Ephemeral_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_EC_Ephemeral_Finish _cffi_d_Esys_EC_Ephemeral_Finish
#endif

static uint32_t _cffi_d_Esys_EncryptDecrypt(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint8_t x5, uint16_t x6, TPM2B_IV const * x7, TPM2B_MAX_BUFFER const * x8, TPM2B_MAX_BUFFER * * x9, TPM2B_IV * * x10)
{
  return Esys_EncryptDecrypt(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_EncryptDecrypt(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint8_t x5;
  uint16_t x6;
  TPM2B_IV const * x7;
  TPM2B_MAX_BUFFER const * x8;
  TPM2B_MAX_BUFFER * * x9;
  TPM2B_IV * * x10;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;

  if (!PyArg_UnpackTuple(args, "Esys_EncryptDecrypt", 11, 11, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint8_t);
  if (x5 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(831), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_IV const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(831), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(82), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(82), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(93), arg10, (char **)&x10);
  if (datasize != 0) {
    x10 = ((size_t)datasize) <= 640 ? (TPM2B_IV * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(93), arg10, (char **)&x10,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_EncryptDecrypt(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_EncryptDecrypt _cffi_d_Esys_EncryptDecrypt
#endif

static uint32_t _cffi_d_Esys_EncryptDecrypt2(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_MAX_BUFFER const * x5, uint8_t x6, uint16_t x7, TPM2B_IV const * x8, TPM2B_MAX_BUFFER * * x9, TPM2B_IV * * x10)
{
  return Esys_EncryptDecrypt2(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_EncryptDecrypt2(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_MAX_BUFFER const * x5;
  uint8_t x6;
  uint16_t x7;
  TPM2B_IV const * x8;
  TPM2B_MAX_BUFFER * * x9;
  TPM2B_IV * * x10;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;

  if (!PyArg_UnpackTuple(args, "Esys_EncryptDecrypt2", 11, 11, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint8_t);
  if (x6 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  x7 = _cffi_to_c_int(arg7, uint16_t);
  if (x7 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(831), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_IV const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(831), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(82), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(82), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(93), arg10, (char **)&x10);
  if (datasize != 0) {
    x10 = ((size_t)datasize) <= 640 ? (TPM2B_IV * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(93), arg10, (char **)&x10,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_EncryptDecrypt2(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_EncryptDecrypt2 _cffi_d_Esys_EncryptDecrypt2
#endif

static uint32_t _cffi_d_Esys_EncryptDecrypt2_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_MAX_BUFFER const * x5, uint8_t x6, uint16_t x7, TPM2B_IV const * x8)
{
  return Esys_EncryptDecrypt2_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_EncryptDecrypt2_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_MAX_BUFFER const * x5;
  uint8_t x6;
  uint16_t x7;
  TPM2B_IV const * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_EncryptDecrypt2_Async", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint8_t);
  if (x6 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  x7 = _cffi_to_c_int(arg7, uint16_t);
  if (x7 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(831), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_IV const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(831), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_EncryptDecrypt2_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_EncryptDecrypt2_Async _cffi_d_Esys_EncryptDecrypt2_Async
#endif

static uint32_t _cffi_d_Esys_EncryptDecrypt2_Finish(ESYS_CONTEXT * x0, TPM2B_MAX_BUFFER * * x1, TPM2B_IV * * x2)
{
  return Esys_EncryptDecrypt2_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_EncryptDecrypt2_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_MAX_BUFFER * * x1;
  TPM2B_IV * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_EncryptDecrypt2_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(82), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(82), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(93), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_IV * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(93), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_EncryptDecrypt2_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_EncryptDecrypt2_Finish _cffi_d_Esys_EncryptDecrypt2_Finish
#endif

static uint32_t _cffi_d_Esys_EncryptDecrypt_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint8_t x5, uint16_t x6, TPM2B_IV const * x7, TPM2B_MAX_BUFFER const * x8)
{
  return Esys_EncryptDecrypt_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_EncryptDecrypt_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint8_t x5;
  uint16_t x6;
  TPM2B_IV const * x7;
  TPM2B_MAX_BUFFER const * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_EncryptDecrypt_Async", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint8_t);
  if (x5 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(831), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_IV const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(831), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_EncryptDecrypt_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_EncryptDecrypt_Async _cffi_d_Esys_EncryptDecrypt_Async
#endif

static uint32_t _cffi_d_Esys_EncryptDecrypt_Finish(ESYS_CONTEXT * x0, TPM2B_MAX_BUFFER * * x1, TPM2B_IV * * x2)
{
  return Esys_EncryptDecrypt_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_EncryptDecrypt_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_MAX_BUFFER * * x1;
  TPM2B_IV * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_EncryptDecrypt_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(82), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(82), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(93), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_IV * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(93), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_EncryptDecrypt_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_EncryptDecrypt_Finish _cffi_d_Esys_EncryptDecrypt_Finish
#endif

static uint32_t _cffi_d_Esys_EventSequenceComplete(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_MAX_BUFFER const * x6, TPML_DIGEST_VALUES * * x7)
{
  return Esys_EventSequenceComplete(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_EventSequenceComplete(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_MAX_BUFFER const * x6;
  TPML_DIGEST_VALUES * * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_EventSequenceComplete", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(146), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPML_DIGEST_VALUES * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(146), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_EventSequenceComplete(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_EventSequenceComplete _cffi_d_Esys_EventSequenceComplete
#endif

static uint32_t _cffi_d_Esys_EventSequenceComplete_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_MAX_BUFFER const * x6)
{
  return Esys_EventSequenceComplete_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_EventSequenceComplete_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_MAX_BUFFER const * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_EventSequenceComplete_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_EventSequenceComplete_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_EventSequenceComplete_Async _cffi_d_Esys_EventSequenceComplete_Async
#endif

static uint32_t _cffi_d_Esys_EventSequenceComplete_Finish(ESYS_CONTEXT * x0, TPML_DIGEST_VALUES * * x1)
{
  return Esys_EventSequenceComplete_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_EventSequenceComplete_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPML_DIGEST_VALUES * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_EventSequenceComplete_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(146), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPML_DIGEST_VALUES * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(146), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_EventSequenceComplete_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_EventSequenceComplete_Finish _cffi_d_Esys_EventSequenceComplete_Finish
#endif

static uint32_t _cffi_d_Esys_EvictControl(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6, uint32_t * x7)
{
  return Esys_EvictControl(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_EvictControl(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  uint32_t * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_EvictControl", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_EvictControl(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_EvictControl _cffi_d_Esys_EvictControl
#endif

static uint32_t _cffi_d_Esys_EvictControl_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6)
{
  return Esys_EvictControl_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_EvictControl_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_EvictControl_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_EvictControl_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_EvictControl_Async _cffi_d_Esys_EvictControl_Async
#endif

static uint32_t _cffi_d_Esys_EvictControl_Finish(ESYS_CONTEXT * x0, uint32_t * x1)
{
  return Esys_EvictControl_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_EvictControl_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_EvictControl_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_EvictControl_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_EvictControl_Finish _cffi_d_Esys_EvictControl_Finish
#endif

static uint32_t _cffi_d_Esys_FieldUpgradeData(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPM2B_MAX_BUFFER const * x4, TPMT_HA * * x5, TPMT_HA * * x6)
{
  return Esys_FieldUpgradeData(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_FieldUpgradeData(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPM2B_MAX_BUFFER const * x4;
  TPMT_HA * * x5;
  TPMT_HA * * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_FieldUpgradeData", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(175), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPMT_HA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(175), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(175), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPMT_HA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(175), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_FieldUpgradeData(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_FieldUpgradeData _cffi_d_Esys_FieldUpgradeData
#endif

static uint32_t _cffi_d_Esys_FieldUpgradeData_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPM2B_MAX_BUFFER const * x4)
{
  return Esys_FieldUpgradeData_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_FieldUpgradeData_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPM2B_MAX_BUFFER const * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_FieldUpgradeData_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_FieldUpgradeData_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_FieldUpgradeData_Async _cffi_d_Esys_FieldUpgradeData_Async
#endif

static uint32_t _cffi_d_Esys_FieldUpgradeData_Finish(ESYS_CONTEXT * x0, TPMT_HA * * x1, TPMT_HA * * x2)
{
  return Esys_FieldUpgradeData_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_FieldUpgradeData_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPMT_HA * * x1;
  TPMT_HA * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_FieldUpgradeData_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(175), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPMT_HA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(175), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(175), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPMT_HA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(175), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_FieldUpgradeData_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_FieldUpgradeData_Finish _cffi_d_Esys_FieldUpgradeData_Finish
#endif

static uint32_t _cffi_d_Esys_FieldUpgradeStart(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DIGEST const * x6, TPMT_SIGNATURE const * x7)
{
  return Esys_FieldUpgradeStart(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_FieldUpgradeStart(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DIGEST const * x6;
  TPMT_SIGNATURE const * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_FieldUpgradeStart", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(604), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(604), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_FieldUpgradeStart(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_FieldUpgradeStart _cffi_d_Esys_FieldUpgradeStart
#endif

static uint32_t _cffi_d_Esys_FieldUpgradeStart_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DIGEST const * x6, TPMT_SIGNATURE const * x7)
{
  return Esys_FieldUpgradeStart_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_FieldUpgradeStart_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DIGEST const * x6;
  TPMT_SIGNATURE const * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_FieldUpgradeStart_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(604), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(604), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_FieldUpgradeStart_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_FieldUpgradeStart_Async _cffi_d_Esys_FieldUpgradeStart_Async
#endif

static uint32_t _cffi_d_Esys_FieldUpgradeStart_Finish(ESYS_CONTEXT * x0)
{
  return Esys_FieldUpgradeStart_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_FieldUpgradeStart_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_FieldUpgradeStart_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_FieldUpgradeStart_Finish _cffi_d_Esys_FieldUpgradeStart_Finish
#endif

static void _cffi_d_Esys_Finalize(ESYS_CONTEXT * * x0)
{
  Esys_Finalize(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Finalize(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(14), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(14), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { Esys_Finalize(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  Py_INCREF(Py_None);
  return Py_None;
}
#else
#  define _cffi_f_Esys_Finalize _cffi_d_Esys_Finalize
#endif

static uint32_t _cffi_d_Esys_FirmwareRead(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_MAX_BUFFER * * x5)
{
  return Esys_FirmwareRead(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_FirmwareRead(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_MAX_BUFFER * * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_FirmwareRead", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(82), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(82), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_FirmwareRead(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_FirmwareRead _cffi_d_Esys_FirmwareRead
#endif

static uint32_t _cffi_d_Esys_FirmwareRead_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_FirmwareRead_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_FirmwareRead_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_FirmwareRead_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_FirmwareRead_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_FirmwareRead_Async _cffi_d_Esys_FirmwareRead_Async
#endif

static uint32_t _cffi_d_Esys_FirmwareRead_Finish(ESYS_CONTEXT * x0, TPM2B_MAX_BUFFER * * x1)
{
  return Esys_FirmwareRead_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_FirmwareRead_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_MAX_BUFFER * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_FirmwareRead_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(82), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(82), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_FirmwareRead_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_FirmwareRead_Finish _cffi_d_Esys_FirmwareRead_Finish
#endif

static uint32_t _cffi_d_Esys_FlushContext(ESYS_CONTEXT * x0, uint32_t x1)
{
  return Esys_FlushContext(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_FlushContext(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_FlushContext", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_FlushContext(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_FlushContext _cffi_d_Esys_FlushContext
#endif

static uint32_t _cffi_d_Esys_FlushContext_Async(ESYS_CONTEXT * x0, uint32_t x1)
{
  return Esys_FlushContext_Async(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_FlushContext_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_FlushContext_Async", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_FlushContext_Async(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_FlushContext_Async _cffi_d_Esys_FlushContext_Async
#endif

static uint32_t _cffi_d_Esys_FlushContext_Finish(ESYS_CONTEXT * x0)
{
  return Esys_FlushContext_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_FlushContext_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_FlushContext_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_FlushContext_Finish _cffi_d_Esys_FlushContext_Finish
#endif

static void _cffi_d_Esys_Free(void * x0)
{
  Esys_Free(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Free(PyObject *self, PyObject *arg0)
{
  void * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1620), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (void *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1620), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { Esys_Free(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  Py_INCREF(Py_None);
  return Py_None;
}
#else
#  define _cffi_f_Esys_Free _cffi_d_Esys_Free
#endif

static uint32_t _cffi_d_Esys_GetCapability(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6, uint8_t * x7, TPMS_CAPABILITY_DATA * * x8)
{
  return Esys_GetCapability(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetCapability(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  uint8_t * x7;
  TPMS_CAPABILITY_DATA * * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_GetCapability", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1508), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPMS_CAPABILITY_DATA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1508), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetCapability(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetCapability _cffi_d_Esys_GetCapability
#endif

static uint32_t _cffi_d_Esys_GetCapability_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6)
{
  return Esys_GetCapability_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetCapability_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_GetCapability_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetCapability_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetCapability_Async _cffi_d_Esys_GetCapability_Async
#endif

static uint32_t _cffi_d_Esys_GetCapability_Finish(ESYS_CONTEXT * x0, uint8_t * x1, TPMS_CAPABILITY_DATA * * x2)
{
  return Esys_GetCapability_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetCapability_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint8_t * x1;
  TPMS_CAPABILITY_DATA * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_GetCapability_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1508), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPMS_CAPABILITY_DATA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1508), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetCapability_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetCapability_Finish _cffi_d_Esys_GetCapability_Finish
#endif

static uint32_t _cffi_d_Esys_GetCommandAuditDigest(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DATA const * x6, TPMT_SIG_SCHEME const * x7, TPM2B_ATTEST * * x8, TPMT_SIGNATURE * * x9)
{
  return Esys_GetCommandAuditDigest(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetCommandAuditDigest(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DATA const * x6;
  TPMT_SIG_SCHEME const * x7;
  TPM2B_ATTEST * * x8;
  TPMT_SIGNATURE * * x9;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;

  if (!PyArg_UnpackTuple(args, "Esys_GetCommandAuditDigest", 10, 10, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(27), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_ATTEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(27), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetCommandAuditDigest(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetCommandAuditDigest _cffi_d_Esys_GetCommandAuditDigest
#endif

static uint32_t _cffi_d_Esys_GetCommandAuditDigest_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DATA const * x6, TPMT_SIG_SCHEME const * x7)
{
  return Esys_GetCommandAuditDigest_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetCommandAuditDigest_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DATA const * x6;
  TPMT_SIG_SCHEME const * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_GetCommandAuditDigest_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetCommandAuditDigest_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetCommandAuditDigest_Async _cffi_d_Esys_GetCommandAuditDigest_Async
#endif

static uint32_t _cffi_d_Esys_GetCommandAuditDigest_Finish(ESYS_CONTEXT * x0, TPM2B_ATTEST * * x1, TPMT_SIGNATURE * * x2)
{
  return Esys_GetCommandAuditDigest_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetCommandAuditDigest_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_ATTEST * * x1;
  TPMT_SIGNATURE * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_GetCommandAuditDigest_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(27), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_ATTEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(27), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetCommandAuditDigest_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetCommandAuditDigest_Finish _cffi_d_Esys_GetCommandAuditDigest_Finish
#endif

static uint32_t _cffi_d_Esys_GetPollHandles(ESYS_CONTEXT * x0, TSS2_TCTI_POLL_HANDLE * * x1, size_t * x2)
{
  return Esys_GetPollHandles(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetPollHandles(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TSS2_TCTI_POLL_HANDLE * * x1;
  size_t * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_GetPollHandles", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(196), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TSS2_TCTI_POLL_HANDLE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(196), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetPollHandles(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetPollHandles _cffi_d_Esys_GetPollHandles
#endif

static uint32_t _cffi_d_Esys_GetRandom(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint16_t x4, TPM2B_DIGEST * * x5)
{
  return Esys_GetRandom(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetRandom(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint16_t x4;
  TPM2B_DIGEST * * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_GetRandom", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint16_t);
  if (x4 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetRandom(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetRandom _cffi_d_Esys_GetRandom
#endif

static uint32_t _cffi_d_Esys_GetRandom_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint16_t x4)
{
  return Esys_GetRandom_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetRandom_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint16_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_GetRandom_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint16_t);
  if (x4 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetRandom_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetRandom_Async _cffi_d_Esys_GetRandom_Async
#endif

static uint32_t _cffi_d_Esys_GetRandom_Finish(ESYS_CONTEXT * x0, TPM2B_DIGEST * * x1)
{
  return Esys_GetRandom_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetRandom_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_DIGEST * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_GetRandom_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetRandom_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetRandom_Finish _cffi_d_Esys_GetRandom_Finish
#endif

static uint32_t _cffi_d_Esys_GetSessionAuditDigest(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6, TPM2B_DATA const * x7, TPMT_SIG_SCHEME const * x8, TPM2B_ATTEST * * x9, TPMT_SIGNATURE * * x10)
{
  return Esys_GetSessionAuditDigest(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetSessionAuditDigest(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  TPM2B_DATA const * x7;
  TPMT_SIG_SCHEME const * x8;
  TPM2B_ATTEST * * x9;
  TPMT_SIGNATURE * * x10;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;

  if (!PyArg_UnpackTuple(args, "Esys_GetSessionAuditDigest", 11, 11, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(27), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPM2B_ATTEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(27), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg10, (char **)&x10);
  if (datasize != 0) {
    x10 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg10, (char **)&x10,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetSessionAuditDigest(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetSessionAuditDigest _cffi_d_Esys_GetSessionAuditDigest
#endif

static uint32_t _cffi_d_Esys_GetSessionAuditDigest_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6, TPM2B_DATA const * x7, TPMT_SIG_SCHEME const * x8)
{
  return Esys_GetSessionAuditDigest_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetSessionAuditDigest_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  TPM2B_DATA const * x7;
  TPMT_SIG_SCHEME const * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_GetSessionAuditDigest_Async", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetSessionAuditDigest_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetSessionAuditDigest_Async _cffi_d_Esys_GetSessionAuditDigest_Async
#endif

static uint32_t _cffi_d_Esys_GetSessionAuditDigest_Finish(ESYS_CONTEXT * x0, TPM2B_ATTEST * * x1, TPMT_SIGNATURE * * x2)
{
  return Esys_GetSessionAuditDigest_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetSessionAuditDigest_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_ATTEST * * x1;
  TPMT_SIGNATURE * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_GetSessionAuditDigest_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(27), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_ATTEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(27), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetSessionAuditDigest_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetSessionAuditDigest_Finish _cffi_d_Esys_GetSessionAuditDigest_Finish
#endif

static uint32_t _cffi_d_Esys_GetSysContext(ESYS_CONTEXT * x0, TSS2_SYS_CONTEXT * * x1)
{
  return Esys_GetSysContext(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetSysContext(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TSS2_SYS_CONTEXT * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_GetSysContext", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(188), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TSS2_SYS_CONTEXT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(188), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetSysContext(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetSysContext _cffi_d_Esys_GetSysContext
#endif

static uint32_t _cffi_d_Esys_GetTcti(ESYS_CONTEXT * x0, TSS2_TCTI_CONTEXT * * x1)
{
  return Esys_GetTcti(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetTcti(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TSS2_TCTI_CONTEXT * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_GetTcti", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(192), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TSS2_TCTI_CONTEXT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(192), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetTcti(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetTcti _cffi_d_Esys_GetTcti
#endif

static uint32_t _cffi_d_Esys_GetTestResult(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPM2B_MAX_BUFFER * * x4, uint32_t * x5)
{
  return Esys_GetTestResult(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetTestResult(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPM2B_MAX_BUFFER * * x4;
  uint32_t * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_GetTestResult", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(82), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(82), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetTestResult(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetTestResult _cffi_d_Esys_GetTestResult
#endif

static uint32_t _cffi_d_Esys_GetTestResult_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3)
{
  return Esys_GetTestResult_Async(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetTestResult_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Esys_GetTestResult_Async", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetTestResult_Async(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetTestResult_Async _cffi_d_Esys_GetTestResult_Async
#endif

static uint32_t _cffi_d_Esys_GetTestResult_Finish(ESYS_CONTEXT * x0, TPM2B_MAX_BUFFER * * x1, uint32_t * x2)
{
  return Esys_GetTestResult_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetTestResult_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_MAX_BUFFER * * x1;
  uint32_t * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_GetTestResult_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(82), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(82), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetTestResult_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetTestResult_Finish _cffi_d_Esys_GetTestResult_Finish
#endif

static uint32_t _cffi_d_Esys_GetTime(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DATA const * x6, TPMT_SIG_SCHEME const * x7, TPM2B_ATTEST * * x8, TPMT_SIGNATURE * * x9)
{
  return Esys_GetTime(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetTime(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DATA const * x6;
  TPMT_SIG_SCHEME const * x7;
  TPM2B_ATTEST * * x8;
  TPMT_SIGNATURE * * x9;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;

  if (!PyArg_UnpackTuple(args, "Esys_GetTime", 10, 10, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(27), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_ATTEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(27), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetTime(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetTime _cffi_d_Esys_GetTime
#endif

static uint32_t _cffi_d_Esys_GetTime_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DATA const * x6, TPMT_SIG_SCHEME const * x7)
{
  return Esys_GetTime_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetTime_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DATA const * x6;
  TPMT_SIG_SCHEME const * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_GetTime_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetTime_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetTime_Async _cffi_d_Esys_GetTime_Async
#endif

static uint32_t _cffi_d_Esys_GetTime_Finish(ESYS_CONTEXT * x0, TPM2B_ATTEST * * x1, TPMT_SIGNATURE * * x2)
{
  return Esys_GetTime_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_GetTime_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_ATTEST * * x1;
  TPMT_SIGNATURE * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_GetTime_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(27), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_ATTEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(27), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_GetTime_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_GetTime_Finish _cffi_d_Esys_GetTime_Finish
#endif

static uint32_t _cffi_d_Esys_HMAC(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_MAX_BUFFER const * x5, uint16_t x6, TPM2B_DIGEST * * x7)
{
  return Esys_HMAC(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_HMAC(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_MAX_BUFFER const * x5;
  uint16_t x6;
  TPM2B_DIGEST * * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_HMAC", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_HMAC(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_HMAC _cffi_d_Esys_HMAC
#endif

static uint32_t _cffi_d_Esys_HMAC_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_MAX_BUFFER const * x5, uint16_t x6)
{
  return Esys_HMAC_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_HMAC_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_MAX_BUFFER const * x5;
  uint16_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_HMAC_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_HMAC_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_HMAC_Async _cffi_d_Esys_HMAC_Async
#endif

static uint32_t _cffi_d_Esys_HMAC_Finish(ESYS_CONTEXT * x0, TPM2B_DIGEST * * x1)
{
  return Esys_HMAC_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_HMAC_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_DIGEST * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_HMAC_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_HMAC_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_HMAC_Finish _cffi_d_Esys_HMAC_Finish
#endif

static uint32_t _cffi_d_Esys_HMAC_Start(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, uint16_t x6, uint32_t * x7)
{
  return Esys_HMAC_Start(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_HMAC_Start(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  uint16_t x6;
  uint32_t * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_HMAC_Start", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_HMAC_Start(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_HMAC_Start _cffi_d_Esys_HMAC_Start
#endif

static uint32_t _cffi_d_Esys_HMAC_Start_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, uint16_t x6)
{
  return Esys_HMAC_Start_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_HMAC_Start_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  uint16_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_HMAC_Start_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_HMAC_Start_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_HMAC_Start_Async _cffi_d_Esys_HMAC_Start_Async
#endif

static uint32_t _cffi_d_Esys_HMAC_Start_Finish(ESYS_CONTEXT * x0, uint32_t * x1)
{
  return Esys_HMAC_Start_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_HMAC_Start_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_HMAC_Start_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_HMAC_Start_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_HMAC_Start_Finish _cffi_d_Esys_HMAC_Start_Finish
#endif

static uint32_t _cffi_d_Esys_Hash(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPM2B_MAX_BUFFER const * x4, uint16_t x5, uint32_t x6, TPM2B_DIGEST * * x7, TPMT_TK_HASHCHECK * * x8)
{
  return Esys_Hash(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Hash(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPM2B_MAX_BUFFER const * x4;
  uint16_t x5;
  uint32_t x6;
  TPM2B_DIGEST * * x7;
  TPMT_TK_HASHCHECK * * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_Hash", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x5 = _cffi_to_c_int(arg5, uint16_t);
  if (x5 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(52), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPMT_TK_HASHCHECK * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(52), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Hash(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Hash _cffi_d_Esys_Hash
#endif

static uint32_t _cffi_d_Esys_HashSequenceStart(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPM2B_DIGEST const * x4, uint16_t x5, uint32_t * x6)
{
  return Esys_HashSequenceStart(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_HashSequenceStart(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPM2B_DIGEST const * x4;
  uint16_t x5;
  uint32_t * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_HashSequenceStart", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x5 = _cffi_to_c_int(arg5, uint16_t);
  if (x5 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_HashSequenceStart(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_HashSequenceStart _cffi_d_Esys_HashSequenceStart
#endif

static uint32_t _cffi_d_Esys_HashSequenceStart_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPM2B_DIGEST const * x4, uint16_t x5)
{
  return Esys_HashSequenceStart_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_HashSequenceStart_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPM2B_DIGEST const * x4;
  uint16_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_HashSequenceStart_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x5 = _cffi_to_c_int(arg5, uint16_t);
  if (x5 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_HashSequenceStart_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_HashSequenceStart_Async _cffi_d_Esys_HashSequenceStart_Async
#endif

static uint32_t _cffi_d_Esys_HashSequenceStart_Finish(ESYS_CONTEXT * x0, uint32_t * x1)
{
  return Esys_HashSequenceStart_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_HashSequenceStart_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_HashSequenceStart_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_HashSequenceStart_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_HashSequenceStart_Finish _cffi_d_Esys_HashSequenceStart_Finish
#endif

static uint32_t _cffi_d_Esys_Hash_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPM2B_MAX_BUFFER const * x4, uint16_t x5, uint32_t x6)
{
  return Esys_Hash_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Hash_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPM2B_MAX_BUFFER const * x4;
  uint16_t x5;
  uint32_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_Hash_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x5 = _cffi_to_c_int(arg5, uint16_t);
  if (x5 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Hash_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Hash_Async _cffi_d_Esys_Hash_Async
#endif

static uint32_t _cffi_d_Esys_Hash_Finish(ESYS_CONTEXT * x0, TPM2B_DIGEST * * x1, TPMT_TK_HASHCHECK * * x2)
{
  return Esys_Hash_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Hash_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_DIGEST * * x1;
  TPMT_TK_HASHCHECK * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_Hash_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(52), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPMT_TK_HASHCHECK * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(52), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Hash_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Hash_Finish _cffi_d_Esys_Hash_Finish
#endif

static uint32_t _cffi_d_Esys_HierarchyChangeAuth(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5)
{
  return Esys_HierarchyChangeAuth(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_HierarchyChangeAuth(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_HierarchyChangeAuth", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_HierarchyChangeAuth(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_HierarchyChangeAuth _cffi_d_Esys_HierarchyChangeAuth
#endif

static uint32_t _cffi_d_Esys_HierarchyChangeAuth_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5)
{
  return Esys_HierarchyChangeAuth_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_HierarchyChangeAuth_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_HierarchyChangeAuth_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_HierarchyChangeAuth_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_HierarchyChangeAuth_Async _cffi_d_Esys_HierarchyChangeAuth_Async
#endif

static uint32_t _cffi_d_Esys_HierarchyChangeAuth_Finish(ESYS_CONTEXT * x0)
{
  return Esys_HierarchyChangeAuth_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_HierarchyChangeAuth_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_HierarchyChangeAuth_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_HierarchyChangeAuth_Finish _cffi_d_Esys_HierarchyChangeAuth_Finish
#endif

static uint32_t _cffi_d_Esys_HierarchyControl(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint8_t x6)
{
  return Esys_HierarchyControl(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_HierarchyControl(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint8_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_HierarchyControl", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint8_t);
  if (x6 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_HierarchyControl(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_HierarchyControl _cffi_d_Esys_HierarchyControl
#endif

static uint32_t _cffi_d_Esys_HierarchyControl_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint8_t x6)
{
  return Esys_HierarchyControl_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_HierarchyControl_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint8_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_HierarchyControl_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint8_t);
  if (x6 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_HierarchyControl_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_HierarchyControl_Async _cffi_d_Esys_HierarchyControl_Async
#endif

static uint32_t _cffi_d_Esys_HierarchyControl_Finish(ESYS_CONTEXT * x0)
{
  return Esys_HierarchyControl_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_HierarchyControl_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_HierarchyControl_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_HierarchyControl_Finish _cffi_d_Esys_HierarchyControl_Finish
#endif

static uint32_t _cffi_d_Esys_Import(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DATA const * x5, TPM2B_PUBLIC const * x6, TPM2B_PRIVATE const * x7, TPM2B_ENCRYPTED_SECRET const * x8, TPMT_SYM_DEF_OBJECT const * x9, TPM2B_PRIVATE * * x10)
{
  return Esys_Import(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Import(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DATA const * x5;
  TPM2B_PUBLIC const * x6;
  TPM2B_PRIVATE const * x7;
  TPM2B_ENCRYPTED_SECRET const * x8;
  TPMT_SYM_DEF_OBJECT const * x9;
  TPM2B_PRIVATE * * x10;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;

  if (!PyArg_UnpackTuple(args, "Esys_Import", 11, 11, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(358), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(358), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(471), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(471), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(472), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_ENCRYPTED_SECRET const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(472), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(473), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPMT_SYM_DEF_OBJECT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(473), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(37), arg10, (char **)&x10);
  if (datasize != 0) {
    x10 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(37), arg10, (char **)&x10,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Import(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Import _cffi_d_Esys_Import
#endif

static uint32_t _cffi_d_Esys_Import_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DATA const * x5, TPM2B_PUBLIC const * x6, TPM2B_PRIVATE const * x7, TPM2B_ENCRYPTED_SECRET const * x8, TPMT_SYM_DEF_OBJECT const * x9)
{
  return Esys_Import_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Import_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DATA const * x5;
  TPM2B_PUBLIC const * x6;
  TPM2B_PRIVATE const * x7;
  TPM2B_ENCRYPTED_SECRET const * x8;
  TPMT_SYM_DEF_OBJECT const * x9;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;

  if (!PyArg_UnpackTuple(args, "Esys_Import_Async", 10, 10, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(358), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(358), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(471), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(471), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(472), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_ENCRYPTED_SECRET const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(472), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(473), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPMT_SYM_DEF_OBJECT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(473), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Import_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Import_Async _cffi_d_Esys_Import_Async
#endif

static uint32_t _cffi_d_Esys_Import_Finish(ESYS_CONTEXT * x0, TPM2B_PRIVATE * * x1)
{
  return Esys_Import_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Import_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_PRIVATE * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_Import_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(37), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(37), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Import_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Import_Finish _cffi_d_Esys_Import_Finish
#endif

static uint32_t _cffi_d_Esys_IncrementalSelfTest(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPML_ALG const * x4, TPML_ALG * * x5)
{
  return Esys_IncrementalSelfTest(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_IncrementalSelfTest(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPML_ALG const * x4;
  TPML_ALG * * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_IncrementalSelfTest", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(383), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPML_ALG const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(383), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(142), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPML_ALG * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(142), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_IncrementalSelfTest(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_IncrementalSelfTest _cffi_d_Esys_IncrementalSelfTest
#endif

static uint32_t _cffi_d_Esys_IncrementalSelfTest_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPML_ALG const * x4)
{
  return Esys_IncrementalSelfTest_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_IncrementalSelfTest_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPML_ALG const * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_IncrementalSelfTest_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(383), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPML_ALG const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(383), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_IncrementalSelfTest_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_IncrementalSelfTest_Async _cffi_d_Esys_IncrementalSelfTest_Async
#endif

static uint32_t _cffi_d_Esys_IncrementalSelfTest_Finish(ESYS_CONTEXT * x0, TPML_ALG * * x1)
{
  return Esys_IncrementalSelfTest_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_IncrementalSelfTest_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPML_ALG * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_IncrementalSelfTest_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(142), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPML_ALG * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(142), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_IncrementalSelfTest_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_IncrementalSelfTest_Finish _cffi_d_Esys_IncrementalSelfTest_Finish
#endif

static uint32_t _cffi_d_Esys_Initialize(ESYS_CONTEXT * * x0, TSS2_TCTI_CONTEXT * x1, TSS2_ABI_VERSION * x2)
{
  return Esys_Initialize(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Initialize(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * * x0;
  TSS2_TCTI_CONTEXT * x1;
  TSS2_ABI_VERSION * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_Initialize", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(14), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(14), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(15), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TSS2_TCTI_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(15), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(16), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TSS2_ABI_VERSION *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(16), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Initialize(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Initialize _cffi_d_Esys_Initialize
#endif

static uint32_t _cffi_d_Esys_Load(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_PRIVATE const * x5, TPM2B_PUBLIC const * x6, uint32_t * x7)
{
  return Esys_Load(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Load(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_PRIVATE const * x5;
  TPM2B_PUBLIC const * x6;
  uint32_t * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_Load", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(471), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(471), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(358), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(358), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Load(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Load _cffi_d_Esys_Load
#endif

static uint32_t _cffi_d_Esys_LoadExternal(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPM2B_SENSITIVE const * x4, TPM2B_PUBLIC const * x5, uint32_t x6, uint32_t * x7)
{
  return Esys_LoadExternal(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_LoadExternal(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPM2B_SENSITIVE const * x4;
  TPM2B_PUBLIC const * x5;
  uint32_t x6;
  uint32_t * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_LoadExternal", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(357), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(357), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(358), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(358), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_LoadExternal(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_LoadExternal _cffi_d_Esys_LoadExternal
#endif

static uint32_t _cffi_d_Esys_LoadExternal_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPM2B_SENSITIVE const * x4, TPM2B_PUBLIC const * x5, uint32_t x6)
{
  return Esys_LoadExternal_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_LoadExternal_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPM2B_SENSITIVE const * x4;
  TPM2B_PUBLIC const * x5;
  uint32_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_LoadExternal_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(357), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(357), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(358), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(358), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_LoadExternal_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_LoadExternal_Async _cffi_d_Esys_LoadExternal_Async
#endif

static uint32_t _cffi_d_Esys_LoadExternal_Finish(ESYS_CONTEXT * x0, uint32_t * x1)
{
  return Esys_LoadExternal_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_LoadExternal_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_LoadExternal_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_LoadExternal_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_LoadExternal_Finish _cffi_d_Esys_LoadExternal_Finish
#endif

static uint32_t _cffi_d_Esys_Load_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_PRIVATE const * x5, TPM2B_PUBLIC const * x6)
{
  return Esys_Load_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Load_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_PRIVATE const * x5;
  TPM2B_PUBLIC const * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_Load_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(471), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(471), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(358), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(358), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Load_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Load_Async _cffi_d_Esys_Load_Async
#endif

static uint32_t _cffi_d_Esys_Load_Finish(ESYS_CONTEXT * x0, uint32_t * x1)
{
  return Esys_Load_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Load_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_Load_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Load_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Load_Finish _cffi_d_Esys_Load_Finish
#endif

static uint32_t _cffi_d_Esys_MAC(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_MAX_BUFFER const * x5, uint16_t x6, TPM2B_DIGEST * * x7)
{
  return Esys_MAC(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_MAC(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_MAX_BUFFER const * x5;
  uint16_t x6;
  TPM2B_DIGEST * * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_MAC", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_MAC(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_MAC _cffi_d_Esys_MAC
#endif

static uint32_t _cffi_d_Esys_MAC_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_MAX_BUFFER const * x5, uint16_t x6)
{
  return Esys_MAC_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_MAC_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_MAX_BUFFER const * x5;
  uint16_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_MAC_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_MAC_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_MAC_Async _cffi_d_Esys_MAC_Async
#endif

static uint32_t _cffi_d_Esys_MAC_Finish(ESYS_CONTEXT * x0, TPM2B_DIGEST * * x1)
{
  return Esys_MAC_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_MAC_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_DIGEST * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_MAC_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_MAC_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_MAC_Finish _cffi_d_Esys_MAC_Finish
#endif

static uint32_t _cffi_d_Esys_MAC_Start(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, uint16_t x6, uint32_t * x7)
{
  return Esys_MAC_Start(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_MAC_Start(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  uint16_t x6;
  uint32_t * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_MAC_Start", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_MAC_Start(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_MAC_Start _cffi_d_Esys_MAC_Start
#endif

static uint32_t _cffi_d_Esys_MAC_Start_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, uint16_t x6)
{
  return Esys_MAC_Start_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_MAC_Start_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  uint16_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_MAC_Start_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_MAC_Start_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_MAC_Start_Async _cffi_d_Esys_MAC_Start_Async
#endif

static uint32_t _cffi_d_Esys_MAC_Start_Finish(ESYS_CONTEXT * x0, uint32_t * x1)
{
  return Esys_MAC_Start_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_MAC_Start_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_MAC_Start_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_MAC_Start_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_MAC_Start_Finish _cffi_d_Esys_MAC_Start_Finish
#endif

static uint32_t _cffi_d_Esys_MakeCredential(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, TPM2B_NAME const * x6, TPM2B_ID_OBJECT * * x7, TPM2B_ENCRYPTED_SECRET * * x8)
{
  return Esys_MakeCredential(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_MakeCredential(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  TPM2B_NAME const * x6;
  TPM2B_ID_OBJECT * * x7;
  TPM2B_ENCRYPTED_SECRET * * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_MakeCredential", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(535), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_NAME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(535), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(77), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_ID_OBJECT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(77), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(38), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_ENCRYPTED_SECRET * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(38), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_MakeCredential(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_MakeCredential _cffi_d_Esys_MakeCredential
#endif

static uint32_t _cffi_d_Esys_MakeCredential_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, TPM2B_NAME const * x6)
{
  return Esys_MakeCredential_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_MakeCredential_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  TPM2B_NAME const * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_MakeCredential_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(535), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_NAME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(535), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_MakeCredential_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_MakeCredential_Async _cffi_d_Esys_MakeCredential_Async
#endif

static uint32_t _cffi_d_Esys_MakeCredential_Finish(ESYS_CONTEXT * x0, TPM2B_ID_OBJECT * * x1, TPM2B_ENCRYPTED_SECRET * * x2)
{
  return Esys_MakeCredential_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_MakeCredential_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_ID_OBJECT * * x1;
  TPM2B_ENCRYPTED_SECRET * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_MakeCredential_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(77), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_ID_OBJECT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(77), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(38), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_ENCRYPTED_SECRET * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(38), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_MakeCredential_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_MakeCredential_Finish _cffi_d_Esys_MakeCredential_Finish
#endif

static uint32_t _cffi_d_Esys_NV_Certify(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6, TPM2B_DATA const * x7, TPMT_SIG_SCHEME const * x8, uint16_t x9, uint16_t x10, TPM2B_ATTEST * * x11, TPMT_SIGNATURE * * x12)
{
  return Esys_NV_Certify(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_Certify(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  TPM2B_DATA const * x7;
  TPMT_SIG_SCHEME const * x8;
  uint16_t x9;
  uint16_t x10;
  TPM2B_ATTEST * * x11;
  TPMT_SIGNATURE * * x12;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;
  PyObject *arg11;
  PyObject *arg12;

  if (!PyArg_UnpackTuple(args, "Esys_NV_Certify", 13, 13, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10, &arg11, &arg12))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x9 = _cffi_to_c_int(arg9, uint16_t);
  if (x9 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  x10 = _cffi_to_c_int(arg10, uint16_t);
  if (x10 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(27), arg11, (char **)&x11);
  if (datasize != 0) {
    x11 = ((size_t)datasize) <= 640 ? (TPM2B_ATTEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(27), arg11, (char **)&x11,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg12, (char **)&x12);
  if (datasize != 0) {
    x12 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg12, (char **)&x12,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_Certify(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_Certify _cffi_d_Esys_NV_Certify
#endif

static uint32_t _cffi_d_Esys_NV_Certify_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6, TPM2B_DATA const * x7, TPMT_SIG_SCHEME const * x8, uint16_t x9, uint16_t x10)
{
  return Esys_NV_Certify_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_Certify_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  TPM2B_DATA const * x7;
  TPMT_SIG_SCHEME const * x8;
  uint16_t x9;
  uint16_t x10;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;

  if (!PyArg_UnpackTuple(args, "Esys_NV_Certify_Async", 11, 11, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x9 = _cffi_to_c_int(arg9, uint16_t);
  if (x9 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  x10 = _cffi_to_c_int(arg10, uint16_t);
  if (x10 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_Certify_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_Certify_Async _cffi_d_Esys_NV_Certify_Async
#endif

static uint32_t _cffi_d_Esys_NV_Certify_Finish(ESYS_CONTEXT * x0, TPM2B_ATTEST * * x1, TPMT_SIGNATURE * * x2)
{
  return Esys_NV_Certify_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_Certify_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_ATTEST * * x1;
  TPMT_SIGNATURE * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_NV_Certify_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(27), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_ATTEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(27), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_Certify_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_Certify_Finish _cffi_d_Esys_NV_Certify_Finish
#endif

static uint32_t _cffi_d_Esys_NV_ChangeAuth(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5)
{
  return Esys_NV_ChangeAuth(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_ChangeAuth(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_NV_ChangeAuth", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_ChangeAuth(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_ChangeAuth _cffi_d_Esys_NV_ChangeAuth
#endif

static uint32_t _cffi_d_Esys_NV_ChangeAuth_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5)
{
  return Esys_NV_ChangeAuth_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_ChangeAuth_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_NV_ChangeAuth_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_ChangeAuth_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_ChangeAuth_Async _cffi_d_Esys_NV_ChangeAuth_Async
#endif

static uint32_t _cffi_d_Esys_NV_ChangeAuth_Finish(ESYS_CONTEXT * x0)
{
  return Esys_NV_ChangeAuth_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_ChangeAuth_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_ChangeAuth_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_ChangeAuth_Finish _cffi_d_Esys_NV_ChangeAuth_Finish
#endif

static uint32_t _cffi_d_Esys_NV_DefineSpace(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, TPM2B_NV_PUBLIC const * x6, uint32_t * x7)
{
  return Esys_NV_DefineSpace(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_DefineSpace(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  TPM2B_NV_PUBLIC const * x6;
  uint32_t * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_NV_DefineSpace", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(576), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_NV_PUBLIC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(576), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_DefineSpace(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_DefineSpace _cffi_d_Esys_NV_DefineSpace
#endif

static uint32_t _cffi_d_Esys_NV_DefineSpace_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, TPM2B_NV_PUBLIC const * x6)
{
  return Esys_NV_DefineSpace_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_DefineSpace_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  TPM2B_NV_PUBLIC const * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_NV_DefineSpace_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(576), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_NV_PUBLIC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(576), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_DefineSpace_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_DefineSpace_Async _cffi_d_Esys_NV_DefineSpace_Async
#endif

static uint32_t _cffi_d_Esys_NV_DefineSpace_Finish(ESYS_CONTEXT * x0, uint32_t * x1)
{
  return Esys_NV_DefineSpace_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_DefineSpace_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_NV_DefineSpace_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_DefineSpace_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_DefineSpace_Finish _cffi_d_Esys_NV_DefineSpace_Finish
#endif

static uint32_t _cffi_d_Esys_NV_Extend(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_MAX_NV_BUFFER const * x6)
{
  return Esys_NV_Extend(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_Extend(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_MAX_NV_BUFFER const * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_NV_Extend", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1317), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_NV_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1317), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_Extend(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_Extend _cffi_d_Esys_NV_Extend
#endif

static uint32_t _cffi_d_Esys_NV_Extend_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_MAX_NV_BUFFER const * x6)
{
  return Esys_NV_Extend_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_Extend_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_MAX_NV_BUFFER const * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_NV_Extend_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1317), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_NV_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1317), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_Extend_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_Extend_Async _cffi_d_Esys_NV_Extend_Async
#endif

static uint32_t _cffi_d_Esys_NV_Extend_Finish(ESYS_CONTEXT * x0)
{
  return Esys_NV_Extend_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_Extend_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_Extend_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_Extend_Finish _cffi_d_Esys_NV_Extend_Finish
#endif

static uint32_t _cffi_d_Esys_NV_GlobalWriteLock(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_NV_GlobalWriteLock(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_GlobalWriteLock(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_NV_GlobalWriteLock", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_GlobalWriteLock(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_GlobalWriteLock _cffi_d_Esys_NV_GlobalWriteLock
#endif

static uint32_t _cffi_d_Esys_NV_GlobalWriteLock_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_NV_GlobalWriteLock_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_GlobalWriteLock_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_NV_GlobalWriteLock_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_GlobalWriteLock_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_GlobalWriteLock_Async _cffi_d_Esys_NV_GlobalWriteLock_Async
#endif

static uint32_t _cffi_d_Esys_NV_GlobalWriteLock_Finish(ESYS_CONTEXT * x0)
{
  return Esys_NV_GlobalWriteLock_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_GlobalWriteLock_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_GlobalWriteLock_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_GlobalWriteLock_Finish _cffi_d_Esys_NV_GlobalWriteLock_Finish
#endif

static uint32_t _cffi_d_Esys_NV_Increment(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5)
{
  return Esys_NV_Increment(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_Increment(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_NV_Increment", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_Increment(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_Increment _cffi_d_Esys_NV_Increment
#endif

static uint32_t _cffi_d_Esys_NV_Increment_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5)
{
  return Esys_NV_Increment_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_Increment_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_NV_Increment_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_Increment_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_Increment_Async _cffi_d_Esys_NV_Increment_Async
#endif

static uint32_t _cffi_d_Esys_NV_Increment_Finish(ESYS_CONTEXT * x0)
{
  return Esys_NV_Increment_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_Increment_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_Increment_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_Increment_Finish _cffi_d_Esys_NV_Increment_Finish
#endif

static uint32_t _cffi_d_Esys_NV_Read(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint16_t x6, uint16_t x7, TPM2B_MAX_NV_BUFFER * * x8)
{
  return Esys_NV_Read(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_Read(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint16_t x6;
  uint16_t x7;
  TPM2B_MAX_NV_BUFFER * * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_NV_Read", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  x7 = _cffi_to_c_int(arg7, uint16_t);
  if (x7 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(102), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_NV_BUFFER * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(102), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_Read(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_Read _cffi_d_Esys_NV_Read
#endif

static uint32_t _cffi_d_Esys_NV_ReadLock(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5)
{
  return Esys_NV_ReadLock(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_ReadLock(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_NV_ReadLock", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_ReadLock(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_ReadLock _cffi_d_Esys_NV_ReadLock
#endif

static uint32_t _cffi_d_Esys_NV_ReadLock_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5)
{
  return Esys_NV_ReadLock_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_ReadLock_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_NV_ReadLock_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_ReadLock_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_ReadLock_Async _cffi_d_Esys_NV_ReadLock_Async
#endif

static uint32_t _cffi_d_Esys_NV_ReadLock_Finish(ESYS_CONTEXT * x0)
{
  return Esys_NV_ReadLock_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_ReadLock_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_ReadLock_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_ReadLock_Finish _cffi_d_Esys_NV_ReadLock_Finish
#endif

static uint32_t _cffi_d_Esys_NV_ReadPublic(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_NV_PUBLIC * * x5, TPM2B_NAME * * x6)
{
  return Esys_NV_ReadPublic(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_ReadPublic(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_NV_PUBLIC * * x5;
  TPM2B_NAME * * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_NV_ReadPublic", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(106), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_NV_PUBLIC * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(106), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(107), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_NAME * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(107), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_ReadPublic(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_ReadPublic _cffi_d_Esys_NV_ReadPublic
#endif

static uint32_t _cffi_d_Esys_NV_ReadPublic_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_NV_ReadPublic_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_ReadPublic_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_NV_ReadPublic_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_ReadPublic_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_ReadPublic_Async _cffi_d_Esys_NV_ReadPublic_Async
#endif

static uint32_t _cffi_d_Esys_NV_ReadPublic_Finish(ESYS_CONTEXT * x0, TPM2B_NV_PUBLIC * * x1, TPM2B_NAME * * x2)
{
  return Esys_NV_ReadPublic_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_ReadPublic_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_NV_PUBLIC * * x1;
  TPM2B_NAME * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_NV_ReadPublic_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(106), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_NV_PUBLIC * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(106), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(107), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_NAME * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(107), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_ReadPublic_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_ReadPublic_Finish _cffi_d_Esys_NV_ReadPublic_Finish
#endif

static uint32_t _cffi_d_Esys_NV_Read_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint16_t x6, uint16_t x7)
{
  return Esys_NV_Read_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_Read_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint16_t x6;
  uint16_t x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_NV_Read_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  x7 = _cffi_to_c_int(arg7, uint16_t);
  if (x7 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_Read_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_Read_Async _cffi_d_Esys_NV_Read_Async
#endif

static uint32_t _cffi_d_Esys_NV_Read_Finish(ESYS_CONTEXT * x0, TPM2B_MAX_NV_BUFFER * * x1)
{
  return Esys_NV_Read_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_Read_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_MAX_NV_BUFFER * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_NV_Read_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(102), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_NV_BUFFER * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(102), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_Read_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_Read_Finish _cffi_d_Esys_NV_Read_Finish
#endif

static uint32_t _cffi_d_Esys_NV_SetBits(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint64_t x6)
{
  return Esys_NV_SetBits(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_SetBits(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint64_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_NV_SetBits", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint64_t);
  if (x6 == (uint64_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_SetBits(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_SetBits _cffi_d_Esys_NV_SetBits
#endif

static uint32_t _cffi_d_Esys_NV_SetBits_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint64_t x6)
{
  return Esys_NV_SetBits_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_SetBits_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint64_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_NV_SetBits_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint64_t);
  if (x6 == (uint64_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_SetBits_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_SetBits_Async _cffi_d_Esys_NV_SetBits_Async
#endif

static uint32_t _cffi_d_Esys_NV_SetBits_Finish(ESYS_CONTEXT * x0)
{
  return Esys_NV_SetBits_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_SetBits_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_SetBits_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_SetBits_Finish _cffi_d_Esys_NV_SetBits_Finish
#endif

static uint32_t _cffi_d_Esys_NV_UndefineSpace(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5)
{
  return Esys_NV_UndefineSpace(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_UndefineSpace(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_NV_UndefineSpace", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_UndefineSpace(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_UndefineSpace _cffi_d_Esys_NV_UndefineSpace
#endif

static uint32_t _cffi_d_Esys_NV_UndefineSpaceSpecial(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5)
{
  return Esys_NV_UndefineSpaceSpecial(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_UndefineSpaceSpecial(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_NV_UndefineSpaceSpecial", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_UndefineSpaceSpecial(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_UndefineSpaceSpecial _cffi_d_Esys_NV_UndefineSpaceSpecial
#endif

static uint32_t _cffi_d_Esys_NV_UndefineSpaceSpecial_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5)
{
  return Esys_NV_UndefineSpaceSpecial_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_UndefineSpaceSpecial_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_NV_UndefineSpaceSpecial_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_UndefineSpaceSpecial_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_UndefineSpaceSpecial_Async _cffi_d_Esys_NV_UndefineSpaceSpecial_Async
#endif

static uint32_t _cffi_d_Esys_NV_UndefineSpaceSpecial_Finish(ESYS_CONTEXT * x0)
{
  return Esys_NV_UndefineSpaceSpecial_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_UndefineSpaceSpecial_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_UndefineSpaceSpecial_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_UndefineSpaceSpecial_Finish _cffi_d_Esys_NV_UndefineSpaceSpecial_Finish
#endif

static uint32_t _cffi_d_Esys_NV_UndefineSpace_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5)
{
  return Esys_NV_UndefineSpace_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_UndefineSpace_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_NV_UndefineSpace_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_UndefineSpace_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_UndefineSpace_Async _cffi_d_Esys_NV_UndefineSpace_Async
#endif

static uint32_t _cffi_d_Esys_NV_UndefineSpace_Finish(ESYS_CONTEXT * x0)
{
  return Esys_NV_UndefineSpace_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_UndefineSpace_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_UndefineSpace_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_UndefineSpace_Finish _cffi_d_Esys_NV_UndefineSpace_Finish
#endif

static uint32_t _cffi_d_Esys_NV_Write(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_MAX_NV_BUFFER const * x6, uint16_t x7)
{
  return Esys_NV_Write(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_Write(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_MAX_NV_BUFFER const * x6;
  uint16_t x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_NV_Write", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1317), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_NV_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1317), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x7 = _cffi_to_c_int(arg7, uint16_t);
  if (x7 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_Write(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_Write _cffi_d_Esys_NV_Write
#endif

static uint32_t _cffi_d_Esys_NV_WriteLock(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5)
{
  return Esys_NV_WriteLock(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_WriteLock(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_NV_WriteLock", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_WriteLock(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_WriteLock _cffi_d_Esys_NV_WriteLock
#endif

static uint32_t _cffi_d_Esys_NV_WriteLock_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5)
{
  return Esys_NV_WriteLock_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_WriteLock_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_NV_WriteLock_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_WriteLock_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_WriteLock_Async _cffi_d_Esys_NV_WriteLock_Async
#endif

static uint32_t _cffi_d_Esys_NV_WriteLock_Finish(ESYS_CONTEXT * x0)
{
  return Esys_NV_WriteLock_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_WriteLock_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_WriteLock_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_WriteLock_Finish _cffi_d_Esys_NV_WriteLock_Finish
#endif

static uint32_t _cffi_d_Esys_NV_Write_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_MAX_NV_BUFFER const * x6, uint16_t x7)
{
  return Esys_NV_Write_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_Write_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_MAX_NV_BUFFER const * x6;
  uint16_t x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_NV_Write_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1317), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_NV_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1317), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x7 = _cffi_to_c_int(arg7, uint16_t);
  if (x7 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_Write_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_Write_Async _cffi_d_Esys_NV_Write_Async
#endif

static uint32_t _cffi_d_Esys_NV_Write_Finish(ESYS_CONTEXT * x0)
{
  return Esys_NV_Write_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_NV_Write_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_NV_Write_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_NV_Write_Finish _cffi_d_Esys_NV_Write_Finish
#endif

static uint32_t _cffi_d_Esys_ObjectChangeAuth(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DIGEST const * x6, TPM2B_PRIVATE * * x7)
{
  return Esys_ObjectChangeAuth(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ObjectChangeAuth(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DIGEST const * x6;
  TPM2B_PRIVATE * * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_ObjectChangeAuth", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(37), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(37), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ObjectChangeAuth(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ObjectChangeAuth _cffi_d_Esys_ObjectChangeAuth
#endif

static uint32_t _cffi_d_Esys_ObjectChangeAuth_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DIGEST const * x6)
{
  return Esys_ObjectChangeAuth_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ObjectChangeAuth_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DIGEST const * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_ObjectChangeAuth_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ObjectChangeAuth_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ObjectChangeAuth_Async _cffi_d_Esys_ObjectChangeAuth_Async
#endif

static uint32_t _cffi_d_Esys_ObjectChangeAuth_Finish(ESYS_CONTEXT * x0, TPM2B_PRIVATE * * x1)
{
  return Esys_ObjectChangeAuth_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ObjectChangeAuth_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_PRIVATE * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_ObjectChangeAuth_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(37), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(37), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ObjectChangeAuth_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ObjectChangeAuth_Finish _cffi_d_Esys_ObjectChangeAuth_Finish
#endif

static uint32_t _cffi_d_Esys_PCR_Allocate(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPML_PCR_SELECTION const * x5, uint8_t * x6, uint32_t * x7, uint32_t * x8, uint32_t * x9)
{
  return Esys_PCR_Allocate(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_Allocate(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPML_PCR_SELECTION const * x5;
  uint8_t * x6;
  uint32_t * x7;
  uint32_t * x8;
  uint32_t * x9;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_Allocate", 10, 10, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(398), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPML_PCR_SELECTION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(398), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_Allocate(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_Allocate _cffi_d_Esys_PCR_Allocate
#endif

static uint32_t _cffi_d_Esys_PCR_Allocate_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPML_PCR_SELECTION const * x5)
{
  return Esys_PCR_Allocate_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_Allocate_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPML_PCR_SELECTION const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_Allocate_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(398), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPML_PCR_SELECTION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(398), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_Allocate_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_Allocate_Async _cffi_d_Esys_PCR_Allocate_Async
#endif

static uint32_t _cffi_d_Esys_PCR_Allocate_Finish(ESYS_CONTEXT * x0, uint8_t * x1, uint32_t * x2, uint32_t * x3, uint32_t * x4)
{
  return Esys_PCR_Allocate_Finish(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_Allocate_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint8_t * x1;
  uint32_t * x2;
  uint32_t * x3;
  uint32_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_Allocate_Finish", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_Allocate_Finish(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_Allocate_Finish _cffi_d_Esys_PCR_Allocate_Finish
#endif

static uint32_t _cffi_d_Esys_PCR_Event(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_EVENT const * x5, TPML_DIGEST_VALUES * * x6)
{
  return Esys_PCR_Event(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_Event(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_EVENT const * x5;
  TPML_DIGEST_VALUES * * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_Event", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(756), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_EVENT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(756), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(146), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPML_DIGEST_VALUES * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(146), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_Event(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_Event _cffi_d_Esys_PCR_Event
#endif

static uint32_t _cffi_d_Esys_PCR_Event_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_EVENT const * x5)
{
  return Esys_PCR_Event_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_Event_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_EVENT const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_Event_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(756), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_EVENT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(756), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_Event_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_Event_Async _cffi_d_Esys_PCR_Event_Async
#endif

static uint32_t _cffi_d_Esys_PCR_Event_Finish(ESYS_CONTEXT * x0, TPML_DIGEST_VALUES * * x1)
{
  return Esys_PCR_Event_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_Event_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPML_DIGEST_VALUES * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_Event_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(146), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPML_DIGEST_VALUES * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(146), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_Event_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_Event_Finish _cffi_d_Esys_PCR_Event_Finish
#endif

static uint32_t _cffi_d_Esys_PCR_Extend(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPML_DIGEST_VALUES const * x5)
{
  return Esys_PCR_Extend(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_Extend(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPML_DIGEST_VALUES const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_Extend", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1010), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPML_DIGEST_VALUES const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1010), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_Extend(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_Extend _cffi_d_Esys_PCR_Extend
#endif

static uint32_t _cffi_d_Esys_PCR_Extend_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPML_DIGEST_VALUES const * x5)
{
  return Esys_PCR_Extend_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_Extend_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPML_DIGEST_VALUES const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_Extend_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1010), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPML_DIGEST_VALUES const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1010), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_Extend_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_Extend_Async _cffi_d_Esys_PCR_Extend_Async
#endif

static uint32_t _cffi_d_Esys_PCR_Extend_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PCR_Extend_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_Extend_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_Extend_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_Extend_Finish _cffi_d_Esys_PCR_Extend_Finish
#endif

static uint32_t _cffi_d_Esys_PCR_Read(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPML_PCR_SELECTION const * x4, uint32_t * x5, TPML_PCR_SELECTION * * x6, TPML_DIGEST * * x7)
{
  return Esys_PCR_Read(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_Read(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPML_PCR_SELECTION const * x4;
  uint32_t * x5;
  TPML_PCR_SELECTION * * x6;
  TPML_DIGEST * * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_Read", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(398), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPML_PCR_SELECTION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(398), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(228), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPML_PCR_SELECTION * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(228), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(229), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPML_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(229), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_Read(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_Read _cffi_d_Esys_PCR_Read
#endif

static uint32_t _cffi_d_Esys_PCR_Read_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPML_PCR_SELECTION const * x4)
{
  return Esys_PCR_Read_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_Read_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPML_PCR_SELECTION const * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_Read_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(398), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPML_PCR_SELECTION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(398), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_Read_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_Read_Async _cffi_d_Esys_PCR_Read_Async
#endif

static uint32_t _cffi_d_Esys_PCR_Read_Finish(ESYS_CONTEXT * x0, uint32_t * x1, TPML_PCR_SELECTION * * x2, TPML_DIGEST * * x3)
{
  return Esys_PCR_Read_Finish(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_Read_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t * x1;
  TPML_PCR_SELECTION * * x2;
  TPML_DIGEST * * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_Read_Finish", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(228), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPML_PCR_SELECTION * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(228), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(229), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPML_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(229), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_Read_Finish(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_Read_Finish _cffi_d_Esys_PCR_Read_Finish
#endif

static uint32_t _cffi_d_Esys_PCR_Reset(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_PCR_Reset(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_Reset(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_Reset", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_Reset(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_Reset _cffi_d_Esys_PCR_Reset
#endif

static uint32_t _cffi_d_Esys_PCR_Reset_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_PCR_Reset_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_Reset_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_Reset_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_Reset_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_Reset_Async _cffi_d_Esys_PCR_Reset_Async
#endif

static uint32_t _cffi_d_Esys_PCR_Reset_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PCR_Reset_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_Reset_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_Reset_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_Reset_Finish _cffi_d_Esys_PCR_Reset_Finish
#endif

static uint32_t _cffi_d_Esys_PCR_SetAuthPolicy(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, uint16_t x6, uint32_t x7)
{
  return Esys_PCR_SetAuthPolicy(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_SetAuthPolicy(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  uint16_t x6;
  uint32_t x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_SetAuthPolicy", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  x7 = _cffi_to_c_int(arg7, uint32_t);
  if (x7 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_SetAuthPolicy(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_SetAuthPolicy _cffi_d_Esys_PCR_SetAuthPolicy
#endif

static uint32_t _cffi_d_Esys_PCR_SetAuthPolicy_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, uint16_t x6, uint32_t x7)
{
  return Esys_PCR_SetAuthPolicy_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_SetAuthPolicy_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  uint16_t x6;
  uint32_t x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_SetAuthPolicy_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  x7 = _cffi_to_c_int(arg7, uint32_t);
  if (x7 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_SetAuthPolicy_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_SetAuthPolicy_Async _cffi_d_Esys_PCR_SetAuthPolicy_Async
#endif

static uint32_t _cffi_d_Esys_PCR_SetAuthPolicy_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PCR_SetAuthPolicy_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_SetAuthPolicy_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_SetAuthPolicy_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_SetAuthPolicy_Finish _cffi_d_Esys_PCR_SetAuthPolicy_Finish
#endif

static uint32_t _cffi_d_Esys_PCR_SetAuthValue(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5)
{
  return Esys_PCR_SetAuthValue(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_SetAuthValue(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_SetAuthValue", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_SetAuthValue(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_SetAuthValue _cffi_d_Esys_PCR_SetAuthValue
#endif

static uint32_t _cffi_d_Esys_PCR_SetAuthValue_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5)
{
  return Esys_PCR_SetAuthValue_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_SetAuthValue_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PCR_SetAuthValue_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_SetAuthValue_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_SetAuthValue_Async _cffi_d_Esys_PCR_SetAuthValue_Async
#endif

static uint32_t _cffi_d_Esys_PCR_SetAuthValue_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PCR_SetAuthValue_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PCR_SetAuthValue_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PCR_SetAuthValue_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PCR_SetAuthValue_Finish _cffi_d_Esys_PCR_SetAuthValue_Finish
#endif

static uint32_t _cffi_d_Esys_PP_Commands(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPML_CC const * x5, TPML_CC const * x6)
{
  return Esys_PP_Commands(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PP_Commands(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPML_CC const * x5;
  TPML_CC const * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_PP_Commands", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(993), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPML_CC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(993), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(993), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPML_CC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(993), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PP_Commands(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PP_Commands _cffi_d_Esys_PP_Commands
#endif

static uint32_t _cffi_d_Esys_PP_Commands_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPML_CC const * x5, TPML_CC const * x6)
{
  return Esys_PP_Commands_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PP_Commands_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPML_CC const * x5;
  TPML_CC const * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_PP_Commands_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(993), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPML_CC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(993), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(993), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPML_CC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(993), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PP_Commands_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PP_Commands_Async _cffi_d_Esys_PP_Commands_Async
#endif

static uint32_t _cffi_d_Esys_PP_Commands_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PP_Commands_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PP_Commands_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PP_Commands_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PP_Commands_Finish _cffi_d_Esys_PP_Commands_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyAuthValue(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_PolicyAuthValue(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyAuthValue(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyAuthValue", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyAuthValue(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyAuthValue _cffi_d_Esys_PolicyAuthValue
#endif

static uint32_t _cffi_d_Esys_PolicyAuthValue_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_PolicyAuthValue_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyAuthValue_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyAuthValue_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyAuthValue_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyAuthValue_Async _cffi_d_Esys_PolicyAuthValue_Async
#endif

static uint32_t _cffi_d_Esys_PolicyAuthValue_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyAuthValue_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyAuthValue_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyAuthValue_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyAuthValue_Finish _cffi_d_Esys_PolicyAuthValue_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyAuthorize(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, TPM2B_DIGEST const * x6, TPM2B_NAME const * x7, TPMT_TK_VERIFIED const * x8)
{
  return Esys_PolicyAuthorize(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyAuthorize(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  TPM2B_DIGEST const * x6;
  TPM2B_NAME const * x7;
  TPMT_TK_VERIFIED const * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyAuthorize", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(535), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_NAME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(535), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(547), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPMT_TK_VERIFIED const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(547), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyAuthorize(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyAuthorize _cffi_d_Esys_PolicyAuthorize
#endif

static uint32_t _cffi_d_Esys_PolicyAuthorizeNV(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6)
{
  return Esys_PolicyAuthorizeNV(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyAuthorizeNV(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyAuthorizeNV", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyAuthorizeNV(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyAuthorizeNV _cffi_d_Esys_PolicyAuthorizeNV
#endif

static uint32_t _cffi_d_Esys_PolicyAuthorizeNV_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6)
{
  return Esys_PolicyAuthorizeNV_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyAuthorizeNV_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyAuthorizeNV_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyAuthorizeNV_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyAuthorizeNV_Async _cffi_d_Esys_PolicyAuthorizeNV_Async
#endif

static uint32_t _cffi_d_Esys_PolicyAuthorizeNV_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyAuthorizeNV_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyAuthorizeNV_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyAuthorizeNV_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyAuthorizeNV_Finish _cffi_d_Esys_PolicyAuthorizeNV_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyAuthorize_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, TPM2B_DIGEST const * x6, TPM2B_NAME const * x7, TPMT_TK_VERIFIED const * x8)
{
  return Esys_PolicyAuthorize_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyAuthorize_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  TPM2B_DIGEST const * x6;
  TPM2B_NAME const * x7;
  TPMT_TK_VERIFIED const * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyAuthorize_Async", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(535), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_NAME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(535), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(547), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPMT_TK_VERIFIED const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(547), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyAuthorize_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyAuthorize_Async _cffi_d_Esys_PolicyAuthorize_Async
#endif

static uint32_t _cffi_d_Esys_PolicyAuthorize_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyAuthorize_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyAuthorize_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyAuthorize_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyAuthorize_Finish _cffi_d_Esys_PolicyAuthorize_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyCommandCode(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5)
{
  return Esys_PolicyCommandCode(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyCommandCode(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyCommandCode", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyCommandCode(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyCommandCode _cffi_d_Esys_PolicyCommandCode
#endif

static uint32_t _cffi_d_Esys_PolicyCommandCode_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5)
{
  return Esys_PolicyCommandCode_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyCommandCode_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyCommandCode_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyCommandCode_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyCommandCode_Async _cffi_d_Esys_PolicyCommandCode_Async
#endif

static uint32_t _cffi_d_Esys_PolicyCommandCode_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyCommandCode_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyCommandCode_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyCommandCode_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyCommandCode_Finish _cffi_d_Esys_PolicyCommandCode_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyCounterTimer(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, uint16_t x6, uint16_t x7)
{
  return Esys_PolicyCounterTimer(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyCounterTimer(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  uint16_t x6;
  uint16_t x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyCounterTimer", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  x7 = _cffi_to_c_int(arg7, uint16_t);
  if (x7 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyCounterTimer(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyCounterTimer _cffi_d_Esys_PolicyCounterTimer
#endif

static uint32_t _cffi_d_Esys_PolicyCounterTimer_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, uint16_t x6, uint16_t x7)
{
  return Esys_PolicyCounterTimer_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyCounterTimer_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  uint16_t x6;
  uint16_t x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyCounterTimer_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  x7 = _cffi_to_c_int(arg7, uint16_t);
  if (x7 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyCounterTimer_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyCounterTimer_Async _cffi_d_Esys_PolicyCounterTimer_Async
#endif

static uint32_t _cffi_d_Esys_PolicyCounterTimer_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyCounterTimer_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyCounterTimer_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyCounterTimer_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyCounterTimer_Finish _cffi_d_Esys_PolicyCounterTimer_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyCpHash(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5)
{
  return Esys_PolicyCpHash(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyCpHash(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyCpHash", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyCpHash(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyCpHash _cffi_d_Esys_PolicyCpHash
#endif

static uint32_t _cffi_d_Esys_PolicyCpHash_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5)
{
  return Esys_PolicyCpHash_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyCpHash_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyCpHash_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyCpHash_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyCpHash_Async _cffi_d_Esys_PolicyCpHash_Async
#endif

static uint32_t _cffi_d_Esys_PolicyCpHash_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyCpHash_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyCpHash_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyCpHash_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyCpHash_Finish _cffi_d_Esys_PolicyCpHash_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyDuplicationSelect(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_NAME const * x5, TPM2B_NAME const * x6, uint8_t x7)
{
  return Esys_PolicyDuplicationSelect(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyDuplicationSelect(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_NAME const * x5;
  TPM2B_NAME const * x6;
  uint8_t x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyDuplicationSelect", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(535), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_NAME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(535), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(535), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_NAME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(535), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x7 = _cffi_to_c_int(arg7, uint8_t);
  if (x7 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyDuplicationSelect(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyDuplicationSelect _cffi_d_Esys_PolicyDuplicationSelect
#endif

static uint32_t _cffi_d_Esys_PolicyDuplicationSelect_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_NAME const * x5, TPM2B_NAME const * x6, uint8_t x7)
{
  return Esys_PolicyDuplicationSelect_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyDuplicationSelect_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_NAME const * x5;
  TPM2B_NAME const * x6;
  uint8_t x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyDuplicationSelect_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(535), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_NAME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(535), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(535), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_NAME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(535), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x7 = _cffi_to_c_int(arg7, uint8_t);
  if (x7 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyDuplicationSelect_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyDuplicationSelect_Async _cffi_d_Esys_PolicyDuplicationSelect_Async
#endif

static uint32_t _cffi_d_Esys_PolicyDuplicationSelect_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyDuplicationSelect_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyDuplicationSelect_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyDuplicationSelect_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyDuplicationSelect_Finish _cffi_d_Esys_PolicyDuplicationSelect_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyGetDigest(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST * * x5)
{
  return Esys_PolicyGetDigest(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyGetDigest(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST * * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyGetDigest", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyGetDigest(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyGetDigest _cffi_d_Esys_PolicyGetDigest
#endif

static uint32_t _cffi_d_Esys_PolicyGetDigest_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_PolicyGetDigest_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyGetDigest_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyGetDigest_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyGetDigest_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyGetDigest_Async _cffi_d_Esys_PolicyGetDigest_Async
#endif

static uint32_t _cffi_d_Esys_PolicyGetDigest_Finish(ESYS_CONTEXT * x0, TPM2B_DIGEST * * x1)
{
  return Esys_PolicyGetDigest_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyGetDigest_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_DIGEST * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyGetDigest_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyGetDigest_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyGetDigest_Finish _cffi_d_Esys_PolicyGetDigest_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyLocality(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint8_t x5)
{
  return Esys_PolicyLocality(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyLocality(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint8_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyLocality", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint8_t);
  if (x5 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyLocality(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyLocality _cffi_d_Esys_PolicyLocality
#endif

static uint32_t _cffi_d_Esys_PolicyLocality_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint8_t x5)
{
  return Esys_PolicyLocality_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyLocality_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint8_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyLocality_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint8_t);
  if (x5 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyLocality_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyLocality_Async _cffi_d_Esys_PolicyLocality_Async
#endif

static uint32_t _cffi_d_Esys_PolicyLocality_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyLocality_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyLocality_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyLocality_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyLocality_Finish _cffi_d_Esys_PolicyLocality_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyNV(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6, TPM2B_DIGEST const * x7, uint16_t x8, uint16_t x9)
{
  return Esys_PolicyNV(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyNV(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  TPM2B_DIGEST const * x7;
  uint16_t x8;
  uint16_t x9;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyNV", 10, 10, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x8 = _cffi_to_c_int(arg8, uint16_t);
  if (x8 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  x9 = _cffi_to_c_int(arg9, uint16_t);
  if (x9 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyNV(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyNV _cffi_d_Esys_PolicyNV
#endif

static uint32_t _cffi_d_Esys_PolicyNV_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, uint32_t x6, TPM2B_DIGEST const * x7, uint16_t x8, uint16_t x9)
{
  return Esys_PolicyNV_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyNV_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  uint32_t x6;
  TPM2B_DIGEST const * x7;
  uint16_t x8;
  uint16_t x9;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyNV_Async", 10, 10, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x8 = _cffi_to_c_int(arg8, uint16_t);
  if (x8 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  x9 = _cffi_to_c_int(arg9, uint16_t);
  if (x9 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyNV_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyNV_Async _cffi_d_Esys_PolicyNV_Async
#endif

static uint32_t _cffi_d_Esys_PolicyNV_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyNV_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyNV_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyNV_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyNV_Finish _cffi_d_Esys_PolicyNV_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyNameHash(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5)
{
  return Esys_PolicyNameHash(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyNameHash(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyNameHash", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyNameHash(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyNameHash _cffi_d_Esys_PolicyNameHash
#endif

static uint32_t _cffi_d_Esys_PolicyNameHash_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5)
{
  return Esys_PolicyNameHash_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyNameHash_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyNameHash_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyNameHash_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyNameHash_Async _cffi_d_Esys_PolicyNameHash_Async
#endif

static uint32_t _cffi_d_Esys_PolicyNameHash_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyNameHash_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyNameHash_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyNameHash_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyNameHash_Finish _cffi_d_Esys_PolicyNameHash_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyNvWritten(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint8_t x5)
{
  return Esys_PolicyNvWritten(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyNvWritten(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint8_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyNvWritten", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint8_t);
  if (x5 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyNvWritten(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyNvWritten _cffi_d_Esys_PolicyNvWritten
#endif

static uint32_t _cffi_d_Esys_PolicyNvWritten_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint8_t x5)
{
  return Esys_PolicyNvWritten_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyNvWritten_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint8_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyNvWritten_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint8_t);
  if (x5 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyNvWritten_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyNvWritten_Async _cffi_d_Esys_PolicyNvWritten_Async
#endif

static uint32_t _cffi_d_Esys_PolicyNvWritten_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyNvWritten_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyNvWritten_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyNvWritten_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyNvWritten_Finish _cffi_d_Esys_PolicyNvWritten_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyOR(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPML_DIGEST const * x5)
{
  return Esys_PolicyOR(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyOR(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPML_DIGEST const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyOR", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1002), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPML_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1002), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyOR(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyOR _cffi_d_Esys_PolicyOR
#endif

static uint32_t _cffi_d_Esys_PolicyOR_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPML_DIGEST const * x5)
{
  return Esys_PolicyOR_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyOR_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPML_DIGEST const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyOR_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1002), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPML_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1002), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyOR_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyOR_Async _cffi_d_Esys_PolicyOR_Async
#endif

static uint32_t _cffi_d_Esys_PolicyOR_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyOR_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyOR_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyOR_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyOR_Finish _cffi_d_Esys_PolicyOR_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyPCR(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, TPML_PCR_SELECTION const * x6)
{
  return Esys_PolicyPCR(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyPCR(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  TPML_PCR_SELECTION const * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyPCR", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(398), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPML_PCR_SELECTION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(398), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyPCR(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyPCR _cffi_d_Esys_PolicyPCR
#endif

static uint32_t _cffi_d_Esys_PolicyPCR_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, TPML_PCR_SELECTION const * x6)
{
  return Esys_PolicyPCR_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyPCR_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  TPML_PCR_SELECTION const * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyPCR_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(398), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPML_PCR_SELECTION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(398), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyPCR_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyPCR_Async _cffi_d_Esys_PolicyPCR_Async
#endif

static uint32_t _cffi_d_Esys_PolicyPCR_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyPCR_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyPCR_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyPCR_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyPCR_Finish _cffi_d_Esys_PolicyPCR_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyPassword(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_PolicyPassword(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyPassword(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyPassword", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyPassword(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyPassword _cffi_d_Esys_PolicyPassword
#endif

static uint32_t _cffi_d_Esys_PolicyPassword_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_PolicyPassword_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyPassword_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyPassword_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyPassword_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyPassword_Async _cffi_d_Esys_PolicyPassword_Async
#endif

static uint32_t _cffi_d_Esys_PolicyPassword_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyPassword_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyPassword_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyPassword_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyPassword_Finish _cffi_d_Esys_PolicyPassword_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyPhysicalPresence(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_PolicyPhysicalPresence(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyPhysicalPresence(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyPhysicalPresence", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyPhysicalPresence(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyPhysicalPresence _cffi_d_Esys_PolicyPhysicalPresence
#endif

static uint32_t _cffi_d_Esys_PolicyPhysicalPresence_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_PolicyPhysicalPresence_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyPhysicalPresence_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyPhysicalPresence_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyPhysicalPresence_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyPhysicalPresence_Async _cffi_d_Esys_PolicyPhysicalPresence_Async
#endif

static uint32_t _cffi_d_Esys_PolicyPhysicalPresence_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyPhysicalPresence_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyPhysicalPresence_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyPhysicalPresence_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyPhysicalPresence_Finish _cffi_d_Esys_PolicyPhysicalPresence_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyRestart(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_PolicyRestart(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyRestart(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyRestart", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyRestart(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyRestart _cffi_d_Esys_PolicyRestart
#endif

static uint32_t _cffi_d_Esys_PolicyRestart_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_PolicyRestart_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyRestart_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyRestart_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyRestart_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyRestart_Async _cffi_d_Esys_PolicyRestart_Async
#endif

static uint32_t _cffi_d_Esys_PolicyRestart_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyRestart_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyRestart_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyRestart_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyRestart_Finish _cffi_d_Esys_PolicyRestart_Finish
#endif

static uint32_t _cffi_d_Esys_PolicySecret(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DIGEST const * x6, TPM2B_DIGEST const * x7, TPM2B_DIGEST const * x8, int32_t x9, TPM2B_DIGEST * * x10, TPMT_TK_AUTH * * x11)
{
  return Esys_PolicySecret(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicySecret(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DIGEST const * x6;
  TPM2B_DIGEST const * x7;
  TPM2B_DIGEST const * x8;
  int32_t x9;
  TPM2B_DIGEST * * x10;
  TPMT_TK_AUTH * * x11;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;
  PyObject *arg11;

  if (!PyArg_UnpackTuple(args, "Esys_PolicySecret", 12, 12, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10, &arg11))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x9 = _cffi_to_c_int(arg9, int32_t);
  if (x9 == (int32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg10, (char **)&x10);
  if (datasize != 0) {
    x10 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg10, (char **)&x10,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(47), arg11, (char **)&x11);
  if (datasize != 0) {
    x11 = ((size_t)datasize) <= 640 ? (TPMT_TK_AUTH * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(47), arg11, (char **)&x11,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicySecret(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicySecret _cffi_d_Esys_PolicySecret
#endif

static uint32_t _cffi_d_Esys_PolicySecret_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DIGEST const * x6, TPM2B_DIGEST const * x7, TPM2B_DIGEST const * x8, int32_t x9)
{
  return Esys_PolicySecret_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicySecret_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DIGEST const * x6;
  TPM2B_DIGEST const * x7;
  TPM2B_DIGEST const * x8;
  int32_t x9;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;

  if (!PyArg_UnpackTuple(args, "Esys_PolicySecret_Async", 10, 10, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x9 = _cffi_to_c_int(arg9, int32_t);
  if (x9 == (int32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicySecret_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicySecret_Async _cffi_d_Esys_PolicySecret_Async
#endif

static uint32_t _cffi_d_Esys_PolicySecret_Finish(ESYS_CONTEXT * x0, TPM2B_DIGEST * * x1, TPMT_TK_AUTH * * x2)
{
  return Esys_PolicySecret_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicySecret_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_DIGEST * * x1;
  TPMT_TK_AUTH * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_PolicySecret_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(47), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPMT_TK_AUTH * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(47), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicySecret_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicySecret_Finish _cffi_d_Esys_PolicySecret_Finish
#endif

static uint32_t _cffi_d_Esys_PolicySigned(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DIGEST const * x6, TPM2B_DIGEST const * x7, TPM2B_DIGEST const * x8, int32_t x9, TPMT_SIGNATURE const * x10, TPM2B_DIGEST * * x11, TPMT_TK_AUTH * * x12)
{
  return Esys_PolicySigned(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicySigned(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DIGEST const * x6;
  TPM2B_DIGEST const * x7;
  TPM2B_DIGEST const * x8;
  int32_t x9;
  TPMT_SIGNATURE const * x10;
  TPM2B_DIGEST * * x11;
  TPMT_TK_AUTH * * x12;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;
  PyObject *arg11;
  PyObject *arg12;

  if (!PyArg_UnpackTuple(args, "Esys_PolicySigned", 13, 13, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10, &arg11, &arg12))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x9 = _cffi_to_c_int(arg9, int32_t);
  if (x9 == (int32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(604), arg10, (char **)&x10);
  if (datasize != 0) {
    x10 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(604), arg10, (char **)&x10,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg11, (char **)&x11);
  if (datasize != 0) {
    x11 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg11, (char **)&x11,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(47), arg12, (char **)&x12);
  if (datasize != 0) {
    x12 = ((size_t)datasize) <= 640 ? (TPMT_TK_AUTH * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(47), arg12, (char **)&x12,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicySigned(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicySigned _cffi_d_Esys_PolicySigned
#endif

static uint32_t _cffi_d_Esys_PolicySigned_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DIGEST const * x6, TPM2B_DIGEST const * x7, TPM2B_DIGEST const * x8, int32_t x9, TPMT_SIGNATURE const * x10)
{
  return Esys_PolicySigned_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicySigned_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DIGEST const * x6;
  TPM2B_DIGEST const * x7;
  TPM2B_DIGEST const * x8;
  int32_t x9;
  TPMT_SIGNATURE const * x10;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;

  if (!PyArg_UnpackTuple(args, "Esys_PolicySigned_Async", 11, 11, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x9 = _cffi_to_c_int(arg9, int32_t);
  if (x9 == (int32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(604), arg10, (char **)&x10);
  if (datasize != 0) {
    x10 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(604), arg10, (char **)&x10,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicySigned_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicySigned_Async _cffi_d_Esys_PolicySigned_Async
#endif

static uint32_t _cffi_d_Esys_PolicySigned_Finish(ESYS_CONTEXT * x0, TPM2B_DIGEST * * x1, TPMT_TK_AUTH * * x2)
{
  return Esys_PolicySigned_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicySigned_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_DIGEST * * x1;
  TPMT_TK_AUTH * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_PolicySigned_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(47), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPMT_TK_AUTH * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(47), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicySigned_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicySigned_Finish _cffi_d_Esys_PolicySigned_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyTemplate(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5)
{
  return Esys_PolicyTemplate(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyTemplate(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyTemplate", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyTemplate(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyTemplate _cffi_d_Esys_PolicyTemplate
#endif

static uint32_t _cffi_d_Esys_PolicyTemplate_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5)
{
  return Esys_PolicyTemplate_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyTemplate_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyTemplate_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyTemplate_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyTemplate_Async _cffi_d_Esys_PolicyTemplate_Async
#endif

static uint32_t _cffi_d_Esys_PolicyTemplate_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyTemplate_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyTemplate_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyTemplate_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyTemplate_Finish _cffi_d_Esys_PolicyTemplate_Finish
#endif

static uint32_t _cffi_d_Esys_PolicyTicket(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, TPM2B_DIGEST const * x6, TPM2B_DIGEST const * x7, TPM2B_NAME const * x8, TPMT_TK_AUTH const * x9)
{
  return Esys_PolicyTicket(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyTicket(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  TPM2B_DIGEST const * x6;
  TPM2B_DIGEST const * x7;
  TPM2B_NAME const * x8;
  TPMT_TK_AUTH const * x9;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyTicket", 10, 10, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(535), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_NAME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(535), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(536), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPMT_TK_AUTH const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(536), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyTicket(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyTicket _cffi_d_Esys_PolicyTicket
#endif

static uint32_t _cffi_d_Esys_PolicyTicket_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, TPM2B_DIGEST const * x6, TPM2B_DIGEST const * x7, TPM2B_NAME const * x8, TPMT_TK_AUTH const * x9)
{
  return Esys_PolicyTicket_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyTicket_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  TPM2B_DIGEST const * x6;
  TPM2B_DIGEST const * x7;
  TPM2B_NAME const * x8;
  TPMT_TK_AUTH const * x9;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;

  if (!PyArg_UnpackTuple(args, "Esys_PolicyTicket_Async", 10, 10, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(535), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_NAME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(535), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(536), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPMT_TK_AUTH const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(536), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyTicket_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyTicket_Async _cffi_d_Esys_PolicyTicket_Async
#endif

static uint32_t _cffi_d_Esys_PolicyTicket_Finish(ESYS_CONTEXT * x0)
{
  return Esys_PolicyTicket_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_PolicyTicket_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_PolicyTicket_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_PolicyTicket_Finish _cffi_d_Esys_PolicyTicket_Finish
#endif

static uint32_t _cffi_d_Esys_Policy_AC_SendSelect(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPM2B_NAME * x4, TPM2B_NAME * x5, TPM2B_NAME * x6, uint8_t x7)
{
  return Esys_Policy_AC_SendSelect(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Policy_AC_SendSelect(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPM2B_NAME * x4;
  TPM2B_NAME * x5;
  TPM2B_NAME * x6;
  uint8_t x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_Policy_AC_SendSelect", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(347), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_NAME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(347), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(347), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_NAME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(347), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(347), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_NAME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(347), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x7 = _cffi_to_c_int(arg7, uint8_t);
  if (x7 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Policy_AC_SendSelect(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Policy_AC_SendSelect _cffi_d_Esys_Policy_AC_SendSelect
#endif

static uint32_t _cffi_d_Esys_Policy_AC_SendSelect_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPM2B_NAME * x4, TPM2B_NAME * x5, TPM2B_NAME * x6, uint8_t x7)
{
  return Esys_Policy_AC_SendSelect_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Policy_AC_SendSelect_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPM2B_NAME * x4;
  TPM2B_NAME * x5;
  TPM2B_NAME * x6;
  uint8_t x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_Policy_AC_SendSelect_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(347), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_NAME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(347), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(347), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_NAME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(347), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(347), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_NAME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(347), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x7 = _cffi_to_c_int(arg7, uint8_t);
  if (x7 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Policy_AC_SendSelect_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Policy_AC_SendSelect_Async _cffi_d_Esys_Policy_AC_SendSelect_Async
#endif

static uint32_t _cffi_d_Esys_Policy_AC_SendSelect_Finish(ESYS_CONTEXT * x0)
{
  return Esys_Policy_AC_SendSelect_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Policy_AC_SendSelect_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Policy_AC_SendSelect_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Policy_AC_SendSelect_Finish _cffi_d_Esys_Policy_AC_SendSelect_Finish
#endif

static uint32_t _cffi_d_Esys_Quote(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DATA const * x5, TPMT_SIG_SCHEME const * x6, TPML_PCR_SELECTION const * x7, TPM2B_ATTEST * * x8, TPMT_SIGNATURE * * x9)
{
  return Esys_Quote(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Quote(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DATA const * x5;
  TPMT_SIG_SCHEME const * x6;
  TPML_PCR_SELECTION const * x7;
  TPM2B_ATTEST * * x8;
  TPMT_SIGNATURE * * x9;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;

  if (!PyArg_UnpackTuple(args, "Esys_Quote", 10, 10, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(398), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPML_PCR_SELECTION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(398), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(27), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_ATTEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(27), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Quote(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Quote _cffi_d_Esys_Quote
#endif

static uint32_t _cffi_d_Esys_Quote_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DATA const * x5, TPMT_SIG_SCHEME const * x6, TPML_PCR_SELECTION const * x7)
{
  return Esys_Quote_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Quote_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DATA const * x5;
  TPMT_SIG_SCHEME const * x6;
  TPML_PCR_SELECTION const * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_Quote_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(398), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPML_PCR_SELECTION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(398), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Quote_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Quote_Async _cffi_d_Esys_Quote_Async
#endif

static uint32_t _cffi_d_Esys_Quote_Finish(ESYS_CONTEXT * x0, TPM2B_ATTEST * * x1, TPMT_SIGNATURE * * x2)
{
  return Esys_Quote_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Quote_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_ATTEST * * x1;
  TPMT_SIGNATURE * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_Quote_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(27), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_ATTEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(27), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Quote_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Quote_Finish _cffi_d_Esys_Quote_Finish
#endif

static uint32_t _cffi_d_Esys_RSA_Decrypt(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_PUBLIC_KEY_RSA const * x5, TPMT_RSA_DECRYPT const * x6, TPM2B_DATA const * x7, TPM2B_PUBLIC_KEY_RSA * * x8)
{
  return Esys_RSA_Decrypt(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_RSA_Decrypt(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_PUBLIC_KEY_RSA const * x5;
  TPMT_RSA_DECRYPT const * x6;
  TPM2B_DATA const * x7;
  TPM2B_PUBLIC_KEY_RSA * * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_RSA_Decrypt", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(900), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC_KEY_RSA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(900), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(901), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPMT_RSA_DECRYPT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(901), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(134), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC_KEY_RSA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(134), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_RSA_Decrypt(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_RSA_Decrypt _cffi_d_Esys_RSA_Decrypt
#endif

static uint32_t _cffi_d_Esys_RSA_Decrypt_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_PUBLIC_KEY_RSA const * x5, TPMT_RSA_DECRYPT const * x6, TPM2B_DATA const * x7)
{
  return Esys_RSA_Decrypt_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_RSA_Decrypt_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_PUBLIC_KEY_RSA const * x5;
  TPMT_RSA_DECRYPT const * x6;
  TPM2B_DATA const * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_RSA_Decrypt_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(900), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC_KEY_RSA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(900), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(901), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPMT_RSA_DECRYPT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(901), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_RSA_Decrypt_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_RSA_Decrypt_Async _cffi_d_Esys_RSA_Decrypt_Async
#endif

static uint32_t _cffi_d_Esys_RSA_Decrypt_Finish(ESYS_CONTEXT * x0, TPM2B_PUBLIC_KEY_RSA * * x1)
{
  return Esys_RSA_Decrypt_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_RSA_Decrypt_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_PUBLIC_KEY_RSA * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_RSA_Decrypt_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(134), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC_KEY_RSA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(134), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_RSA_Decrypt_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_RSA_Decrypt_Finish _cffi_d_Esys_RSA_Decrypt_Finish
#endif

static uint32_t _cffi_d_Esys_RSA_Encrypt(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_PUBLIC_KEY_RSA const * x5, TPMT_RSA_DECRYPT const * x6, TPM2B_DATA const * x7, TPM2B_PUBLIC_KEY_RSA * * x8)
{
  return Esys_RSA_Encrypt(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_RSA_Encrypt(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_PUBLIC_KEY_RSA const * x5;
  TPMT_RSA_DECRYPT const * x6;
  TPM2B_DATA const * x7;
  TPM2B_PUBLIC_KEY_RSA * * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_RSA_Encrypt", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(900), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC_KEY_RSA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(900), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(901), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPMT_RSA_DECRYPT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(901), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(134), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC_KEY_RSA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(134), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_RSA_Encrypt(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_RSA_Encrypt _cffi_d_Esys_RSA_Encrypt
#endif

static uint32_t _cffi_d_Esys_RSA_Encrypt_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_PUBLIC_KEY_RSA const * x5, TPMT_RSA_DECRYPT const * x6, TPM2B_DATA const * x7)
{
  return Esys_RSA_Encrypt_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_RSA_Encrypt_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_PUBLIC_KEY_RSA const * x5;
  TPMT_RSA_DECRYPT const * x6;
  TPM2B_DATA const * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_RSA_Encrypt_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(900), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC_KEY_RSA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(900), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(901), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPMT_RSA_DECRYPT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(901), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_RSA_Encrypt_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_RSA_Encrypt_Async _cffi_d_Esys_RSA_Encrypt_Async
#endif

static uint32_t _cffi_d_Esys_RSA_Encrypt_Finish(ESYS_CONTEXT * x0, TPM2B_PUBLIC_KEY_RSA * * x1)
{
  return Esys_RSA_Encrypt_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_RSA_Encrypt_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_PUBLIC_KEY_RSA * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_RSA_Encrypt_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(134), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC_KEY_RSA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(134), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_RSA_Encrypt_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_RSA_Encrypt_Finish _cffi_d_Esys_RSA_Encrypt_Finish
#endif

static uint32_t _cffi_d_Esys_ReadClock(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPMS_TIME_INFO * * x4)
{
  return Esys_ReadClock(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ReadClock(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPMS_TIME_INFO * * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_ReadClock", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(171), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMS_TIME_INFO * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(171), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ReadClock(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ReadClock _cffi_d_Esys_ReadClock
#endif

static uint32_t _cffi_d_Esys_ReadClock_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3)
{
  return Esys_ReadClock_Async(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ReadClock_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Esys_ReadClock_Async", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ReadClock_Async(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ReadClock_Async _cffi_d_Esys_ReadClock_Async
#endif

static uint32_t _cffi_d_Esys_ReadClock_Finish(ESYS_CONTEXT * x0, TPMS_TIME_INFO * * x1)
{
  return Esys_ReadClock_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ReadClock_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPMS_TIME_INFO * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_ReadClock_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(171), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPMS_TIME_INFO * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(171), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ReadClock_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ReadClock_Finish _cffi_d_Esys_ReadClock_Finish
#endif

static uint32_t _cffi_d_Esys_ReadPublic(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_PUBLIC * * x5, TPM2B_NAME * * x6, TPM2B_NAME * * x7)
{
  return Esys_ReadPublic(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ReadPublic(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_PUBLIC * * x5;
  TPM2B_NAME * * x6;
  TPM2B_NAME * * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_ReadPublic", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(121), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(121), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(107), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_NAME * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(107), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(107), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_NAME * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(107), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ReadPublic(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ReadPublic _cffi_d_Esys_ReadPublic
#endif

static uint32_t _cffi_d_Esys_ReadPublic_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_ReadPublic_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ReadPublic_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_ReadPublic_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ReadPublic_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ReadPublic_Async _cffi_d_Esys_ReadPublic_Async
#endif

static uint32_t _cffi_d_Esys_ReadPublic_Finish(ESYS_CONTEXT * x0, TPM2B_PUBLIC * * x1, TPM2B_NAME * * x2, TPM2B_NAME * * x3)
{
  return Esys_ReadPublic_Finish(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ReadPublic_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_PUBLIC * * x1;
  TPM2B_NAME * * x2;
  TPM2B_NAME * * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Esys_ReadPublic_Finish", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(121), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(121), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(107), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_NAME * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(107), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(107), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_NAME * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(107), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ReadPublic_Finish(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ReadPublic_Finish _cffi_d_Esys_ReadPublic_Finish
#endif

static uint32_t _cffi_d_Esys_Rewrap(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_PRIVATE const * x6, TPM2B_NAME const * x7, TPM2B_ENCRYPTED_SECRET const * x8, TPM2B_PRIVATE * * x9, TPM2B_ENCRYPTED_SECRET * * x10)
{
  return Esys_Rewrap(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Rewrap(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_PRIVATE const * x6;
  TPM2B_NAME const * x7;
  TPM2B_ENCRYPTED_SECRET const * x8;
  TPM2B_PRIVATE * * x9;
  TPM2B_ENCRYPTED_SECRET * * x10;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;

  if (!PyArg_UnpackTuple(args, "Esys_Rewrap", 11, 11, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(471), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(471), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(535), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_NAME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(535), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(472), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_ENCRYPTED_SECRET const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(472), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(37), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(37), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(38), arg10, (char **)&x10);
  if (datasize != 0) {
    x10 = ((size_t)datasize) <= 640 ? (TPM2B_ENCRYPTED_SECRET * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(38), arg10, (char **)&x10,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Rewrap(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Rewrap _cffi_d_Esys_Rewrap
#endif

static uint32_t _cffi_d_Esys_Rewrap_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_PRIVATE const * x6, TPM2B_NAME const * x7, TPM2B_ENCRYPTED_SECRET const * x8)
{
  return Esys_Rewrap_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Rewrap_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_PRIVATE const * x6;
  TPM2B_NAME const * x7;
  TPM2B_ENCRYPTED_SECRET const * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_Rewrap_Async", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(471), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(471), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(535), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_NAME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(535), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(472), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPM2B_ENCRYPTED_SECRET const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(472), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Rewrap_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Rewrap_Async _cffi_d_Esys_Rewrap_Async
#endif

static uint32_t _cffi_d_Esys_Rewrap_Finish(ESYS_CONTEXT * x0, TPM2B_PRIVATE * * x1, TPM2B_ENCRYPTED_SECRET * * x2)
{
  return Esys_Rewrap_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Rewrap_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_PRIVATE * * x1;
  TPM2B_ENCRYPTED_SECRET * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_Rewrap_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(37), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(37), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(38), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_ENCRYPTED_SECRET * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(38), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Rewrap_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Rewrap_Finish _cffi_d_Esys_Rewrap_Finish
#endif

static uint32_t _cffi_d_Esys_SelfTest(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint8_t x4)
{
  return Esys_SelfTest(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SelfTest(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint8_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_SelfTest", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint8_t);
  if (x4 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SelfTest(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SelfTest _cffi_d_Esys_SelfTest
#endif

static uint32_t _cffi_d_Esys_SelfTest_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint8_t x4)
{
  return Esys_SelfTest_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SelfTest_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint8_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_SelfTest_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint8_t);
  if (x4 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SelfTest_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SelfTest_Async _cffi_d_Esys_SelfTest_Async
#endif

static uint32_t _cffi_d_Esys_SelfTest_Finish(ESYS_CONTEXT * x0)
{
  return Esys_SelfTest_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SelfTest_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SelfTest_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SelfTest_Finish _cffi_d_Esys_SelfTest_Finish
#endif

static uint32_t _cffi_d_Esys_SequenceComplete(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_MAX_BUFFER const * x5, uint32_t x6, TPM2B_DIGEST * * x7, TPMT_TK_HASHCHECK * * x8)
{
  return Esys_SequenceComplete(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SequenceComplete(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_MAX_BUFFER const * x5;
  uint32_t x6;
  TPM2B_DIGEST * * x7;
  TPMT_TK_HASHCHECK * * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_SequenceComplete", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(52), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPMT_TK_HASHCHECK * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(52), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SequenceComplete(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SequenceComplete _cffi_d_Esys_SequenceComplete
#endif

static uint32_t _cffi_d_Esys_SequenceComplete_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_MAX_BUFFER const * x5, uint32_t x6)
{
  return Esys_SequenceComplete_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SequenceComplete_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_MAX_BUFFER const * x5;
  uint32_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_SequenceComplete_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint32_t);
  if (x6 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SequenceComplete_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SequenceComplete_Async _cffi_d_Esys_SequenceComplete_Async
#endif

static uint32_t _cffi_d_Esys_SequenceComplete_Finish(ESYS_CONTEXT * x0, TPM2B_DIGEST * * x1, TPMT_TK_HASHCHECK * * x2)
{
  return Esys_SequenceComplete_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SequenceComplete_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_DIGEST * * x1;
  TPMT_TK_HASHCHECK * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_SequenceComplete_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(52), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPMT_TK_HASHCHECK * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(52), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SequenceComplete_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SequenceComplete_Finish _cffi_d_Esys_SequenceComplete_Finish
#endif

static uint32_t _cffi_d_Esys_SequenceUpdate(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_MAX_BUFFER const * x5)
{
  return Esys_SequenceUpdate(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SequenceUpdate(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_MAX_BUFFER const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_SequenceUpdate", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SequenceUpdate(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SequenceUpdate _cffi_d_Esys_SequenceUpdate
#endif

static uint32_t _cffi_d_Esys_SequenceUpdate_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_MAX_BUFFER const * x5)
{
  return Esys_SequenceUpdate_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SequenceUpdate_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_MAX_BUFFER const * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_SequenceUpdate_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SequenceUpdate_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SequenceUpdate_Async _cffi_d_Esys_SequenceUpdate_Async
#endif

static uint32_t _cffi_d_Esys_SequenceUpdate_Finish(ESYS_CONTEXT * x0)
{
  return Esys_SequenceUpdate_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SequenceUpdate_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SequenceUpdate_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SequenceUpdate_Finish _cffi_d_Esys_SequenceUpdate_Finish
#endif

static uint32_t _cffi_d_Esys_SetAlgorithmSet(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5)
{
  return Esys_SetAlgorithmSet(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SetAlgorithmSet(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_SetAlgorithmSet", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SetAlgorithmSet(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SetAlgorithmSet _cffi_d_Esys_SetAlgorithmSet
#endif

static uint32_t _cffi_d_Esys_SetAlgorithmSet_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5)
{
  return Esys_SetAlgorithmSet_Async(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SetAlgorithmSet_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_SetAlgorithmSet_Async", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SetAlgorithmSet_Async(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SetAlgorithmSet_Async _cffi_d_Esys_SetAlgorithmSet_Async
#endif

static uint32_t _cffi_d_Esys_SetAlgorithmSet_Finish(ESYS_CONTEXT * x0)
{
  return Esys_SetAlgorithmSet_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SetAlgorithmSet_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SetAlgorithmSet_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SetAlgorithmSet_Finish _cffi_d_Esys_SetAlgorithmSet_Finish
#endif

static uint32_t _cffi_d_Esys_SetCommandCodeAuditStatus(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint16_t x5, TPML_CC const * x6, TPML_CC const * x7)
{
  return Esys_SetCommandCodeAuditStatus(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SetCommandCodeAuditStatus(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint16_t x5;
  TPML_CC const * x6;
  TPML_CC const * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_SetCommandCodeAuditStatus", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint16_t);
  if (x5 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(993), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPML_CC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(993), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(993), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPML_CC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(993), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SetCommandCodeAuditStatus(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SetCommandCodeAuditStatus _cffi_d_Esys_SetCommandCodeAuditStatus
#endif

static uint32_t _cffi_d_Esys_SetCommandCodeAuditStatus_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint16_t x5, TPML_CC const * x6, TPML_CC const * x7)
{
  return Esys_SetCommandCodeAuditStatus_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SetCommandCodeAuditStatus_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint16_t x5;
  TPML_CC const * x6;
  TPML_CC const * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_SetCommandCodeAuditStatus_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint16_t);
  if (x5 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(993), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPML_CC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(993), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(993), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPML_CC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(993), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SetCommandCodeAuditStatus_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SetCommandCodeAuditStatus_Async _cffi_d_Esys_SetCommandCodeAuditStatus_Async
#endif

static uint32_t _cffi_d_Esys_SetCommandCodeAuditStatus_Finish(ESYS_CONTEXT * x0)
{
  return Esys_SetCommandCodeAuditStatus_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SetCommandCodeAuditStatus_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SetCommandCodeAuditStatus_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SetCommandCodeAuditStatus_Finish _cffi_d_Esys_SetCommandCodeAuditStatus_Finish
#endif

static uint32_t _cffi_d_Esys_SetCryptoCallbacks(ESYS_CONTEXT * x0, ESYS_CRYPTO_CALLBACKS * x1)
{
  return Esys_SetCryptoCallbacks(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SetCryptoCallbacks(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  ESYS_CRYPTO_CALLBACKS * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_SetCryptoCallbacks", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(23), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (ESYS_CRYPTO_CALLBACKS *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(23), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SetCryptoCallbacks(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SetCryptoCallbacks _cffi_d_Esys_SetCryptoCallbacks
#endif

static uint32_t _cffi_d_Esys_SetPrimaryPolicy(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, uint16_t x6)
{
  return Esys_SetPrimaryPolicy(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SetPrimaryPolicy(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  uint16_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_SetPrimaryPolicy", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SetPrimaryPolicy(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SetPrimaryPolicy _cffi_d_Esys_SetPrimaryPolicy
#endif

static uint32_t _cffi_d_Esys_SetPrimaryPolicy_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, uint16_t x6)
{
  return Esys_SetPrimaryPolicy_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SetPrimaryPolicy_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  uint16_t x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_SetPrimaryPolicy_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x6 = _cffi_to_c_int(arg6, uint16_t);
  if (x6 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SetPrimaryPolicy_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SetPrimaryPolicy_Async _cffi_d_Esys_SetPrimaryPolicy_Async
#endif

static uint32_t _cffi_d_Esys_SetPrimaryPolicy_Finish(ESYS_CONTEXT * x0)
{
  return Esys_SetPrimaryPolicy_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SetPrimaryPolicy_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SetPrimaryPolicy_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SetPrimaryPolicy_Finish _cffi_d_Esys_SetPrimaryPolicy_Finish
#endif

static uint32_t _cffi_d_Esys_SetTimeout(ESYS_CONTEXT * x0, int32_t x1)
{
  return Esys_SetTimeout(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_SetTimeout(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  int32_t x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_SetTimeout", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, int32_t);
  if (x1 == (int32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_SetTimeout(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_SetTimeout _cffi_d_Esys_SetTimeout
#endif

static uint32_t _cffi_d_Esys_Shutdown(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint16_t x4)
{
  return Esys_Shutdown(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Shutdown(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint16_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_Shutdown", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint16_t);
  if (x4 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Shutdown(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Shutdown _cffi_d_Esys_Shutdown
#endif

static uint32_t _cffi_d_Esys_Shutdown_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint16_t x4)
{
  return Esys_Shutdown_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Shutdown_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint16_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_Shutdown_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint16_t);
  if (x4 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Shutdown_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Shutdown_Async _cffi_d_Esys_Shutdown_Async
#endif

static uint32_t _cffi_d_Esys_Shutdown_Finish(ESYS_CONTEXT * x0)
{
  return Esys_Shutdown_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Shutdown_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Shutdown_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Shutdown_Finish _cffi_d_Esys_Shutdown_Finish
#endif

static uint32_t _cffi_d_Esys_Sign(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, TPMT_SIG_SCHEME const * x6, TPMT_TK_HASHCHECK const * x7, TPMT_SIGNATURE * * x8)
{
  return Esys_Sign(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Sign(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  TPMT_SIG_SCHEME const * x6;
  TPMT_TK_HASHCHECK const * x7;
  TPMT_SIGNATURE * * x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_Sign", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(624), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPMT_TK_HASHCHECK const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(624), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Sign(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Sign _cffi_d_Esys_Sign
#endif

static uint32_t _cffi_d_Esys_Sign_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, TPMT_SIG_SCHEME const * x6, TPMT_TK_HASHCHECK const * x7)
{
  return Esys_Sign_Async(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Sign_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  TPMT_SIG_SCHEME const * x6;
  TPMT_TK_HASHCHECK const * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_Sign_Async", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(624), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPMT_TK_HASHCHECK const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(624), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Sign_Async(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Sign_Async _cffi_d_Esys_Sign_Async
#endif

static uint32_t _cffi_d_Esys_Sign_Finish(ESYS_CONTEXT * x0, TPMT_SIGNATURE * * x1)
{
  return Esys_Sign_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Sign_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPMT_SIGNATURE * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_Sign_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(28), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(28), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Sign_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Sign_Finish _cffi_d_Esys_Sign_Finish
#endif

static uint32_t _cffi_d_Esys_StartAuthSession(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DIGEST const * x6, uint8_t x7, TPMT_SYM_DEF const * x8, uint16_t x9, uint32_t * x10)
{
  return Esys_StartAuthSession(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_StartAuthSession(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DIGEST const * x6;
  uint8_t x7;
  TPMT_SYM_DEF const * x8;
  uint16_t x9;
  uint32_t * x10;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;

  if (!PyArg_UnpackTuple(args, "Esys_StartAuthSession", 11, 11, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x7 = _cffi_to_c_int(arg7, uint8_t);
  if (x7 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1254), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPMT_SYM_DEF const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1254), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x9 = _cffi_to_c_int(arg9, uint16_t);
  if (x9 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg10, (char **)&x10);
  if (datasize != 0) {
    x10 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg10, (char **)&x10,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_StartAuthSession(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_StartAuthSession _cffi_d_Esys_StartAuthSession
#endif

static uint32_t _cffi_d_Esys_StartAuthSession_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t x5, TPM2B_DIGEST const * x6, uint8_t x7, TPMT_SYM_DEF const * x8, uint16_t x9)
{
  return Esys_StartAuthSession_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_StartAuthSession_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t x5;
  TPM2B_DIGEST const * x6;
  uint8_t x7;
  TPMT_SYM_DEF const * x8;
  uint16_t x9;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;

  if (!PyArg_UnpackTuple(args, "Esys_StartAuthSession_Async", 10, 10, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x5 = _cffi_to_c_int(arg5, uint32_t);
  if (x5 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x7 = _cffi_to_c_int(arg7, uint8_t);
  if (x7 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1254), arg8, (char **)&x8);
  if (datasize != 0) {
    x8 = ((size_t)datasize) <= 640 ? (TPMT_SYM_DEF const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1254), arg8, (char **)&x8,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x9 = _cffi_to_c_int(arg9, uint16_t);
  if (x9 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_StartAuthSession_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_StartAuthSession_Async _cffi_d_Esys_StartAuthSession_Async
#endif

static uint32_t _cffi_d_Esys_StartAuthSession_Finish(ESYS_CONTEXT * x0, uint32_t * x1)
{
  return Esys_StartAuthSession_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_StartAuthSession_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_StartAuthSession_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_StartAuthSession_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_StartAuthSession_Finish _cffi_d_Esys_StartAuthSession_Finish
#endif

static uint32_t _cffi_d_Esys_Startup(ESYS_CONTEXT * x0, uint16_t x1)
{
  return Esys_Startup(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Startup(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint16_t x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_Startup", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint16_t);
  if (x1 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Startup(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Startup _cffi_d_Esys_Startup
#endif

static uint32_t _cffi_d_Esys_Startup_Async(ESYS_CONTEXT * x0, uint16_t x1)
{
  return Esys_Startup_Async(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Startup_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint16_t x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_Startup_Async", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint16_t);
  if (x1 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Startup_Async(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Startup_Async _cffi_d_Esys_Startup_Async
#endif

static uint32_t _cffi_d_Esys_Startup_Finish(ESYS_CONTEXT * x0)
{
  return Esys_Startup_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Startup_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Startup_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Startup_Finish _cffi_d_Esys_Startup_Finish
#endif

static uint32_t _cffi_d_Esys_StirRandom(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPM2B_SENSITIVE_DATA const * x4)
{
  return Esys_StirRandom(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_StirRandom(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPM2B_SENSITIVE_DATA const * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_StirRandom", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(376), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(376), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_StirRandom(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_StirRandom _cffi_d_Esys_StirRandom
#endif

static uint32_t _cffi_d_Esys_StirRandom_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPM2B_SENSITIVE_DATA const * x4)
{
  return Esys_StirRandom_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_StirRandom_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPM2B_SENSITIVE_DATA const * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_StirRandom_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(376), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(376), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_StirRandom_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_StirRandom_Async _cffi_d_Esys_StirRandom_Async
#endif

static uint32_t _cffi_d_Esys_StirRandom_Finish(ESYS_CONTEXT * x0)
{
  return Esys_StirRandom_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_StirRandom_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_StirRandom_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_StirRandom_Finish _cffi_d_Esys_StirRandom_Finish
#endif

static uint32_t _cffi_d_Esys_TRSess_GetAttributes(ESYS_CONTEXT * x0, uint32_t x1, uint8_t * x2)
{
  return Esys_TRSess_GetAttributes(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_TRSess_GetAttributes(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint8_t * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_TRSess_GetAttributes", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_TRSess_GetAttributes(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_TRSess_GetAttributes _cffi_d_Esys_TRSess_GetAttributes
#endif

static uint32_t _cffi_d_Esys_TRSess_GetAuthRequired(ESYS_CONTEXT * x0, uint32_t x1, uint8_t * x2)
{
  return Esys_TRSess_GetAuthRequired(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_TRSess_GetAuthRequired(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint8_t * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_TRSess_GetAuthRequired", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_TRSess_GetAuthRequired(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_TRSess_GetAuthRequired _cffi_d_Esys_TRSess_GetAuthRequired
#endif

static uint32_t _cffi_d_Esys_TRSess_GetNonceTPM(ESYS_CONTEXT * x0, uint32_t x1, TPM2B_DIGEST * * x2)
{
  return Esys_TRSess_GetNonceTPM(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_TRSess_GetNonceTPM(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  TPM2B_DIGEST * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_TRSess_GetNonceTPM", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(42), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(42), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_TRSess_GetNonceTPM(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_TRSess_GetNonceTPM _cffi_d_Esys_TRSess_GetNonceTPM
#endif

static uint32_t _cffi_d_Esys_TRSess_SetAttributes(ESYS_CONTEXT * x0, uint32_t x1, uint8_t x2, uint8_t x3)
{
  return Esys_TRSess_SetAttributes(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_TRSess_SetAttributes(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint8_t x2;
  uint8_t x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Esys_TRSess_SetAttributes", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint8_t);
  if (x2 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint8_t);
  if (x3 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_TRSess_SetAttributes(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_TRSess_SetAttributes _cffi_d_Esys_TRSess_SetAttributes
#endif

static uint32_t _cffi_d_Esys_TR_Close(ESYS_CONTEXT * x0, uint32_t * x1)
{
  return Esys_TR_Close(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_TR_Close(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_TR_Close", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_TR_Close(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_TR_Close _cffi_d_Esys_TR_Close
#endif

static uint32_t _cffi_d_Esys_TR_Deserialize(ESYS_CONTEXT * x0, uint8_t const * x1, size_t x2, uint32_t * x3)
{
  return Esys_TR_Deserialize(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_TR_Deserialize(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint8_t const * x1;
  size_t x2;
  uint32_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Esys_TR_Deserialize", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_TR_Deserialize(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_TR_Deserialize _cffi_d_Esys_TR_Deserialize
#endif

static uint32_t _cffi_d_Esys_TR_FromTPMPublic(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, uint32_t * x5)
{
  return Esys_TR_FromTPMPublic(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_TR_FromTPMPublic(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  uint32_t * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_TR_FromTPMPublic", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_TR_FromTPMPublic(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_TR_FromTPMPublic _cffi_d_Esys_TR_FromTPMPublic
#endif

static uint32_t _cffi_d_Esys_TR_FromTPMPublic_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_TR_FromTPMPublic_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_TR_FromTPMPublic_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_TR_FromTPMPublic_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_TR_FromTPMPublic_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_TR_FromTPMPublic_Async _cffi_d_Esys_TR_FromTPMPublic_Async
#endif

static uint32_t _cffi_d_Esys_TR_FromTPMPublic_Finish(ESYS_CONTEXT * x0, uint32_t * x1)
{
  return Esys_TR_FromTPMPublic_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_TR_FromTPMPublic_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_TR_FromTPMPublic_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_TR_FromTPMPublic_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_TR_FromTPMPublic_Finish _cffi_d_Esys_TR_FromTPMPublic_Finish
#endif

static uint32_t _cffi_d_Esys_TR_GetName(ESYS_CONTEXT * x0, uint32_t x1, TPM2B_NAME * * x2)
{
  return Esys_TR_GetName(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_TR_GetName(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  TPM2B_NAME * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_TR_GetName", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(107), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_NAME * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(107), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_TR_GetName(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_TR_GetName _cffi_d_Esys_TR_GetName
#endif

static uint32_t _cffi_d_Esys_TR_GetTpmHandle(ESYS_CONTEXT * x0, uint32_t x1, uint32_t * x2)
{
  return Esys_TR_GetTpmHandle(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_TR_GetTpmHandle(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_TR_GetTpmHandle", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_TR_GetTpmHandle(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_TR_GetTpmHandle _cffi_d_Esys_TR_GetTpmHandle
#endif

static uint32_t _cffi_d_Esys_TR_Serialize(ESYS_CONTEXT * x0, uint32_t x1, uint8_t * * x2, size_t * x3)
{
  return Esys_TR_Serialize(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_TR_Serialize(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint8_t * * x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Esys_TR_Serialize", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1578), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1578), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_TR_Serialize(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_TR_Serialize _cffi_d_Esys_TR_Serialize
#endif

static uint32_t _cffi_d_Esys_TR_SetAuth(ESYS_CONTEXT * x0, uint32_t x1, TPM2B_DIGEST const * x2)
{
  return Esys_TR_SetAuth(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_TR_SetAuth(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  TPM2B_DIGEST const * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_TR_SetAuth", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_TR_SetAuth(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_TR_SetAuth _cffi_d_Esys_TR_SetAuth
#endif

static uint32_t _cffi_d_Esys_TestParms(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPMT_PUBLIC_PARMS const * x4)
{
  return Esys_TestParms(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_TestParms(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPMT_PUBLIC_PARMS const * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_TestParms", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(422), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMT_PUBLIC_PARMS const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(422), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_TestParms(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_TestParms _cffi_d_Esys_TestParms
#endif

static uint32_t _cffi_d_Esys_TestParms_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPMT_PUBLIC_PARMS const * x4)
{
  return Esys_TestParms_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_TestParms_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPMT_PUBLIC_PARMS const * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_TestParms_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(422), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMT_PUBLIC_PARMS const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(422), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_TestParms_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_TestParms_Async _cffi_d_Esys_TestParms_Async
#endif

static uint32_t _cffi_d_Esys_TestParms_Finish(ESYS_CONTEXT * x0)
{
  return Esys_TestParms_Finish(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_TestParms_Finish(PyObject *self, PyObject *arg0)
{
  ESYS_CONTEXT * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_TestParms_Finish(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_TestParms_Finish _cffi_d_Esys_TestParms_Finish
#endif

static uint32_t _cffi_d_Esys_Unseal(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_SENSITIVE_DATA * * x5)
{
  return Esys_Unseal(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Unseal(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_SENSITIVE_DATA * * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_Unseal", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(138), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE_DATA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(138), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Unseal(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Unseal _cffi_d_Esys_Unseal
#endif

static uint32_t _cffi_d_Esys_Unseal_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4)
{
  return Esys_Unseal_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Unseal_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_Unseal_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Unseal_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Unseal_Async _cffi_d_Esys_Unseal_Async
#endif

static uint32_t _cffi_d_Esys_Unseal_Finish(ESYS_CONTEXT * x0, TPM2B_SENSITIVE_DATA * * x1)
{
  return Esys_Unseal_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Unseal_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_SENSITIVE_DATA * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_Unseal_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(138), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE_DATA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(138), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Unseal_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Unseal_Finish _cffi_d_Esys_Unseal_Finish
#endif

static uint32_t _cffi_d_Esys_Vendor_TCG_Test(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPM2B_DATA const * x4, TPM2B_DATA * * x5)
{
  return Esys_Vendor_TCG_Test(x0, x1, x2, x3, x4, x5);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Vendor_TCG_Test(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPM2B_DATA const * x4;
  TPM2B_DATA * * x5;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;

  if (!PyArg_UnpackTuple(args, "Esys_Vendor_TCG_Test", 6, 6, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(32), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DATA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(32), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Vendor_TCG_Test(x0, x1, x2, x3, x4, x5); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Vendor_TCG_Test _cffi_d_Esys_Vendor_TCG_Test
#endif

static uint32_t _cffi_d_Esys_Vendor_TCG_Test_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, TPM2B_DATA const * x4)
{
  return Esys_Vendor_TCG_Test_Async(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Vendor_TCG_Test_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  TPM2B_DATA const * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Esys_Vendor_TCG_Test_Async", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Vendor_TCG_Test_Async(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Vendor_TCG_Test_Async _cffi_d_Esys_Vendor_TCG_Test_Async
#endif

static uint32_t _cffi_d_Esys_Vendor_TCG_Test_Finish(ESYS_CONTEXT * x0, TPM2B_DATA * * x1)
{
  return Esys_Vendor_TCG_Test_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_Vendor_TCG_Test_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_DATA * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_Vendor_TCG_Test_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(32), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_DATA * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(32), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_Vendor_TCG_Test_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_Vendor_TCG_Test_Finish _cffi_d_Esys_Vendor_TCG_Test_Finish
#endif

static uint32_t _cffi_d_Esys_VerifySignature(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, TPMT_SIGNATURE const * x6, TPMT_TK_VERIFIED * * x7)
{
  return Esys_VerifySignature(x0, x1, x2, x3, x4, x5, x6, x7);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_VerifySignature(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  TPMT_SIGNATURE const * x6;
  TPMT_TK_VERIFIED * * x7;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;

  if (!PyArg_UnpackTuple(args, "Esys_VerifySignature", 8, 8, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(604), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(604), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(184), arg7, (char **)&x7);
  if (datasize != 0) {
    x7 = ((size_t)datasize) <= 640 ? (TPMT_TK_VERIFIED * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(184), arg7, (char **)&x7,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_VerifySignature(x0, x1, x2, x3, x4, x5, x6, x7); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_VerifySignature _cffi_d_Esys_VerifySignature
#endif

static uint32_t _cffi_d_Esys_VerifySignature_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_DIGEST const * x5, TPMT_SIGNATURE const * x6)
{
  return Esys_VerifySignature_Async(x0, x1, x2, x3, x4, x5, x6);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_VerifySignature_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_DIGEST const * x5;
  TPMT_SIGNATURE const * x6;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;

  if (!PyArg_UnpackTuple(args, "Esys_VerifySignature_Async", 7, 7, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(604), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(604), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_VerifySignature_Async(x0, x1, x2, x3, x4, x5, x6); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_VerifySignature_Async _cffi_d_Esys_VerifySignature_Async
#endif

static uint32_t _cffi_d_Esys_VerifySignature_Finish(ESYS_CONTEXT * x0, TPMT_TK_VERIFIED * * x1)
{
  return Esys_VerifySignature_Finish(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_VerifySignature_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPMT_TK_VERIFIED * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Esys_VerifySignature_Finish", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(184), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPMT_TK_VERIFIED * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(184), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_VerifySignature_Finish(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_VerifySignature_Finish _cffi_d_Esys_VerifySignature_Finish
#endif

static uint32_t _cffi_d_Esys_ZGen_2Phase(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_ECC_POINT const * x5, TPM2B_ECC_POINT const * x6, uint16_t x7, uint16_t x8, TPM2B_ECC_POINT * * x9, TPM2B_ECC_POINT * * x10)
{
  return Esys_ZGen_2Phase(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ZGen_2Phase(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_ECC_POINT const * x5;
  TPM2B_ECC_POINT const * x6;
  uint16_t x7;
  uint16_t x8;
  TPM2B_ECC_POINT * * x9;
  TPM2B_ECC_POINT * * x10;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;
  PyObject *arg9;
  PyObject *arg10;

  if (!PyArg_UnpackTuple(args, "Esys_ZGen_2Phase", 11, 11, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8, &arg9, &arg10))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(691), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(691), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(691), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(691), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x7 = _cffi_to_c_int(arg7, uint16_t);
  if (x7 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  x8 = _cffi_to_c_int(arg8, uint16_t);
  if (x8 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg9, (char **)&x9);
  if (datasize != 0) {
    x9 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg9, (char **)&x9,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg10, (char **)&x10);
  if (datasize != 0) {
    x10 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg10, (char **)&x10,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ZGen_2Phase(x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ZGen_2Phase _cffi_d_Esys_ZGen_2Phase
#endif

static uint32_t _cffi_d_Esys_ZGen_2Phase_Async(ESYS_CONTEXT * x0, uint32_t x1, uint32_t x2, uint32_t x3, uint32_t x4, TPM2B_ECC_POINT const * x5, TPM2B_ECC_POINT const * x6, uint16_t x7, uint16_t x8)
{
  return Esys_ZGen_2Phase_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ZGen_2Phase_Async(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  uint32_t x1;
  uint32_t x2;
  uint32_t x3;
  uint32_t x4;
  TPM2B_ECC_POINT const * x5;
  TPM2B_ECC_POINT const * x6;
  uint16_t x7;
  uint16_t x8;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;
  PyObject *arg5;
  PyObject *arg6;
  PyObject *arg7;
  PyObject *arg8;

  if (!PyArg_UnpackTuple(args, "Esys_ZGen_2Phase_Async", 9, 9, &arg0, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7, &arg8))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x2 = _cffi_to_c_int(arg2, uint32_t);
  if (x2 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  x4 = _cffi_to_c_int(arg4, uint32_t);
  if (x4 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(691), arg5, (char **)&x5);
  if (datasize != 0) {
    x5 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(691), arg5, (char **)&x5,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(691), arg6, (char **)&x6);
  if (datasize != 0) {
    x6 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(691), arg6, (char **)&x6,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x7 = _cffi_to_c_int(arg7, uint16_t);
  if (x7 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  x8 = _cffi_to_c_int(arg8, uint16_t);
  if (x8 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ZGen_2Phase_Async(x0, x1, x2, x3, x4, x5, x6, x7, x8); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ZGen_2Phase_Async _cffi_d_Esys_ZGen_2Phase_Async
#endif

static uint32_t _cffi_d_Esys_ZGen_2Phase_Finish(ESYS_CONTEXT * x0, TPM2B_ECC_POINT * * x1, TPM2B_ECC_POINT * * x2)
{
  return Esys_ZGen_2Phase_Finish(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Esys_ZGen_2Phase_Finish(PyObject *self, PyObject *args)
{
  ESYS_CONTEXT * x0;
  TPM2B_ECC_POINT * * x1;
  TPM2B_ECC_POINT * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Esys_ZGen_2Phase_Finish", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(19), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (ESYS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(19), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(56), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(56), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Esys_ZGen_2Phase_Finish(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Esys_ZGen_2Phase_Finish _cffi_d_Esys_ZGen_2Phase_Finish
#endif

static uint32_t _cffi_d_Tss2_MU_BYTE_Marshal(uint8_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_BYTE_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_BYTE_Marshal(PyObject *self, PyObject *args)
{
  uint8_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_BYTE_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint8_t);
  if (x0 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_BYTE_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_BYTE_Marshal _cffi_d_Tss2_MU_BYTE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_BYTE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint8_t * x3)
{
  return Tss2_MU_BYTE_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_BYTE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint8_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_BYTE_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_BYTE_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_BYTE_Unmarshal _cffi_d_Tss2_MU_BYTE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_INT16_Marshal(int16_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_INT16_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_INT16_Marshal(PyObject *self, PyObject *args)
{
  int16_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_INT16_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, int16_t);
  if (x0 == (int16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_INT16_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_INT16_Marshal _cffi_d_Tss2_MU_INT16_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_INT16_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, int16_t * x3)
{
  return Tss2_MU_INT16_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_INT16_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  int16_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_INT16_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3079), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (int16_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3079), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_INT16_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_INT16_Unmarshal _cffi_d_Tss2_MU_INT16_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_INT32_Marshal(int32_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_INT32_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_INT32_Marshal(PyObject *self, PyObject *args)
{
  int32_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_INT32_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, int32_t);
  if (x0 == (int32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_INT32_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_INT32_Marshal _cffi_d_Tss2_MU_INT32_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_INT32_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, int32_t * x3)
{
  return Tss2_MU_INT32_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_INT32_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  int32_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_INT32_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3085), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (int32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3085), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_INT32_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_INT32_Unmarshal _cffi_d_Tss2_MU_INT32_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_INT64_Marshal(int64_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_INT64_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_INT64_Marshal(PyObject *self, PyObject *args)
{
  int64_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_INT64_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, int64_t);
  if (x0 == (int64_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_INT64_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_INT64_Marshal _cffi_d_Tss2_MU_INT64_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_INT64_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, int64_t * x3)
{
  return Tss2_MU_INT64_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_INT64_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  int64_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_INT64_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3091), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (int64_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3091), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_INT64_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_INT64_Unmarshal _cffi_d_Tss2_MU_INT64_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_INT8_Marshal(int8_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_INT8_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_INT8_Marshal(PyObject *self, PyObject *args)
{
  int8_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_INT8_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, int8_t);
  if (x0 == (int8_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_INT8_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_INT8_Marshal _cffi_d_Tss2_MU_INT8_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_INT8_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, int8_t * x3)
{
  return Tss2_MU_INT8_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_INT8_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  int8_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_INT8_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3097), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (int8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3097), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_INT8_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_INT8_Unmarshal _cffi_d_Tss2_MU_INT8_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_ATTEST_Marshal(TPM2B_ATTEST const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_ATTEST_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_ATTEST_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_ATTEST const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_ATTEST_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1640), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_ATTEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1640), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_ATTEST_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_ATTEST_Marshal _cffi_d_Tss2_MU_TPM2B_ATTEST_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_ATTEST_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_ATTEST * x3)
{
  return Tss2_MU_TPM2B_ATTEST_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_ATTEST_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_ATTEST * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_ATTEST_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2479), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_ATTEST *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2479), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_ATTEST_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_ATTEST_Unmarshal _cffi_d_Tss2_MU_TPM2B_ATTEST_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_AUTH_Marshal(TPM2B_DIGEST const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_AUTH_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_AUTH_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_DIGEST const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_AUTH_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_AUTH_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_AUTH_Marshal _cffi_d_Tss2_MU_TPM2B_AUTH_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_AUTH_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_DIGEST * x3)
{
  return Tss2_MU_TPM2B_AUTH_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_AUTH_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_DIGEST * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_AUTH_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1670), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1670), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_AUTH_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_AUTH_Unmarshal _cffi_d_Tss2_MU_TPM2B_AUTH_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_CONTEXT_DATA_Marshal(TPM2B_CONTEXT_DATA const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_CONTEXT_DATA_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_CONTEXT_DATA_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_CONTEXT_DATA const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_CONTEXT_DATA_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1646), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_CONTEXT_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1646), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_CONTEXT_DATA_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_CONTEXT_DATA_Marshal _cffi_d_Tss2_MU_TPM2B_CONTEXT_DATA_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_CONTEXT_DATA_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_CONTEXT_DATA * x3)
{
  return Tss2_MU_TPM2B_CONTEXT_DATA_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_CONTEXT_DATA_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_CONTEXT_DATA * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_CONTEXT_DATA_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2485), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_CONTEXT_DATA *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2485), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_CONTEXT_DATA_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_CONTEXT_DATA_Unmarshal _cffi_d_Tss2_MU_TPM2B_CONTEXT_DATA_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Marshal(TPM2B_CONTEXT_SENSITIVE const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_CONTEXT_SENSITIVE const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1652), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_CONTEXT_SENSITIVE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1652), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Marshal _cffi_d_Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_CONTEXT_SENSITIVE * x3)
{
  return Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_CONTEXT_SENSITIVE * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2491), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_CONTEXT_SENSITIVE *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2491), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Unmarshal _cffi_d_Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_CREATION_DATA_Marshal(TPM2B_CREATION_DATA const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_CREATION_DATA_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_CREATION_DATA_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_CREATION_DATA const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_CREATION_DATA_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1658), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_CREATION_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1658), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_CREATION_DATA_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_CREATION_DATA_Marshal _cffi_d_Tss2_MU_TPM2B_CREATION_DATA_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_CREATION_DATA_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_CREATION_DATA * x3)
{
  return Tss2_MU_TPM2B_CREATION_DATA_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_CREATION_DATA_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_CREATION_DATA * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_CREATION_DATA_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2497), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_CREATION_DATA *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2497), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_CREATION_DATA_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_CREATION_DATA_Unmarshal _cffi_d_Tss2_MU_TPM2B_CREATION_DATA_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_DATA_Marshal(TPM2B_DATA const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_DATA_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_DATA_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_DATA const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_DATA_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(271), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(271), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_DATA_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_DATA_Marshal _cffi_d_Tss2_MU_TPM2B_DATA_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_DATA_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_DATA * x3)
{
  return Tss2_MU_TPM2B_DATA_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_DATA_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_DATA * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_DATA_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2503), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_DATA *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2503), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_DATA_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_DATA_Unmarshal _cffi_d_Tss2_MU_TPM2B_DATA_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_DIGEST_Marshal(TPM2B_DIGEST const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_DIGEST_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_DIGEST_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_DIGEST const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_DIGEST_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_DIGEST_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_DIGEST_Marshal _cffi_d_Tss2_MU_TPM2B_DIGEST_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_DIGEST_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_DIGEST * x3)
{
  return Tss2_MU_TPM2B_DIGEST_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_DIGEST_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_DIGEST * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_DIGEST_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1670), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1670), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_DIGEST_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_DIGEST_Unmarshal _cffi_d_Tss2_MU_TPM2B_DIGEST_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_ECC_PARAMETER_Marshal(TPM2B_ECC_PARAMETER const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_ECC_PARAMETER_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_ECC_PARAMETER_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_ECC_PARAMETER const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_ECC_PARAMETER_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(734), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_PARAMETER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(734), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_ECC_PARAMETER_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_ECC_PARAMETER_Marshal _cffi_d_Tss2_MU_TPM2B_ECC_PARAMETER_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_ECC_PARAMETER_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_ECC_PARAMETER * x3)
{
  return Tss2_MU_TPM2B_ECC_PARAMETER_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_ECC_PARAMETER_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_ECC_PARAMETER * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_ECC_PARAMETER_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1761), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_PARAMETER *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1761), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_ECC_PARAMETER_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_ECC_PARAMETER_Unmarshal _cffi_d_Tss2_MU_TPM2B_ECC_PARAMETER_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_ECC_POINT_Marshal(TPM2B_ECC_POINT const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_ECC_POINT_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_ECC_POINT_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_ECC_POINT const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_ECC_POINT_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(691), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(691), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_ECC_POINT_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_ECC_POINT_Marshal _cffi_d_Tss2_MU_TPM2B_ECC_POINT_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_ECC_POINT_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_ECC_POINT * x3)
{
  return Tss2_MU_TPM2B_ECC_POINT_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_ECC_POINT_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_ECC_POINT * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_ECC_POINT_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2521), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_ECC_POINT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2521), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_ECC_POINT_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_ECC_POINT_Unmarshal _cffi_d_Tss2_MU_TPM2B_ECC_POINT_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_ENCRYPTED_SECRET_Marshal(TPM2B_ENCRYPTED_SECRET const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_ENCRYPTED_SECRET_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_ENCRYPTED_SECRET_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_ENCRYPTED_SECRET const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_ENCRYPTED_SECRET_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(472), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_ENCRYPTED_SECRET const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(472), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_ENCRYPTED_SECRET_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_ENCRYPTED_SECRET_Marshal _cffi_d_Tss2_MU_TPM2B_ENCRYPTED_SECRET_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_ENCRYPTED_SECRET_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_ENCRYPTED_SECRET * x3)
{
  return Tss2_MU_TPM2B_ENCRYPTED_SECRET_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_ENCRYPTED_SECRET_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_ENCRYPTED_SECRET * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_ENCRYPTED_SECRET_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2527), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_ENCRYPTED_SECRET *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2527), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_ENCRYPTED_SECRET_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_ENCRYPTED_SECRET_Unmarshal _cffi_d_Tss2_MU_TPM2B_ENCRYPTED_SECRET_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_EVENT_Marshal(TPM2B_EVENT const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_EVENT_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_EVENT_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_EVENT const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_EVENT_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(756), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_EVENT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(756), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_EVENT_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_EVENT_Marshal _cffi_d_Tss2_MU_TPM2B_EVENT_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_EVENT_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_EVENT * x3)
{
  return Tss2_MU_TPM2B_EVENT_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_EVENT_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_EVENT * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_EVENT_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2533), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_EVENT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2533), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_EVENT_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_EVENT_Unmarshal _cffi_d_Tss2_MU_TPM2B_EVENT_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_ID_OBJECT_Marshal(TPM2B_ID_OBJECT const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_ID_OBJECT_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_ID_OBJECT_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_ID_OBJECT const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_ID_OBJECT_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1277), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_ID_OBJECT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1277), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_ID_OBJECT_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_ID_OBJECT_Marshal _cffi_d_Tss2_MU_TPM2B_ID_OBJECT_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_ID_OBJECT_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_ID_OBJECT * x3)
{
  return Tss2_MU_TPM2B_ID_OBJECT_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_ID_OBJECT_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_ID_OBJECT * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_ID_OBJECT_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2539), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_ID_OBJECT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2539), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_ID_OBJECT_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_ID_OBJECT_Unmarshal _cffi_d_Tss2_MU_TPM2B_ID_OBJECT_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_IV_Marshal(TPM2B_IV const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_IV_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_IV_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_IV const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_IV_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(831), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_IV const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(831), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_IV_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_IV_Marshal _cffi_d_Tss2_MU_TPM2B_IV_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_IV_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_IV * x3)
{
  return Tss2_MU_TPM2B_IV_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_IV_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_IV * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_IV_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2545), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_IV *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2545), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_IV_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_IV_Unmarshal _cffi_d_Tss2_MU_TPM2B_IV_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_MAX_BUFFER_Marshal(TPM2B_MAX_BUFFER const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_MAX_BUFFER_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_MAX_BUFFER_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_MAX_BUFFER const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_MAX_BUFFER_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(311), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(311), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_MAX_BUFFER_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_MAX_BUFFER_Marshal _cffi_d_Tss2_MU_TPM2B_MAX_BUFFER_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_MAX_BUFFER_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_MAX_BUFFER * x3)
{
  return Tss2_MU_TPM2B_MAX_BUFFER_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_MAX_BUFFER_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_MAX_BUFFER * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_MAX_BUFFER_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1455), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_BUFFER *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1455), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_MAX_BUFFER_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_MAX_BUFFER_Unmarshal _cffi_d_Tss2_MU_TPM2B_MAX_BUFFER_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_MAX_CAP_BUFFER_Marshal(TPM2B_MAX_CAP_BUFFER const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_MAX_CAP_BUFFER_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_MAX_CAP_BUFFER_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_MAX_CAP_BUFFER const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_MAX_CAP_BUFFER_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1723), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_CAP_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1723), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_MAX_CAP_BUFFER_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_MAX_CAP_BUFFER_Marshal _cffi_d_Tss2_MU_TPM2B_MAX_CAP_BUFFER_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_MAX_CAP_BUFFER_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_MAX_CAP_BUFFER * x3)
{
  return Tss2_MU_TPM2B_MAX_CAP_BUFFER_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_MAX_CAP_BUFFER_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_MAX_CAP_BUFFER * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_MAX_CAP_BUFFER_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2557), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_CAP_BUFFER *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2557), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_MAX_CAP_BUFFER_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_MAX_CAP_BUFFER_Unmarshal _cffi_d_Tss2_MU_TPM2B_MAX_CAP_BUFFER_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_MAX_NV_BUFFER_Marshal(TPM2B_MAX_NV_BUFFER const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_MAX_NV_BUFFER_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_MAX_NV_BUFFER_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_MAX_NV_BUFFER const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_MAX_NV_BUFFER_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1317), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_NV_BUFFER const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1317), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_MAX_NV_BUFFER_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_MAX_NV_BUFFER_Marshal _cffi_d_Tss2_MU_TPM2B_MAX_NV_BUFFER_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_MAX_NV_BUFFER_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_MAX_NV_BUFFER * x3)
{
  return Tss2_MU_TPM2B_MAX_NV_BUFFER_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_MAX_NV_BUFFER_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_MAX_NV_BUFFER * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_MAX_NV_BUFFER_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2563), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_MAX_NV_BUFFER *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2563), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_MAX_NV_BUFFER_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_MAX_NV_BUFFER_Unmarshal _cffi_d_Tss2_MU_TPM2B_MAX_NV_BUFFER_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_NAME_Marshal(TPM2B_NAME const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_NAME_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_NAME_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_NAME const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_NAME_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(535), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_NAME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(535), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_NAME_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_NAME_Marshal _cffi_d_Tss2_MU_TPM2B_NAME_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_NAME_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_NAME * x3)
{
  return Tss2_MU_TPM2B_NAME_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_NAME_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_NAME * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_NAME_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(347), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_NAME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(347), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_NAME_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_NAME_Unmarshal _cffi_d_Tss2_MU_TPM2B_NAME_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_NONCE_Marshal(TPM2B_DIGEST const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_NONCE_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_NONCE_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_DIGEST const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_NONCE_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_NONCE_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_NONCE_Marshal _cffi_d_Tss2_MU_TPM2B_NONCE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_NONCE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_DIGEST * x3)
{
  return Tss2_MU_TPM2B_NONCE_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_NONCE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_DIGEST * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_NONCE_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1670), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1670), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_NONCE_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_NONCE_Unmarshal _cffi_d_Tss2_MU_TPM2B_NONCE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_NV_PUBLIC_Marshal(TPM2B_NV_PUBLIC const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_NV_PUBLIC_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_NV_PUBLIC_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_NV_PUBLIC const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_NV_PUBLIC_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(576), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_NV_PUBLIC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(576), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_NV_PUBLIC_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_NV_PUBLIC_Marshal _cffi_d_Tss2_MU_TPM2B_NV_PUBLIC_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_NV_PUBLIC_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_NV_PUBLIC * x3)
{
  return Tss2_MU_TPM2B_NV_PUBLIC_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_NV_PUBLIC_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_NV_PUBLIC * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_NV_PUBLIC_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2575), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_NV_PUBLIC *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2575), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_NV_PUBLIC_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_NV_PUBLIC_Unmarshal _cffi_d_Tss2_MU_TPM2B_NV_PUBLIC_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_OPERAND_Marshal(TPM2B_DIGEST const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_OPERAND_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_OPERAND_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_DIGEST const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_OPERAND_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_OPERAND_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_OPERAND_Marshal _cffi_d_Tss2_MU_TPM2B_OPERAND_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_OPERAND_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_DIGEST * x3)
{
  return Tss2_MU_TPM2B_OPERAND_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_OPERAND_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_DIGEST * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_OPERAND_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1670), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1670), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_OPERAND_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_OPERAND_Unmarshal _cffi_d_Tss2_MU_TPM2B_OPERAND_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Marshal(TPM2B_PRIVATE_KEY_RSA const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_PRIVATE_KEY_RSA const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1753), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE_KEY_RSA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1753), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Marshal _cffi_d_Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_PRIVATE_KEY_RSA * x3)
{
  return Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_PRIVATE_KEY_RSA * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2587), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE_KEY_RSA *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2587), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Unmarshal _cffi_d_Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_PRIVATE_Marshal(TPM2B_PRIVATE const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_PRIVATE_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_PRIVATE_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_PRIVATE const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_PRIVATE_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(471), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(471), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_PRIVATE_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_PRIVATE_Marshal _cffi_d_Tss2_MU_TPM2B_PRIVATE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_PRIVATE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_PRIVATE * x3)
{
  return Tss2_MU_TPM2B_PRIVATE_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_PRIVATE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_PRIVATE * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_PRIVATE_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2581), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_PRIVATE *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2581), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_PRIVATE_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_PRIVATE_Unmarshal _cffi_d_Tss2_MU_TPM2B_PRIVATE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Marshal(TPM2B_PUBLIC_KEY_RSA const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_PUBLIC_KEY_RSA const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(900), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC_KEY_RSA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(900), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Marshal _cffi_d_Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_PUBLIC_KEY_RSA * x3)
{
  return Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_PUBLIC_KEY_RSA * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2599), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC_KEY_RSA *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2599), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Unmarshal _cffi_d_Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_PUBLIC_Marshal(TPM2B_PUBLIC const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_PUBLIC_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_PUBLIC_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_PUBLIC const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_PUBLIC_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(358), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(358), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_PUBLIC_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_PUBLIC_Marshal _cffi_d_Tss2_MU_TPM2B_PUBLIC_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_PUBLIC_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_PUBLIC * x3)
{
  return Tss2_MU_TPM2B_PUBLIC_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_PUBLIC_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_PUBLIC * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_PUBLIC_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1759), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_PUBLIC *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1759), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_PUBLIC_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_PUBLIC_Unmarshal _cffi_d_Tss2_MU_TPM2B_PUBLIC_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_SENSITIVE_CREATE_Marshal(TPM2B_SENSITIVE_CREATE const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_SENSITIVE_CREATE_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_SENSITIVE_CREATE_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_SENSITIVE_CREATE const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_SENSITIVE_CREATE_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(921), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE_CREATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(921), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_SENSITIVE_CREATE_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_SENSITIVE_CREATE_Marshal _cffi_d_Tss2_MU_TPM2B_SENSITIVE_CREATE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_SENSITIVE_CREATE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_SENSITIVE_CREATE * x3)
{
  return Tss2_MU_TPM2B_SENSITIVE_CREATE_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_SENSITIVE_CREATE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_SENSITIVE_CREATE * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_SENSITIVE_CREATE_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2611), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE_CREATE *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2611), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_SENSITIVE_CREATE_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_SENSITIVE_CREATE_Unmarshal _cffi_d_Tss2_MU_TPM2B_SENSITIVE_CREATE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_SENSITIVE_DATA_Marshal(TPM2B_SENSITIVE_DATA const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_SENSITIVE_DATA_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_SENSITIVE_DATA_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_SENSITIVE_DATA const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_SENSITIVE_DATA_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(376), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(376), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_SENSITIVE_DATA_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_SENSITIVE_DATA_Marshal _cffi_d_Tss2_MU_TPM2B_SENSITIVE_DATA_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_SENSITIVE_DATA_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_SENSITIVE_DATA * x3)
{
  return Tss2_MU_TPM2B_SENSITIVE_DATA_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_SENSITIVE_DATA_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_SENSITIVE_DATA * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_SENSITIVE_DATA_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2617), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE_DATA *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2617), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_SENSITIVE_DATA_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_SENSITIVE_DATA_Unmarshal _cffi_d_Tss2_MU_TPM2B_SENSITIVE_DATA_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_SENSITIVE_Marshal(TPM2B_SENSITIVE const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_SENSITIVE_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_SENSITIVE_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_SENSITIVE const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_SENSITIVE_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(357), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(357), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_SENSITIVE_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_SENSITIVE_Marshal _cffi_d_Tss2_MU_TPM2B_SENSITIVE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_SENSITIVE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_SENSITIVE * x3)
{
  return Tss2_MU_TPM2B_SENSITIVE_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_SENSITIVE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_SENSITIVE * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_SENSITIVE_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2605), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_SENSITIVE *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2605), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_SENSITIVE_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_SENSITIVE_Unmarshal _cffi_d_Tss2_MU_TPM2B_SENSITIVE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_SYM_KEY_Marshal(TPM2B_SYM_KEY const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_SYM_KEY_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_SYM_KEY_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_SYM_KEY const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_SYM_KEY_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1808), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_SYM_KEY const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1808), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_SYM_KEY_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_SYM_KEY_Marshal _cffi_d_Tss2_MU_TPM2B_SYM_KEY_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_SYM_KEY_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_SYM_KEY * x3)
{
  return Tss2_MU_TPM2B_SYM_KEY_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_SYM_KEY_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_SYM_KEY * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_SYM_KEY_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2623), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_SYM_KEY *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2623), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_SYM_KEY_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_SYM_KEY_Unmarshal _cffi_d_Tss2_MU_TPM2B_SYM_KEY_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_TEMPLATE_Marshal(TPM2B_TEMPLATE const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_TEMPLATE_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_TEMPLATE_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_TEMPLATE const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_TEMPLATE_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(965), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_TEMPLATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(965), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_TEMPLATE_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_TEMPLATE_Marshal _cffi_d_Tss2_MU_TPM2B_TEMPLATE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_TEMPLATE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_TEMPLATE * x3)
{
  return Tss2_MU_TPM2B_TEMPLATE_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_TEMPLATE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_TEMPLATE * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_TEMPLATE_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2629), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_TEMPLATE *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2629), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_TEMPLATE_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_TEMPLATE_Unmarshal _cffi_d_Tss2_MU_TPM2B_TEMPLATE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_TIMEOUT_Marshal(TPM2B_DIGEST const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2B_TIMEOUT_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_TIMEOUT_Marshal(PyObject *self, PyObject *args)
{
  TPM2B_DIGEST const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_TIMEOUT_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(243), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(243), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_TIMEOUT_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_TIMEOUT_Marshal _cffi_d_Tss2_MU_TPM2B_TIMEOUT_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2B_TIMEOUT_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPM2B_DIGEST * x3)
{
  return Tss2_MU_TPM2B_TIMEOUT_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2B_TIMEOUT_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPM2B_DIGEST * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2B_TIMEOUT_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1670), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPM2B_DIGEST *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1670), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2B_TIMEOUT_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2B_TIMEOUT_Unmarshal _cffi_d_Tss2_MU_TPM2B_TIMEOUT_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2_CC_Marshal(uint32_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2_CC_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2_CC_Marshal(PyObject *self, PyObject *args)
{
  uint32_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2_CC_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint32_t);
  if (x0 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2_CC_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2_CC_Marshal _cffi_d_Tss2_MU_TPM2_CC_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2_CC_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t * x3)
{
  return Tss2_MU_TPM2_CC_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2_CC_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2_CC_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2_CC_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2_CC_Unmarshal _cffi_d_Tss2_MU_TPM2_CC_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2_HANDLE_Marshal(uint32_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2_HANDLE_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2_HANDLE_Marshal(PyObject *self, PyObject *args)
{
  uint32_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2_HANDLE_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint32_t);
  if (x0 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2_HANDLE_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2_HANDLE_Marshal _cffi_d_Tss2_MU_TPM2_HANDLE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2_HANDLE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t * x3)
{
  return Tss2_MU_TPM2_HANDLE_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2_HANDLE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2_HANDLE_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2_HANDLE_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2_HANDLE_Unmarshal _cffi_d_Tss2_MU_TPM2_HANDLE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2_NT_Marshal(uint8_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2_NT_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2_NT_Marshal(PyObject *self, PyObject *args)
{
  uint8_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2_NT_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint8_t);
  if (x0 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2_NT_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2_NT_Marshal _cffi_d_Tss2_MU_TPM2_NT_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2_NT_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint8_t * x3)
{
  return Tss2_MU_TPM2_NT_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2_NT_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint8_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2_NT_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2_NT_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2_NT_Unmarshal _cffi_d_Tss2_MU_TPM2_NT_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2_SE_Marshal(uint8_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2_SE_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2_SE_Marshal(PyObject *self, PyObject *args)
{
  uint8_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2_SE_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint8_t);
  if (x0 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2_SE_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2_SE_Marshal _cffi_d_Tss2_MU_TPM2_SE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2_SE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint8_t * x3)
{
  return Tss2_MU_TPM2_SE_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2_SE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint8_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2_SE_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2_SE_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2_SE_Unmarshal _cffi_d_Tss2_MU_TPM2_SE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2_ST_Marshal(uint16_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPM2_ST_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2_ST_Marshal(PyObject *self, PyObject *args)
{
  uint16_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2_ST_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint16_t);
  if (x0 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2_ST_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2_ST_Marshal _cffi_d_Tss2_MU_TPM2_ST_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPM2_ST_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint16_t * x3)
{
  return Tss2_MU_TPM2_ST_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPM2_ST_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint16_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPM2_ST_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(68), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint16_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(68), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPM2_ST_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPM2_ST_Unmarshal _cffi_d_Tss2_MU_TPM2_ST_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMA_ALGORITHM_Marshal(uint32_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMA_ALGORITHM_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMA_ALGORITHM_Marshal(PyObject *self, PyObject *args)
{
  uint32_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMA_ALGORITHM_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint32_t);
  if (x0 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMA_ALGORITHM_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMA_ALGORITHM_Marshal _cffi_d_Tss2_MU_TPMA_ALGORITHM_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMA_ALGORITHM_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t * x3)
{
  return Tss2_MU_TPMA_ALGORITHM_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMA_ALGORITHM_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMA_ALGORITHM_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMA_ALGORITHM_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMA_ALGORITHM_Unmarshal _cffi_d_Tss2_MU_TPMA_ALGORITHM_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMA_CC_Marshal(uint32_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMA_CC_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMA_CC_Marshal(PyObject *self, PyObject *args)
{
  uint32_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMA_CC_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint32_t);
  if (x0 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMA_CC_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMA_CC_Marshal _cffi_d_Tss2_MU_TPMA_CC_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMA_CC_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t * x3)
{
  return Tss2_MU_TPMA_CC_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMA_CC_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMA_CC_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMA_CC_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMA_CC_Unmarshal _cffi_d_Tss2_MU_TPMA_CC_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMA_LOCALITY_Marshal(uint8_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMA_LOCALITY_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMA_LOCALITY_Marshal(PyObject *self, PyObject *args)
{
  uint8_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMA_LOCALITY_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint8_t);
  if (x0 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMA_LOCALITY_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMA_LOCALITY_Marshal _cffi_d_Tss2_MU_TPMA_LOCALITY_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMA_LOCALITY_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint8_t * x3)
{
  return Tss2_MU_TPMA_LOCALITY_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMA_LOCALITY_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint8_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMA_LOCALITY_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMA_LOCALITY_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMA_LOCALITY_Unmarshal _cffi_d_Tss2_MU_TPMA_LOCALITY_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMA_NV_Marshal(uint32_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMA_NV_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMA_NV_Marshal(PyObject *self, PyObject *args)
{
  uint32_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMA_NV_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint32_t);
  if (x0 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMA_NV_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMA_NV_Marshal _cffi_d_Tss2_MU_TPMA_NV_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMA_NV_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t * x3)
{
  return Tss2_MU_TPMA_NV_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMA_NV_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMA_NV_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMA_NV_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMA_NV_Unmarshal _cffi_d_Tss2_MU_TPMA_NV_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMA_OBJECT_Marshal(uint32_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMA_OBJECT_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMA_OBJECT_Marshal(PyObject *self, PyObject *args)
{
  uint32_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMA_OBJECT_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint32_t);
  if (x0 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMA_OBJECT_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMA_OBJECT_Marshal _cffi_d_Tss2_MU_TPMA_OBJECT_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMA_OBJECT_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t * x3)
{
  return Tss2_MU_TPMA_OBJECT_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMA_OBJECT_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMA_OBJECT_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMA_OBJECT_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMA_OBJECT_Unmarshal _cffi_d_Tss2_MU_TPMA_OBJECT_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMA_PERMANENT_Marshal(uint32_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMA_PERMANENT_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMA_PERMANENT_Marshal(PyObject *self, PyObject *args)
{
  uint32_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMA_PERMANENT_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint32_t);
  if (x0 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMA_PERMANENT_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMA_PERMANENT_Marshal _cffi_d_Tss2_MU_TPMA_PERMANENT_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMA_PERMANENT_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t * x3)
{
  return Tss2_MU_TPMA_PERMANENT_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMA_PERMANENT_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMA_PERMANENT_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMA_PERMANENT_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMA_PERMANENT_Unmarshal _cffi_d_Tss2_MU_TPMA_PERMANENT_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMA_SESSION_Marshal(uint8_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMA_SESSION_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMA_SESSION_Marshal(PyObject *self, PyObject *args)
{
  uint8_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMA_SESSION_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint8_t);
  if (x0 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMA_SESSION_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMA_SESSION_Marshal _cffi_d_Tss2_MU_TPMA_SESSION_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMA_SESSION_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint8_t * x3)
{
  return Tss2_MU_TPMA_SESSION_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMA_SESSION_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint8_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMA_SESSION_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMA_SESSION_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMA_SESSION_Unmarshal _cffi_d_Tss2_MU_TPMA_SESSION_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMA_STARTUP_CLEAR_Marshal(uint32_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMA_STARTUP_CLEAR_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMA_STARTUP_CLEAR_Marshal(PyObject *self, PyObject *args)
{
  uint32_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMA_STARTUP_CLEAR_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint32_t);
  if (x0 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMA_STARTUP_CLEAR_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMA_STARTUP_CLEAR_Marshal _cffi_d_Tss2_MU_TPMA_STARTUP_CLEAR_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMA_STARTUP_CLEAR_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t * x3)
{
  return Tss2_MU_TPMA_STARTUP_CLEAR_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMA_STARTUP_CLEAR_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMA_STARTUP_CLEAR_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMA_STARTUP_CLEAR_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMA_STARTUP_CLEAR_Unmarshal _cffi_d_Tss2_MU_TPMA_STARTUP_CLEAR_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMI_ALG_HASH_Marshal(uint16_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMI_ALG_HASH_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMI_ALG_HASH_Marshal(PyObject *self, PyObject *args)
{
  uint16_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMI_ALG_HASH_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint16_t);
  if (x0 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMI_ALG_HASH_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMI_ALG_HASH_Marshal _cffi_d_Tss2_MU_TPMI_ALG_HASH_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMI_ALG_HASH_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint16_t * x3)
{
  return Tss2_MU_TPMI_ALG_HASH_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMI_ALG_HASH_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint16_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMI_ALG_HASH_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(68), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint16_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(68), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMI_ALG_HASH_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMI_ALG_HASH_Unmarshal _cffi_d_Tss2_MU_TPMI_ALG_HASH_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_ACT_DATA_Marshal(TPML_ACT_DATA const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPML_ACT_DATA_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_ACT_DATA_Marshal(PyObject *self, PyObject *args)
{
  TPML_ACT_DATA const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_ACT_DATA_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1820), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPML_ACT_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1820), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_ACT_DATA_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_ACT_DATA_Marshal _cffi_d_Tss2_MU_TPML_ACT_DATA_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_ACT_DATA_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPML_ACT_DATA * x3)
{
  return Tss2_MU_TPML_ACT_DATA_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_ACT_DATA_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPML_ACT_DATA * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_ACT_DATA_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2635), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPML_ACT_DATA *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2635), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_ACT_DATA_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_ACT_DATA_Unmarshal _cffi_d_Tss2_MU_TPML_ACT_DATA_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_AC_CAPABILITIES_Marshal(TPML_AC_CAPABILITIES const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPML_AC_CAPABILITIES_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_AC_CAPABILITIES_Marshal(PyObject *self, PyObject *args)
{
  TPML_AC_CAPABILITIES const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_AC_CAPABILITIES_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1826), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPML_AC_CAPABILITIES const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1826), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_AC_CAPABILITIES_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_AC_CAPABILITIES_Marshal _cffi_d_Tss2_MU_TPML_AC_CAPABILITIES_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_AC_CAPABILITIES_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPML_AC_CAPABILITIES * x3)
{
  return Tss2_MU_TPML_AC_CAPABILITIES_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_AC_CAPABILITIES_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPML_AC_CAPABILITIES * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_AC_CAPABILITIES_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2641), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPML_AC_CAPABILITIES *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2641), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_AC_CAPABILITIES_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_AC_CAPABILITIES_Unmarshal _cffi_d_Tss2_MU_TPML_AC_CAPABILITIES_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_ALG_Marshal(TPML_ALG const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPML_ALG_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_ALG_Marshal(PyObject *self, PyObject *args)
{
  TPML_ALG const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_ALG_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(383), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPML_ALG const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(383), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_ALG_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_ALG_Marshal _cffi_d_Tss2_MU_TPML_ALG_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_ALG_PROPERTY_Marshal(TPML_ALG_PROPERTY const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPML_ALG_PROPERTY_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_ALG_PROPERTY_Marshal(PyObject *self, PyObject *args)
{
  TPML_ALG_PROPERTY const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_ALG_PROPERTY_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1838), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPML_ALG_PROPERTY const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1838), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_ALG_PROPERTY_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_ALG_PROPERTY_Marshal _cffi_d_Tss2_MU_TPML_ALG_PROPERTY_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_ALG_PROPERTY_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPML_ALG_PROPERTY * x3)
{
  return Tss2_MU_TPML_ALG_PROPERTY_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_ALG_PROPERTY_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPML_ALG_PROPERTY * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_ALG_PROPERTY_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2653), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPML_ALG_PROPERTY *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2653), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_ALG_PROPERTY_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_ALG_PROPERTY_Unmarshal _cffi_d_Tss2_MU_TPML_ALG_PROPERTY_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_ALG_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPML_ALG * x3)
{
  return Tss2_MU_TPML_ALG_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_ALG_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPML_ALG * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_ALG_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2647), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPML_ALG *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2647), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_ALG_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_ALG_Unmarshal _cffi_d_Tss2_MU_TPML_ALG_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_CCA_Marshal(TPML_CCA const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPML_CCA_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_CCA_Marshal(PyObject *self, PyObject *args)
{
  TPML_CCA const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_CCA_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1850), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPML_CCA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1850), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_CCA_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_CCA_Marshal _cffi_d_Tss2_MU_TPML_CCA_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_CCA_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPML_CCA * x3)
{
  return Tss2_MU_TPML_CCA_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_CCA_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPML_CCA * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_CCA_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2665), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPML_CCA *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2665), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_CCA_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_CCA_Unmarshal _cffi_d_Tss2_MU_TPML_CCA_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_CC_Marshal(TPML_CC const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPML_CC_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_CC_Marshal(PyObject *self, PyObject *args)
{
  TPML_CC const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_CC_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(993), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPML_CC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(993), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_CC_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_CC_Marshal _cffi_d_Tss2_MU_TPML_CC_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_CC_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPML_CC * x3)
{
  return Tss2_MU_TPML_CC_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_CC_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPML_CC * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_CC_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2659), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPML_CC *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2659), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_CC_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_CC_Unmarshal _cffi_d_Tss2_MU_TPML_CC_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_DIGEST_Marshal(TPML_DIGEST const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPML_DIGEST_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_DIGEST_Marshal(PyObject *self, PyObject *args)
{
  TPML_DIGEST const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_DIGEST_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1002), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPML_DIGEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1002), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_DIGEST_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_DIGEST_Marshal _cffi_d_Tss2_MU_TPML_DIGEST_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_DIGEST_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPML_DIGEST * x3)
{
  return Tss2_MU_TPML_DIGEST_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_DIGEST_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPML_DIGEST * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_DIGEST_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2671), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPML_DIGEST *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2671), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_DIGEST_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_DIGEST_Unmarshal _cffi_d_Tss2_MU_TPML_DIGEST_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_DIGEST_VALUES_Marshal(TPML_DIGEST_VALUES const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPML_DIGEST_VALUES_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_DIGEST_VALUES_Marshal(PyObject *self, PyObject *args)
{
  TPML_DIGEST_VALUES const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_DIGEST_VALUES_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1010), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPML_DIGEST_VALUES const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1010), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_DIGEST_VALUES_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_DIGEST_VALUES_Marshal _cffi_d_Tss2_MU_TPML_DIGEST_VALUES_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_DIGEST_VALUES_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPML_DIGEST_VALUES * x3)
{
  return Tss2_MU_TPML_DIGEST_VALUES_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_DIGEST_VALUES_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPML_DIGEST_VALUES * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_DIGEST_VALUES_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2677), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPML_DIGEST_VALUES *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2677), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_DIGEST_VALUES_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_DIGEST_VALUES_Unmarshal _cffi_d_Tss2_MU_TPML_DIGEST_VALUES_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_ECC_CURVE_Marshal(TPML_ECC_CURVE const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPML_ECC_CURVE_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_ECC_CURVE_Marshal(PyObject *self, PyObject *args)
{
  TPML_ECC_CURVE const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_ECC_CURVE_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1868), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPML_ECC_CURVE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1868), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_ECC_CURVE_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_ECC_CURVE_Marshal _cffi_d_Tss2_MU_TPML_ECC_CURVE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_ECC_CURVE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPML_ECC_CURVE * x3)
{
  return Tss2_MU_TPML_ECC_CURVE_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_ECC_CURVE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPML_ECC_CURVE * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_ECC_CURVE_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2683), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPML_ECC_CURVE *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2683), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_ECC_CURVE_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_ECC_CURVE_Unmarshal _cffi_d_Tss2_MU_TPML_ECC_CURVE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_HANDLE_Marshal(TPML_HANDLE const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPML_HANDLE_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_HANDLE_Marshal(PyObject *self, PyObject *args)
{
  TPML_HANDLE const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_HANDLE_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1874), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPML_HANDLE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1874), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_HANDLE_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_HANDLE_Marshal _cffi_d_Tss2_MU_TPML_HANDLE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_HANDLE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPML_HANDLE * x3)
{
  return Tss2_MU_TPML_HANDLE_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_HANDLE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPML_HANDLE * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_HANDLE_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2689), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPML_HANDLE *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2689), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_HANDLE_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_HANDLE_Unmarshal _cffi_d_Tss2_MU_TPML_HANDLE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_INTEL_PTT_PROPERTY_Marshal(TPML_INTEL_PTT_PROPERTY const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPML_INTEL_PTT_PROPERTY_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_INTEL_PTT_PROPERTY_Marshal(PyObject *self, PyObject *args)
{
  TPML_INTEL_PTT_PROPERTY const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_INTEL_PTT_PROPERTY_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1880), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPML_INTEL_PTT_PROPERTY const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1880), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_INTEL_PTT_PROPERTY_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_INTEL_PTT_PROPERTY_Marshal _cffi_d_Tss2_MU_TPML_INTEL_PTT_PROPERTY_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_INTEL_PTT_PROPERTY_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPML_INTEL_PTT_PROPERTY * x3)
{
  return Tss2_MU_TPML_INTEL_PTT_PROPERTY_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_INTEL_PTT_PROPERTY_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPML_INTEL_PTT_PROPERTY * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_INTEL_PTT_PROPERTY_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2695), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPML_INTEL_PTT_PROPERTY *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2695), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_INTEL_PTT_PROPERTY_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_INTEL_PTT_PROPERTY_Unmarshal _cffi_d_Tss2_MU_TPML_INTEL_PTT_PROPERTY_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_PCR_SELECTION_Marshal(TPML_PCR_SELECTION const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPML_PCR_SELECTION_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_PCR_SELECTION_Marshal(PyObject *self, PyObject *args)
{
  TPML_PCR_SELECTION const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_PCR_SELECTION_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(398), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPML_PCR_SELECTION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(398), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_PCR_SELECTION_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_PCR_SELECTION_Marshal _cffi_d_Tss2_MU_TPML_PCR_SELECTION_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_PCR_SELECTION_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPML_PCR_SELECTION * x3)
{
  return Tss2_MU_TPML_PCR_SELECTION_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_PCR_SELECTION_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPML_PCR_SELECTION * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_PCR_SELECTION_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2701), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPML_PCR_SELECTION *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2701), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_PCR_SELECTION_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_PCR_SELECTION_Unmarshal _cffi_d_Tss2_MU_TPML_PCR_SELECTION_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Marshal(TPML_TAGGED_PCR_PROPERTY const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Marshal(PyObject *self, PyObject *args)
{
  TPML_TAGGED_PCR_PROPERTY const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1892), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPML_TAGGED_PCR_PROPERTY const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1892), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Marshal _cffi_d_Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPML_TAGGED_PCR_PROPERTY * x3)
{
  return Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPML_TAGGED_PCR_PROPERTY * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2707), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPML_TAGGED_PCR_PROPERTY *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2707), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Unmarshal _cffi_d_Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_TAGGED_POLICY_Marshal(TPML_TAGGED_POLICY const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPML_TAGGED_POLICY_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_TAGGED_POLICY_Marshal(PyObject *self, PyObject *args)
{
  TPML_TAGGED_POLICY const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_TAGGED_POLICY_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1898), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPML_TAGGED_POLICY const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1898), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_TAGGED_POLICY_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_TAGGED_POLICY_Marshal _cffi_d_Tss2_MU_TPML_TAGGED_POLICY_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_TAGGED_POLICY_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPML_TAGGED_POLICY * x3)
{
  return Tss2_MU_TPML_TAGGED_POLICY_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_TAGGED_POLICY_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPML_TAGGED_POLICY * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_TAGGED_POLICY_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2713), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPML_TAGGED_POLICY *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2713), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_TAGGED_POLICY_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_TAGGED_POLICY_Unmarshal _cffi_d_Tss2_MU_TPML_TAGGED_POLICY_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Marshal(TPML_TAGGED_TPM_PROPERTY const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Marshal(PyObject *self, PyObject *args)
{
  TPML_TAGGED_TPM_PROPERTY const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1904), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPML_TAGGED_TPM_PROPERTY const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1904), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Marshal _cffi_d_Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPML_TAGGED_TPM_PROPERTY * x3)
{
  return Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPML_TAGGED_TPM_PROPERTY * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2719), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPML_TAGGED_TPM_PROPERTY *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2719), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Unmarshal _cffi_d_Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_ACT_DATA_Marshal(TPMS_ACT_DATA const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_ACT_DATA_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_ACT_DATA_Marshal(PyObject *self, PyObject *args)
{
  TPMS_ACT_DATA const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_ACT_DATA_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1910), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_ACT_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1910), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_ACT_DATA_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_ACT_DATA_Marshal _cffi_d_Tss2_MU_TPMS_ACT_DATA_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_ACT_DATA_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_ACT_DATA * x3)
{
  return Tss2_MU_TPMS_ACT_DATA_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_ACT_DATA_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_ACT_DATA * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_ACT_DATA_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2725), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_ACT_DATA *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2725), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_ACT_DATA_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_ACT_DATA_Unmarshal _cffi_d_Tss2_MU_TPMS_ACT_DATA_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_AC_OUTPUT_Marshal(TPMS_AC_OUTPUT const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_AC_OUTPUT_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_AC_OUTPUT_Marshal(PyObject *self, PyObject *args)
{
  TPMS_AC_OUTPUT const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_AC_OUTPUT_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1916), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_AC_OUTPUT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1916), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_AC_OUTPUT_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_AC_OUTPUT_Marshal _cffi_d_Tss2_MU_TPMS_AC_OUTPUT_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_AC_OUTPUT_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_AC_OUTPUT * x3)
{
  return Tss2_MU_TPMS_AC_OUTPUT_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_AC_OUTPUT_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_AC_OUTPUT * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_AC_OUTPUT_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2731), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_AC_OUTPUT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2731), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_AC_OUTPUT_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_AC_OUTPUT_Unmarshal _cffi_d_Tss2_MU_TPMS_AC_OUTPUT_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Marshal(TPMS_ALGORITHM_DETAIL_ECC const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Marshal(PyObject *self, PyObject *args)
{
  TPMS_ALGORITHM_DETAIL_ECC const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1922), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_ALGORITHM_DETAIL_ECC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1922), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Marshal _cffi_d_Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_ALGORITHM_DETAIL_ECC * x3)
{
  return Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_ALGORITHM_DETAIL_ECC * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2737), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_ALGORITHM_DETAIL_ECC *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2737), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Unmarshal _cffi_d_Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_ALG_PROPERTY_Marshal(TPMS_ALG_PROPERTY const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_ALG_PROPERTY_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_ALG_PROPERTY_Marshal(PyObject *self, PyObject *args)
{
  TPMS_ALG_PROPERTY const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_ALG_PROPERTY_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1928), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_ALG_PROPERTY const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1928), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_ALG_PROPERTY_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_ALG_PROPERTY_Marshal _cffi_d_Tss2_MU_TPMS_ALG_PROPERTY_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_ALG_PROPERTY_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_ALG_PROPERTY * x3)
{
  return Tss2_MU_TPMS_ALG_PROPERTY_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_ALG_PROPERTY_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_ALG_PROPERTY * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_ALG_PROPERTY_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2743), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_ALG_PROPERTY *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2743), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_ALG_PROPERTY_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_ALG_PROPERTY_Unmarshal _cffi_d_Tss2_MU_TPMS_ALG_PROPERTY_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_ATTEST_Marshal(TPMS_ATTEST const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_ATTEST_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_ATTEST_Marshal(PyObject *self, PyObject *args)
{
  TPMS_ATTEST const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_ATTEST_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1934), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_ATTEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1934), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_ATTEST_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_ATTEST_Marshal _cffi_d_Tss2_MU_TPMS_ATTEST_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_ATTEST_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_ATTEST * x3)
{
  return Tss2_MU_TPMS_ATTEST_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_ATTEST_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_ATTEST * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_ATTEST_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2749), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_ATTEST *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2749), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_ATTEST_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_ATTEST_Unmarshal _cffi_d_Tss2_MU_TPMS_ATTEST_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_AUTH_COMMAND_Marshal(TPMS_AUTH_COMMAND const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_AUTH_COMMAND_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_AUTH_COMMAND_Marshal(PyObject *self, PyObject *args)
{
  TPMS_AUTH_COMMAND const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_AUTH_COMMAND_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1940), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_AUTH_COMMAND const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1940), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_AUTH_COMMAND_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_AUTH_COMMAND_Marshal _cffi_d_Tss2_MU_TPMS_AUTH_COMMAND_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_AUTH_COMMAND_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_AUTH_COMMAND * x3)
{
  return Tss2_MU_TPMS_AUTH_COMMAND_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_AUTH_COMMAND_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_AUTH_COMMAND * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_AUTH_COMMAND_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2755), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_AUTH_COMMAND *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2755), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_AUTH_COMMAND_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_AUTH_COMMAND_Unmarshal _cffi_d_Tss2_MU_TPMS_AUTH_COMMAND_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_AUTH_RESPONSE_Marshal(TPMS_AUTH_RESPONSE const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_AUTH_RESPONSE_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_AUTH_RESPONSE_Marshal(PyObject *self, PyObject *args)
{
  TPMS_AUTH_RESPONSE const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_AUTH_RESPONSE_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1946), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_AUTH_RESPONSE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1946), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_AUTH_RESPONSE_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_AUTH_RESPONSE_Marshal _cffi_d_Tss2_MU_TPMS_AUTH_RESPONSE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_AUTH_RESPONSE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_AUTH_RESPONSE * x3)
{
  return Tss2_MU_TPMS_AUTH_RESPONSE_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_AUTH_RESPONSE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_AUTH_RESPONSE * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_AUTH_RESPONSE_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2761), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_AUTH_RESPONSE *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2761), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_AUTH_RESPONSE_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_AUTH_RESPONSE_Unmarshal _cffi_d_Tss2_MU_TPMS_AUTH_RESPONSE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_CAPABILITY_DATA_Marshal(TPMS_CAPABILITY_DATA const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_CAPABILITY_DATA_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_CAPABILITY_DATA_Marshal(PyObject *self, PyObject *args)
{
  TPMS_CAPABILITY_DATA const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_CAPABILITY_DATA_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1952), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_CAPABILITY_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1952), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_CAPABILITY_DATA_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_CAPABILITY_DATA_Marshal _cffi_d_Tss2_MU_TPMS_CAPABILITY_DATA_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_CAPABILITY_DATA_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_CAPABILITY_DATA * x3)
{
  return Tss2_MU_TPMS_CAPABILITY_DATA_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_CAPABILITY_DATA_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_CAPABILITY_DATA * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_CAPABILITY_DATA_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2767), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_CAPABILITY_DATA *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2767), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_CAPABILITY_DATA_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_CAPABILITY_DATA_Unmarshal _cffi_d_Tss2_MU_TPMS_CAPABILITY_DATA_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_CERTIFY_INFO_Marshal(TPMS_CERTIFY_INFO const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_CERTIFY_INFO_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_CERTIFY_INFO_Marshal(PyObject *self, PyObject *args)
{
  TPMS_CERTIFY_INFO const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_CERTIFY_INFO_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1958), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_CERTIFY_INFO const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1958), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_CERTIFY_INFO_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_CERTIFY_INFO_Marshal _cffi_d_Tss2_MU_TPMS_CERTIFY_INFO_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_CERTIFY_INFO_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_CERTIFY_INFO * x3)
{
  return Tss2_MU_TPMS_CERTIFY_INFO_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_CERTIFY_INFO_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_CERTIFY_INFO * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_CERTIFY_INFO_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2773), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_CERTIFY_INFO *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2773), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_CERTIFY_INFO_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_CERTIFY_INFO_Unmarshal _cffi_d_Tss2_MU_TPMS_CERTIFY_INFO_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_CLOCK_INFO_Marshal(TPMS_CLOCK_INFO const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_CLOCK_INFO_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_CLOCK_INFO_Marshal(PyObject *self, PyObject *args)
{
  TPMS_CLOCK_INFO const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_CLOCK_INFO_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1964), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_CLOCK_INFO const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1964), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_CLOCK_INFO_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_CLOCK_INFO_Marshal _cffi_d_Tss2_MU_TPMS_CLOCK_INFO_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_CLOCK_INFO_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_CLOCK_INFO * x3)
{
  return Tss2_MU_TPMS_CLOCK_INFO_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_CLOCK_INFO_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_CLOCK_INFO * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_CLOCK_INFO_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2779), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_CLOCK_INFO *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2779), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_CLOCK_INFO_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_CLOCK_INFO_Unmarshal _cffi_d_Tss2_MU_TPMS_CLOCK_INFO_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Marshal(TPMS_COMMAND_AUDIT_INFO const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Marshal(PyObject *self, PyObject *args)
{
  TPMS_COMMAND_AUDIT_INFO const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1970), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_COMMAND_AUDIT_INFO const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1970), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Marshal _cffi_d_Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_COMMAND_AUDIT_INFO * x3)
{
  return Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_COMMAND_AUDIT_INFO * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2785), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_COMMAND_AUDIT_INFO *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2785), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Unmarshal _cffi_d_Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_CONTEXT_DATA_Marshal(TPMS_CONTEXT_DATA const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_CONTEXT_DATA_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_CONTEXT_DATA_Marshal(PyObject *self, PyObject *args)
{
  TPMS_CONTEXT_DATA const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_CONTEXT_DATA_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1982), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_CONTEXT_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1982), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_CONTEXT_DATA_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_CONTEXT_DATA_Marshal _cffi_d_Tss2_MU_TPMS_CONTEXT_DATA_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_CONTEXT_DATA_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_CONTEXT_DATA * x3)
{
  return Tss2_MU_TPMS_CONTEXT_DATA_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_CONTEXT_DATA_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_CONTEXT_DATA * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_CONTEXT_DATA_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2797), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_CONTEXT_DATA *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2797), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_CONTEXT_DATA_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_CONTEXT_DATA_Unmarshal _cffi_d_Tss2_MU_TPMS_CONTEXT_DATA_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_CONTEXT_Marshal(TPMS_CONTEXT const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_CONTEXT_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_CONTEXT_Marshal(PyObject *self, PyObject *args)
{
  TPMS_CONTEXT const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_CONTEXT_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(162), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_CONTEXT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(162), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_CONTEXT_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_CONTEXT_Marshal _cffi_d_Tss2_MU_TPMS_CONTEXT_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_CONTEXT_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_CONTEXT * x3)
{
  return Tss2_MU_TPMS_CONTEXT_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_CONTEXT_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_CONTEXT * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_CONTEXT_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2791), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2791), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_CONTEXT_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_CONTEXT_Unmarshal _cffi_d_Tss2_MU_TPMS_CONTEXT_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_CREATION_DATA_Marshal(TPMS_CREATION_DATA const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_CREATION_DATA_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_CREATION_DATA_Marshal(PyObject *self, PyObject *args)
{
  TPMS_CREATION_DATA const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_CREATION_DATA_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1988), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_CREATION_DATA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1988), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_CREATION_DATA_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_CREATION_DATA_Marshal _cffi_d_Tss2_MU_TPMS_CREATION_DATA_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_CREATION_DATA_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_CREATION_DATA * x3)
{
  return Tss2_MU_TPMS_CREATION_DATA_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_CREATION_DATA_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_CREATION_DATA * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_CREATION_DATA_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2803), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_CREATION_DATA *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2803), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_CREATION_DATA_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_CREATION_DATA_Unmarshal _cffi_d_Tss2_MU_TPMS_CREATION_DATA_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_CREATION_INFO_Marshal(TPMS_CREATION_INFO const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_CREATION_INFO_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_CREATION_INFO_Marshal(PyObject *self, PyObject *args)
{
  TPMS_CREATION_INFO const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_CREATION_INFO_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1994), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_CREATION_INFO const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1994), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_CREATION_INFO_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_CREATION_INFO_Marshal _cffi_d_Tss2_MU_TPMS_CREATION_INFO_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_CREATION_INFO_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_CREATION_INFO * x3)
{
  return Tss2_MU_TPMS_CREATION_INFO_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_CREATION_INFO_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_CREATION_INFO * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_CREATION_INFO_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2809), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_CREATION_INFO *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2809), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_CREATION_INFO_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_CREATION_INFO_Unmarshal _cffi_d_Tss2_MU_TPMS_CREATION_INFO_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_ECC_PARMS_Marshal(TPMS_ECC_PARMS const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_ECC_PARMS_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_ECC_PARMS_Marshal(PyObject *self, PyObject *args)
{
  TPMS_ECC_PARMS const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_ECC_PARMS_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2000), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_ECC_PARMS const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2000), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_ECC_PARMS_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_ECC_PARMS_Marshal _cffi_d_Tss2_MU_TPMS_ECC_PARMS_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_ECC_PARMS_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_ECC_PARMS * x3)
{
  return Tss2_MU_TPMS_ECC_PARMS_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_ECC_PARMS_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_ECC_PARMS * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_ECC_PARMS_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2815), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_ECC_PARMS *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2815), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_ECC_PARMS_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_ECC_PARMS_Unmarshal _cffi_d_Tss2_MU_TPMS_ECC_PARMS_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_ECC_POINT_Marshal(TPMS_ECC_POINT const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_ECC_POINT_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_ECC_POINT_Marshal(PyObject *self, PyObject *args)
{
  TPMS_ECC_POINT const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_ECC_POINT_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2006), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_ECC_POINT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2006), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_ECC_POINT_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_ECC_POINT_Marshal _cffi_d_Tss2_MU_TPMS_ECC_POINT_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_ECC_POINT_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_ECC_POINT * x3)
{
  return Tss2_MU_TPMS_ECC_POINT_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_ECC_POINT_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_ECC_POINT * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_ECC_POINT_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1762), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_ECC_POINT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1762), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_ECC_POINT_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_ECC_POINT_Unmarshal _cffi_d_Tss2_MU_TPMS_ECC_POINT_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_EMPTY_Marshal(TPMS_EMPTY const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_EMPTY_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_EMPTY_Marshal(PyObject *self, PyObject *args)
{
  TPMS_EMPTY const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_EMPTY_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2012), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_EMPTY const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2012), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_EMPTY_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_EMPTY_Marshal _cffi_d_Tss2_MU_TPMS_EMPTY_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_EMPTY_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_EMPTY * x3)
{
  return Tss2_MU_TPMS_EMPTY_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_EMPTY_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_EMPTY * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_EMPTY_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2827), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_EMPTY *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2827), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_EMPTY_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_EMPTY_Unmarshal _cffi_d_Tss2_MU_TPMS_EMPTY_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_ID_OBJECT_Marshal(TPMS_ID_OBJECT const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_ID_OBJECT_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_ID_OBJECT_Marshal(PyObject *self, PyObject *args)
{
  TPMS_ID_OBJECT const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_ID_OBJECT_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2018), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_ID_OBJECT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2018), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_ID_OBJECT_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_ID_OBJECT_Marshal _cffi_d_Tss2_MU_TPMS_ID_OBJECT_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_ID_OBJECT_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_ID_OBJECT * x3)
{
  return Tss2_MU_TPMS_ID_OBJECT_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_ID_OBJECT_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_ID_OBJECT * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_ID_OBJECT_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2833), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_ID_OBJECT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2833), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_ID_OBJECT_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_ID_OBJECT_Unmarshal _cffi_d_Tss2_MU_TPMS_ID_OBJECT_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_KEYEDHASH_PARMS_Marshal(TPMS_KEYEDHASH_PARMS const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_KEYEDHASH_PARMS_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_KEYEDHASH_PARMS_Marshal(PyObject *self, PyObject *args)
{
  TPMS_KEYEDHASH_PARMS const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_KEYEDHASH_PARMS_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2024), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_KEYEDHASH_PARMS const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2024), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_KEYEDHASH_PARMS_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_KEYEDHASH_PARMS_Marshal _cffi_d_Tss2_MU_TPMS_KEYEDHASH_PARMS_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_KEYEDHASH_PARMS_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_KEYEDHASH_PARMS * x3)
{
  return Tss2_MU_TPMS_KEYEDHASH_PARMS_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_KEYEDHASH_PARMS_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_KEYEDHASH_PARMS * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_KEYEDHASH_PARMS_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2839), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_KEYEDHASH_PARMS *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2839), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_KEYEDHASH_PARMS_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_KEYEDHASH_PARMS_Unmarshal _cffi_d_Tss2_MU_TPMS_KEYEDHASH_PARMS_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_NV_CERTIFY_INFO_Marshal(TPMS_NV_CERTIFY_INFO const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_NV_CERTIFY_INFO_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_NV_CERTIFY_INFO_Marshal(PyObject *self, PyObject *args)
{
  TPMS_NV_CERTIFY_INFO const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_NV_CERTIFY_INFO_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2030), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_NV_CERTIFY_INFO const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2030), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_NV_CERTIFY_INFO_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_NV_CERTIFY_INFO_Marshal _cffi_d_Tss2_MU_TPMS_NV_CERTIFY_INFO_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_NV_CERTIFY_INFO_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_NV_CERTIFY_INFO * x3)
{
  return Tss2_MU_TPMS_NV_CERTIFY_INFO_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_NV_CERTIFY_INFO_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_NV_CERTIFY_INFO * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_NV_CERTIFY_INFO_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2845), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_NV_CERTIFY_INFO *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2845), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_NV_CERTIFY_INFO_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_NV_CERTIFY_INFO_Unmarshal _cffi_d_Tss2_MU_TPMS_NV_CERTIFY_INFO_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Marshal(TPMS_NV_DIGEST_CERTIFY_INFO const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Marshal(PyObject *self, PyObject *args)
{
  TPMS_NV_DIGEST_CERTIFY_INFO const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2036), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_NV_DIGEST_CERTIFY_INFO const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2036), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Marshal _cffi_d_Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_NV_DIGEST_CERTIFY_INFO * x3)
{
  return Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_NV_DIGEST_CERTIFY_INFO * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2851), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_NV_DIGEST_CERTIFY_INFO *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2851), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Unmarshal _cffi_d_Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Marshal(TPMS_NV_PIN_COUNTER_PARAMETERS const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Marshal(PyObject *self, PyObject *args)
{
  TPMS_NV_PIN_COUNTER_PARAMETERS const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2042), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_NV_PIN_COUNTER_PARAMETERS const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2042), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Marshal _cffi_d_Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_NV_PIN_COUNTER_PARAMETERS * x3)
{
  return Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_NV_PIN_COUNTER_PARAMETERS * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2857), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_NV_PIN_COUNTER_PARAMETERS *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2857), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Unmarshal _cffi_d_Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_NV_PUBLIC_Marshal(TPMS_NV_PUBLIC const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_NV_PUBLIC_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_NV_PUBLIC_Marshal(PyObject *self, PyObject *args)
{
  TPMS_NV_PUBLIC const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_NV_PUBLIC_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2048), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_NV_PUBLIC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2048), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_NV_PUBLIC_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_NV_PUBLIC_Marshal _cffi_d_Tss2_MU_TPMS_NV_PUBLIC_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_NV_PUBLIC_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_NV_PUBLIC * x3)
{
  return Tss2_MU_TPMS_NV_PUBLIC_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_NV_PUBLIC_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_NV_PUBLIC * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_NV_PUBLIC_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2863), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_NV_PUBLIC *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2863), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_NV_PUBLIC_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_NV_PUBLIC_Unmarshal _cffi_d_Tss2_MU_TPMS_NV_PUBLIC_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_PCR_SELECTION_Marshal(TPMS_PCR_SELECTION const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_PCR_SELECTION_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_PCR_SELECTION_Marshal(PyObject *self, PyObject *args)
{
  TPMS_PCR_SELECTION const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_PCR_SELECTION_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2060), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_PCR_SELECTION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2060), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_PCR_SELECTION_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_PCR_SELECTION_Marshal _cffi_d_Tss2_MU_TPMS_PCR_SELECTION_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_PCR_SELECTION_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_PCR_SELECTION * x3)
{
  return Tss2_MU_TPMS_PCR_SELECTION_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_PCR_SELECTION_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_PCR_SELECTION * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_PCR_SELECTION_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2875), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_PCR_SELECTION *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2875), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_PCR_SELECTION_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_PCR_SELECTION_Unmarshal _cffi_d_Tss2_MU_TPMS_PCR_SELECTION_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_PCR_SELECT_Marshal(TPMS_PCR_SELECT const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_PCR_SELECT_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_PCR_SELECT_Marshal(PyObject *self, PyObject *args)
{
  TPMS_PCR_SELECT const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_PCR_SELECT_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2054), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_PCR_SELECT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2054), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_PCR_SELECT_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_PCR_SELECT_Marshal _cffi_d_Tss2_MU_TPMS_PCR_SELECT_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_PCR_SELECT_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_PCR_SELECT * x3)
{
  return Tss2_MU_TPMS_PCR_SELECT_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_PCR_SELECT_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_PCR_SELECT * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_PCR_SELECT_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2869), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_PCR_SELECT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2869), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_PCR_SELECT_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_PCR_SELECT_Unmarshal _cffi_d_Tss2_MU_TPMS_PCR_SELECT_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_QUOTE_INFO_Marshal(TPMS_QUOTE_INFO const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_QUOTE_INFO_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_QUOTE_INFO_Marshal(PyObject *self, PyObject *args)
{
  TPMS_QUOTE_INFO const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_QUOTE_INFO_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2066), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_QUOTE_INFO const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2066), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_QUOTE_INFO_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_QUOTE_INFO_Marshal _cffi_d_Tss2_MU_TPMS_QUOTE_INFO_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_QUOTE_INFO_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_QUOTE_INFO * x3)
{
  return Tss2_MU_TPMS_QUOTE_INFO_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_QUOTE_INFO_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_QUOTE_INFO * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_QUOTE_INFO_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2881), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_QUOTE_INFO *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2881), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_QUOTE_INFO_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_QUOTE_INFO_Unmarshal _cffi_d_Tss2_MU_TPMS_QUOTE_INFO_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_RSA_PARMS_Marshal(TPMS_RSA_PARMS const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_RSA_PARMS_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_RSA_PARMS_Marshal(PyObject *self, PyObject *args)
{
  TPMS_RSA_PARMS const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_RSA_PARMS_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2072), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_RSA_PARMS const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2072), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_RSA_PARMS_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_RSA_PARMS_Marshal _cffi_d_Tss2_MU_TPMS_RSA_PARMS_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_RSA_PARMS_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_RSA_PARMS * x3)
{
  return Tss2_MU_TPMS_RSA_PARMS_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_RSA_PARMS_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_RSA_PARMS * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_RSA_PARMS_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2887), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_RSA_PARMS *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2887), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_RSA_PARMS_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_RSA_PARMS_Unmarshal _cffi_d_Tss2_MU_TPMS_RSA_PARMS_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_SCHEME_ECDAA_Marshal(TPMS_SCHEME_ECDAA const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_SCHEME_ECDAA_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_SCHEME_ECDAA_Marshal(PyObject *self, PyObject *args)
{
  TPMS_SCHEME_ECDAA const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_SCHEME_ECDAA_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2078), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_SCHEME_ECDAA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2078), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_SCHEME_ECDAA_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_SCHEME_ECDAA_Marshal _cffi_d_Tss2_MU_TPMS_SCHEME_ECDAA_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_SCHEME_ECDAA_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_SCHEME_ECDAA * x3)
{
  return Tss2_MU_TPMS_SCHEME_ECDAA_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_SCHEME_ECDAA_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_SCHEME_ECDAA * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_SCHEME_ECDAA_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2893), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_SCHEME_ECDAA *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2893), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_SCHEME_ECDAA_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_SCHEME_ECDAA_Unmarshal _cffi_d_Tss2_MU_TPMS_SCHEME_ECDAA_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_SCHEME_HASH_Marshal(TPMS_SCHEME_HASH const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_SCHEME_HASH_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_SCHEME_HASH_Marshal(PyObject *self, PyObject *args)
{
  TPMS_SCHEME_HASH const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_SCHEME_HASH_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2084), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_SCHEME_HASH const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2084), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_SCHEME_HASH_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_SCHEME_HASH_Marshal _cffi_d_Tss2_MU_TPMS_SCHEME_HASH_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_SCHEME_HASH_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_SCHEME_HASH * x3)
{
  return Tss2_MU_TPMS_SCHEME_HASH_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_SCHEME_HASH_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_SCHEME_HASH * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_SCHEME_HASH_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2899), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_SCHEME_HASH *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2899), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_SCHEME_HASH_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_SCHEME_HASH_Unmarshal _cffi_d_Tss2_MU_TPMS_SCHEME_HASH_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_SCHEME_XOR_Marshal(TPMS_SCHEME_XOR const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_SCHEME_XOR_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_SCHEME_XOR_Marshal(PyObject *self, PyObject *args)
{
  TPMS_SCHEME_XOR const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_SCHEME_XOR_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2090), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_SCHEME_XOR const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2090), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_SCHEME_XOR_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_SCHEME_XOR_Marshal _cffi_d_Tss2_MU_TPMS_SCHEME_XOR_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_SCHEME_XOR_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_SCHEME_XOR * x3)
{
  return Tss2_MU_TPMS_SCHEME_XOR_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_SCHEME_XOR_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_SCHEME_XOR * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_SCHEME_XOR_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2905), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_SCHEME_XOR *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2905), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_SCHEME_XOR_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_SCHEME_XOR_Unmarshal _cffi_d_Tss2_MU_TPMS_SCHEME_XOR_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_SENSITIVE_CREATE_Marshal(TPMS_SENSITIVE_CREATE const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_SENSITIVE_CREATE_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_SENSITIVE_CREATE_Marshal(PyObject *self, PyObject *args)
{
  TPMS_SENSITIVE_CREATE const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_SENSITIVE_CREATE_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2096), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_SENSITIVE_CREATE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2096), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_SENSITIVE_CREATE_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_SENSITIVE_CREATE_Marshal _cffi_d_Tss2_MU_TPMS_SENSITIVE_CREATE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_SENSITIVE_CREATE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_SENSITIVE_CREATE * x3)
{
  return Tss2_MU_TPMS_SENSITIVE_CREATE_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_SENSITIVE_CREATE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_SENSITIVE_CREATE * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_SENSITIVE_CREATE_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2911), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_SENSITIVE_CREATE *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2911), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_SENSITIVE_CREATE_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_SENSITIVE_CREATE_Unmarshal _cffi_d_Tss2_MU_TPMS_SENSITIVE_CREATE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_SESSION_AUDIT_INFO_Marshal(TPMS_SESSION_AUDIT_INFO const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_SESSION_AUDIT_INFO_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_SESSION_AUDIT_INFO_Marshal(PyObject *self, PyObject *args)
{
  TPMS_SESSION_AUDIT_INFO const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_SESSION_AUDIT_INFO_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2102), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_SESSION_AUDIT_INFO const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2102), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_SESSION_AUDIT_INFO_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_SESSION_AUDIT_INFO_Marshal _cffi_d_Tss2_MU_TPMS_SESSION_AUDIT_INFO_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_SESSION_AUDIT_INFO_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_SESSION_AUDIT_INFO * x3)
{
  return Tss2_MU_TPMS_SESSION_AUDIT_INFO_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_SESSION_AUDIT_INFO_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_SESSION_AUDIT_INFO * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_SESSION_AUDIT_INFO_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2917), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_SESSION_AUDIT_INFO *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2917), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_SESSION_AUDIT_INFO_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_SESSION_AUDIT_INFO_Unmarshal _cffi_d_Tss2_MU_TPMS_SESSION_AUDIT_INFO_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_SIGNATURE_ECC_Marshal(TPMS_SIGNATURE_ECC const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_SIGNATURE_ECC_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_SIGNATURE_ECC_Marshal(PyObject *self, PyObject *args)
{
  TPMS_SIGNATURE_ECC const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_SIGNATURE_ECC_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2108), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_SIGNATURE_ECC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2108), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_SIGNATURE_ECC_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_SIGNATURE_ECC_Marshal _cffi_d_Tss2_MU_TPMS_SIGNATURE_ECC_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_SIGNATURE_ECC_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_SIGNATURE_ECC * x3)
{
  return Tss2_MU_TPMS_SIGNATURE_ECC_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_SIGNATURE_ECC_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_SIGNATURE_ECC * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_SIGNATURE_ECC_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2923), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_SIGNATURE_ECC *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2923), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_SIGNATURE_ECC_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_SIGNATURE_ECC_Unmarshal _cffi_d_Tss2_MU_TPMS_SIGNATURE_ECC_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_SIGNATURE_RSA_Marshal(TPMS_SIGNATURE_RSA const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_SIGNATURE_RSA_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_SIGNATURE_RSA_Marshal(PyObject *self, PyObject *args)
{
  TPMS_SIGNATURE_RSA const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_SIGNATURE_RSA_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2114), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_SIGNATURE_RSA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2114), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_SIGNATURE_RSA_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_SIGNATURE_RSA_Marshal _cffi_d_Tss2_MU_TPMS_SIGNATURE_RSA_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_SIGNATURE_RSA_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_SIGNATURE_RSA * x3)
{
  return Tss2_MU_TPMS_SIGNATURE_RSA_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_SIGNATURE_RSA_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_SIGNATURE_RSA * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_SIGNATURE_RSA_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2929), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_SIGNATURE_RSA *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2929), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_SIGNATURE_RSA_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_SIGNATURE_RSA_Unmarshal _cffi_d_Tss2_MU_TPMS_SIGNATURE_RSA_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_SYMCIPHER_PARMS_Marshal(TPMS_SYMCIPHER_PARMS const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_SYMCIPHER_PARMS_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_SYMCIPHER_PARMS_Marshal(PyObject *self, PyObject *args)
{
  TPMS_SYMCIPHER_PARMS const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_SYMCIPHER_PARMS_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2120), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_SYMCIPHER_PARMS const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2120), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_SYMCIPHER_PARMS_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_SYMCIPHER_PARMS_Marshal _cffi_d_Tss2_MU_TPMS_SYMCIPHER_PARMS_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_SYMCIPHER_PARMS_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_SYMCIPHER_PARMS * x3)
{
  return Tss2_MU_TPMS_SYMCIPHER_PARMS_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_SYMCIPHER_PARMS_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_SYMCIPHER_PARMS * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_SYMCIPHER_PARMS_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2935), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_SYMCIPHER_PARMS *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2935), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_SYMCIPHER_PARMS_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_SYMCIPHER_PARMS_Unmarshal _cffi_d_Tss2_MU_TPMS_SYMCIPHER_PARMS_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_TAGGED_PCR_SELECT_Marshal(TPMS_TAGGED_PCR_SELECT const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_TAGGED_PCR_SELECT_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_TAGGED_PCR_SELECT_Marshal(PyObject *self, PyObject *args)
{
  TPMS_TAGGED_PCR_SELECT const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_TAGGED_PCR_SELECT_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2126), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_TAGGED_PCR_SELECT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2126), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_TAGGED_PCR_SELECT_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_TAGGED_PCR_SELECT_Marshal _cffi_d_Tss2_MU_TPMS_TAGGED_PCR_SELECT_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_TAGGED_PCR_SELECT_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_TAGGED_PCR_SELECT * x3)
{
  return Tss2_MU_TPMS_TAGGED_PCR_SELECT_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_TAGGED_PCR_SELECT_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_TAGGED_PCR_SELECT * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_TAGGED_PCR_SELECT_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2941), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_TAGGED_PCR_SELECT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2941), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_TAGGED_PCR_SELECT_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_TAGGED_PCR_SELECT_Unmarshal _cffi_d_Tss2_MU_TPMS_TAGGED_PCR_SELECT_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_TAGGED_POLICY_Marshal(TPMS_TAGGED_POLICY const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_TAGGED_POLICY_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_TAGGED_POLICY_Marshal(PyObject *self, PyObject *args)
{
  TPMS_TAGGED_POLICY const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_TAGGED_POLICY_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2132), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_TAGGED_POLICY const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2132), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_TAGGED_POLICY_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_TAGGED_POLICY_Marshal _cffi_d_Tss2_MU_TPMS_TAGGED_POLICY_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_TAGGED_POLICY_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_TAGGED_POLICY * x3)
{
  return Tss2_MU_TPMS_TAGGED_POLICY_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_TAGGED_POLICY_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_TAGGED_POLICY * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_TAGGED_POLICY_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2947), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_TAGGED_POLICY *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2947), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_TAGGED_POLICY_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_TAGGED_POLICY_Unmarshal _cffi_d_Tss2_MU_TPMS_TAGGED_POLICY_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_TAGGED_PROPERTY_Marshal(TPMS_TAGGED_PROPERTY const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_TAGGED_PROPERTY_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_TAGGED_PROPERTY_Marshal(PyObject *self, PyObject *args)
{
  TPMS_TAGGED_PROPERTY const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_TAGGED_PROPERTY_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2138), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_TAGGED_PROPERTY const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2138), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_TAGGED_PROPERTY_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_TAGGED_PROPERTY_Marshal _cffi_d_Tss2_MU_TPMS_TAGGED_PROPERTY_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_TAGGED_PROPERTY_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_TAGGED_PROPERTY * x3)
{
  return Tss2_MU_TPMS_TAGGED_PROPERTY_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_TAGGED_PROPERTY_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_TAGGED_PROPERTY * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_TAGGED_PROPERTY_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2953), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_TAGGED_PROPERTY *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2953), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_TAGGED_PROPERTY_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_TAGGED_PROPERTY_Unmarshal _cffi_d_Tss2_MU_TPMS_TAGGED_PROPERTY_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_TIME_ATTEST_INFO_Marshal(TPMS_TIME_ATTEST_INFO const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_TIME_ATTEST_INFO_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_TIME_ATTEST_INFO_Marshal(PyObject *self, PyObject *args)
{
  TPMS_TIME_ATTEST_INFO const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_TIME_ATTEST_INFO_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2144), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_TIME_ATTEST_INFO const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2144), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_TIME_ATTEST_INFO_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_TIME_ATTEST_INFO_Marshal _cffi_d_Tss2_MU_TPMS_TIME_ATTEST_INFO_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_TIME_ATTEST_INFO_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_TIME_ATTEST_INFO * x3)
{
  return Tss2_MU_TPMS_TIME_ATTEST_INFO_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_TIME_ATTEST_INFO_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_TIME_ATTEST_INFO * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_TIME_ATTEST_INFO_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2959), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_TIME_ATTEST_INFO *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2959), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_TIME_ATTEST_INFO_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_TIME_ATTEST_INFO_Unmarshal _cffi_d_Tss2_MU_TPMS_TIME_ATTEST_INFO_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_TIME_INFO_Marshal(TPMS_TIME_INFO const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMS_TIME_INFO_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_TIME_INFO_Marshal(PyObject *self, PyObject *args)
{
  TPMS_TIME_INFO const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_TIME_INFO_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2150), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMS_TIME_INFO const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2150), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_TIME_INFO_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_TIME_INFO_Marshal _cffi_d_Tss2_MU_TPMS_TIME_INFO_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMS_TIME_INFO_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMS_TIME_INFO * x3)
{
  return Tss2_MU_TPMS_TIME_INFO_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMS_TIME_INFO_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMS_TIME_INFO * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMS_TIME_INFO_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2965), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMS_TIME_INFO *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2965), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMS_TIME_INFO_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMS_TIME_INFO_Unmarshal _cffi_d_Tss2_MU_TPMS_TIME_INFO_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_ASYM_SCHEME_Marshal(TPMT_ASYM_SCHEME const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_ASYM_SCHEME_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_ASYM_SCHEME_Marshal(PyObject *self, PyObject *args)
{
  TPMT_ASYM_SCHEME const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_ASYM_SCHEME_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2156), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_ASYM_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2156), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_ASYM_SCHEME_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_ASYM_SCHEME_Marshal _cffi_d_Tss2_MU_TPMT_ASYM_SCHEME_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_ASYM_SCHEME_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_ASYM_SCHEME * x3)
{
  return Tss2_MU_TPMT_ASYM_SCHEME_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_ASYM_SCHEME_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_ASYM_SCHEME * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_ASYM_SCHEME_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2971), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_ASYM_SCHEME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2971), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_ASYM_SCHEME_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_ASYM_SCHEME_Unmarshal _cffi_d_Tss2_MU_TPMT_ASYM_SCHEME_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_ECC_SCHEME_Marshal(TPMT_ECC_SCHEME const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_ECC_SCHEME_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_ECC_SCHEME_Marshal(PyObject *self, PyObject *args)
{
  TPMT_ECC_SCHEME const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_ECC_SCHEME_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2162), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_ECC_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2162), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_ECC_SCHEME_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_ECC_SCHEME_Marshal _cffi_d_Tss2_MU_TPMT_ECC_SCHEME_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_ECC_SCHEME_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_ECC_SCHEME * x3)
{
  return Tss2_MU_TPMT_ECC_SCHEME_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_ECC_SCHEME_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_ECC_SCHEME * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_ECC_SCHEME_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2977), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_ECC_SCHEME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2977), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_ECC_SCHEME_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_ECC_SCHEME_Unmarshal _cffi_d_Tss2_MU_TPMT_ECC_SCHEME_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_HA_Marshal(TPMT_HA const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_HA_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_HA_Marshal(PyObject *self, PyObject *args)
{
  TPMT_HA const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_HA_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2168), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_HA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2168), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_HA_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_HA_Marshal _cffi_d_Tss2_MU_TPMT_HA_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_HA_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_HA * x3)
{
  return Tss2_MU_TPMT_HA_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_HA_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_HA * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_HA_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2983), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_HA *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2983), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_HA_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_HA_Unmarshal _cffi_d_Tss2_MU_TPMT_HA_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_KDF_SCHEME_Marshal(TPMT_KDF_SCHEME const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_KDF_SCHEME_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_KDF_SCHEME_Marshal(PyObject *self, PyObject *args)
{
  TPMT_KDF_SCHEME const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_KDF_SCHEME_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2174), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_KDF_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2174), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_KDF_SCHEME_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_KDF_SCHEME_Marshal _cffi_d_Tss2_MU_TPMT_KDF_SCHEME_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_KDF_SCHEME_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_KDF_SCHEME * x3)
{
  return Tss2_MU_TPMT_KDF_SCHEME_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_KDF_SCHEME_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_KDF_SCHEME * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_KDF_SCHEME_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2989), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_KDF_SCHEME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2989), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_KDF_SCHEME_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_KDF_SCHEME_Unmarshal _cffi_d_Tss2_MU_TPMT_KDF_SCHEME_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_KEYEDHASH_SCHEME_Marshal(TPMT_KEYEDHASH_SCHEME const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_KEYEDHASH_SCHEME_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_KEYEDHASH_SCHEME_Marshal(PyObject *self, PyObject *args)
{
  TPMT_KEYEDHASH_SCHEME const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_KEYEDHASH_SCHEME_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2180), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_KEYEDHASH_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2180), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_KEYEDHASH_SCHEME_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_KEYEDHASH_SCHEME_Marshal _cffi_d_Tss2_MU_TPMT_KEYEDHASH_SCHEME_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_KEYEDHASH_SCHEME_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_KEYEDHASH_SCHEME * x3)
{
  return Tss2_MU_TPMT_KEYEDHASH_SCHEME_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_KEYEDHASH_SCHEME_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_KEYEDHASH_SCHEME * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_KEYEDHASH_SCHEME_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2995), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_KEYEDHASH_SCHEME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2995), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_KEYEDHASH_SCHEME_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_KEYEDHASH_SCHEME_Unmarshal _cffi_d_Tss2_MU_TPMT_KEYEDHASH_SCHEME_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_PUBLIC_Marshal(TPMT_PUBLIC const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_PUBLIC_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_PUBLIC_Marshal(PyObject *self, PyObject *args)
{
  TPMT_PUBLIC const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_PUBLIC_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2186), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_PUBLIC const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2186), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_PUBLIC_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_PUBLIC_Marshal _cffi_d_Tss2_MU_TPMT_PUBLIC_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_PUBLIC_PARMS_Marshal(TPMT_PUBLIC_PARMS const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_PUBLIC_PARMS_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_PUBLIC_PARMS_Marshal(PyObject *self, PyObject *args)
{
  TPMT_PUBLIC_PARMS const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_PUBLIC_PARMS_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(422), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_PUBLIC_PARMS const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(422), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_PUBLIC_PARMS_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_PUBLIC_PARMS_Marshal _cffi_d_Tss2_MU_TPMT_PUBLIC_PARMS_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_PUBLIC_PARMS_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_PUBLIC_PARMS * x3)
{
  return Tss2_MU_TPMT_PUBLIC_PARMS_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_PUBLIC_PARMS_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_PUBLIC_PARMS * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_PUBLIC_PARMS_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3007), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_PUBLIC_PARMS *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3007), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_PUBLIC_PARMS_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_PUBLIC_PARMS_Unmarshal _cffi_d_Tss2_MU_TPMT_PUBLIC_PARMS_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_PUBLIC_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_PUBLIC * x3)
{
  return Tss2_MU_TPMT_PUBLIC_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_PUBLIC_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_PUBLIC * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_PUBLIC_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3001), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_PUBLIC *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3001), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_PUBLIC_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_PUBLIC_Unmarshal _cffi_d_Tss2_MU_TPMT_PUBLIC_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_RSA_DECRYPT_Marshal(TPMT_RSA_DECRYPT const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_RSA_DECRYPT_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_RSA_DECRYPT_Marshal(PyObject *self, PyObject *args)
{
  TPMT_RSA_DECRYPT const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_RSA_DECRYPT_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(901), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_RSA_DECRYPT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(901), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_RSA_DECRYPT_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_RSA_DECRYPT_Marshal _cffi_d_Tss2_MU_TPMT_RSA_DECRYPT_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_RSA_DECRYPT_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_RSA_DECRYPT * x3)
{
  return Tss2_MU_TPMT_RSA_DECRYPT_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_RSA_DECRYPT_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_RSA_DECRYPT * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_RSA_DECRYPT_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3013), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_RSA_DECRYPT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3013), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_RSA_DECRYPT_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_RSA_DECRYPT_Unmarshal _cffi_d_Tss2_MU_TPMT_RSA_DECRYPT_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_RSA_SCHEME_Marshal(TPMT_RSA_SCHEME const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_RSA_SCHEME_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_RSA_SCHEME_Marshal(PyObject *self, PyObject *args)
{
  TPMT_RSA_SCHEME const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_RSA_SCHEME_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2204), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_RSA_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2204), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_RSA_SCHEME_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_RSA_SCHEME_Marshal _cffi_d_Tss2_MU_TPMT_RSA_SCHEME_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_RSA_SCHEME_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_RSA_SCHEME * x3)
{
  return Tss2_MU_TPMT_RSA_SCHEME_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_RSA_SCHEME_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_RSA_SCHEME * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_RSA_SCHEME_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3019), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_RSA_SCHEME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3019), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_RSA_SCHEME_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_RSA_SCHEME_Unmarshal _cffi_d_Tss2_MU_TPMT_RSA_SCHEME_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_SENSITIVE_Marshal(TPMT_SENSITIVE const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_SENSITIVE_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_SENSITIVE_Marshal(PyObject *self, PyObject *args)
{
  TPMT_SENSITIVE const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_SENSITIVE_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2210), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_SENSITIVE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2210), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_SENSITIVE_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_SENSITIVE_Marshal _cffi_d_Tss2_MU_TPMT_SENSITIVE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_SENSITIVE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_SENSITIVE * x3)
{
  return Tss2_MU_TPMT_SENSITIVE_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_SENSITIVE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_SENSITIVE * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_SENSITIVE_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3025), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_SENSITIVE *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3025), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_SENSITIVE_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_SENSITIVE_Unmarshal _cffi_d_Tss2_MU_TPMT_SENSITIVE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_SIGNATURE_Marshal(TPMT_SIGNATURE const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_SIGNATURE_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_SIGNATURE_Marshal(PyObject *self, PyObject *args)
{
  TPMT_SIGNATURE const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_SIGNATURE_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(604), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(604), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_SIGNATURE_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_SIGNATURE_Marshal _cffi_d_Tss2_MU_TPMT_SIGNATURE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_SIGNATURE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_SIGNATURE * x3)
{
  return Tss2_MU_TPMT_SIGNATURE_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_SIGNATURE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_SIGNATURE * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_SIGNATURE_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3031), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_SIGNATURE *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3031), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_SIGNATURE_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_SIGNATURE_Unmarshal _cffi_d_Tss2_MU_TPMT_SIGNATURE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_SIG_SCHEME_Marshal(TPMT_SIG_SCHEME const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_SIG_SCHEME_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_SIG_SCHEME_Marshal(PyObject *self, PyObject *args)
{
  TPMT_SIG_SCHEME const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_SIG_SCHEME_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(495), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(495), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_SIG_SCHEME_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_SIG_SCHEME_Marshal _cffi_d_Tss2_MU_TPMT_SIG_SCHEME_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_SIG_SCHEME_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_SIG_SCHEME * x3)
{
  return Tss2_MU_TPMT_SIG_SCHEME_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_SIG_SCHEME_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_SIG_SCHEME * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_SIG_SCHEME_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3037), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_SIG_SCHEME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3037), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_SIG_SCHEME_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_SIG_SCHEME_Unmarshal _cffi_d_Tss2_MU_TPMT_SIG_SCHEME_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_SYM_DEF_Marshal(TPMT_SYM_DEF const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_SYM_DEF_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_SYM_DEF_Marshal(PyObject *self, PyObject *args)
{
  TPMT_SYM_DEF const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_SYM_DEF_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1254), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_SYM_DEF const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1254), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_SYM_DEF_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_SYM_DEF_Marshal _cffi_d_Tss2_MU_TPMT_SYM_DEF_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_SYM_DEF_OBJECT_Marshal(TPMT_SYM_DEF_OBJECT const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_SYM_DEF_OBJECT_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_SYM_DEF_OBJECT_Marshal(PyObject *self, PyObject *args)
{
  TPMT_SYM_DEF_OBJECT const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_SYM_DEF_OBJECT_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(473), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_SYM_DEF_OBJECT const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(473), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_SYM_DEF_OBJECT_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_SYM_DEF_OBJECT_Marshal _cffi_d_Tss2_MU_TPMT_SYM_DEF_OBJECT_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_SYM_DEF_OBJECT_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_SYM_DEF_OBJECT * x3)
{
  return Tss2_MU_TPMT_SYM_DEF_OBJECT_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_SYM_DEF_OBJECT_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_SYM_DEF_OBJECT * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_SYM_DEF_OBJECT_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3049), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_SYM_DEF_OBJECT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3049), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_SYM_DEF_OBJECT_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_SYM_DEF_OBJECT_Unmarshal _cffi_d_Tss2_MU_TPMT_SYM_DEF_OBJECT_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_SYM_DEF_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_SYM_DEF * x3)
{
  return Tss2_MU_TPMT_SYM_DEF_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_SYM_DEF_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_SYM_DEF * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_SYM_DEF_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3043), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_SYM_DEF *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3043), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_SYM_DEF_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_SYM_DEF_Unmarshal _cffi_d_Tss2_MU_TPMT_SYM_DEF_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_TK_AUTH_Marshal(TPMT_TK_AUTH const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_TK_AUTH_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_TK_AUTH_Marshal(PyObject *self, PyObject *args)
{
  TPMT_TK_AUTH const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_TK_AUTH_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(536), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_TK_AUTH const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(536), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_TK_AUTH_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_TK_AUTH_Marshal _cffi_d_Tss2_MU_TPMT_TK_AUTH_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_TK_AUTH_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_TK_AUTH * x3)
{
  return Tss2_MU_TPMT_TK_AUTH_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_TK_AUTH_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_TK_AUTH * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_TK_AUTH_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3055), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_TK_AUTH *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3055), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_TK_AUTH_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_TK_AUTH_Unmarshal _cffi_d_Tss2_MU_TPMT_TK_AUTH_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_TK_CREATION_Marshal(TPMT_TK_CREATION const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_TK_CREATION_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_TK_CREATION_Marshal(PyObject *self, PyObject *args)
{
  TPMT_TK_CREATION const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_TK_CREATION_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1076), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_TK_CREATION const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1076), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_TK_CREATION_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_TK_CREATION_Marshal _cffi_d_Tss2_MU_TPMT_TK_CREATION_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_TK_CREATION_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_TK_CREATION * x3)
{
  return Tss2_MU_TPMT_TK_CREATION_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_TK_CREATION_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_TK_CREATION * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_TK_CREATION_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3061), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_TK_CREATION *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3061), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_TK_CREATION_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_TK_CREATION_Unmarshal _cffi_d_Tss2_MU_TPMT_TK_CREATION_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_TK_HASHCHECK_Marshal(TPMT_TK_HASHCHECK const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_TK_HASHCHECK_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_TK_HASHCHECK_Marshal(PyObject *self, PyObject *args)
{
  TPMT_TK_HASHCHECK const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_TK_HASHCHECK_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(624), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_TK_HASHCHECK const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(624), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_TK_HASHCHECK_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_TK_HASHCHECK_Marshal _cffi_d_Tss2_MU_TPMT_TK_HASHCHECK_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_TK_HASHCHECK_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_TK_HASHCHECK * x3)
{
  return Tss2_MU_TPMT_TK_HASHCHECK_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_TK_HASHCHECK_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_TK_HASHCHECK * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_TK_HASHCHECK_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3067), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_TK_HASHCHECK *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3067), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_TK_HASHCHECK_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_TK_HASHCHECK_Unmarshal _cffi_d_Tss2_MU_TPMT_TK_HASHCHECK_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_TK_VERIFIED_Marshal(TPMT_TK_VERIFIED const * x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_TPMT_TK_VERIFIED_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_TK_VERIFIED_Marshal(PyObject *self, PyObject *args)
{
  TPMT_TK_VERIFIED const * x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_TK_VERIFIED_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(547), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMT_TK_VERIFIED const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(547), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_TK_VERIFIED_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_TK_VERIFIED_Marshal _cffi_d_Tss2_MU_TPMT_TK_VERIFIED_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMT_TK_VERIFIED_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, TPMT_TK_VERIFIED * x3)
{
  return Tss2_MU_TPMT_TK_VERIFIED_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMT_TK_VERIFIED_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  TPMT_TK_VERIFIED * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMT_TK_VERIFIED_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3073), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (TPMT_TK_VERIFIED *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3073), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMT_TK_VERIFIED_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMT_TK_VERIFIED_Unmarshal _cffi_d_Tss2_MU_TPMT_TK_VERIFIED_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_ASYM_SCHEME_Marshal(TPMU_ASYM_SCHEME const * x0, uint32_t x1, uint8_t * x2, size_t x3, size_t * x4)
{
  return Tss2_MU_TPMU_ASYM_SCHEME_Marshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_ASYM_SCHEME_Marshal(PyObject *self, PyObject *args)
{
  TPMU_ASYM_SCHEME const * x0;
  uint32_t x1;
  uint8_t * x2;
  size_t x3;
  size_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_ASYM_SCHEME_Marshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2264), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMU_ASYM_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2264), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, size_t);
  if (x3 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_ASYM_SCHEME_Marshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_ASYM_SCHEME_Marshal _cffi_d_Tss2_MU_TPMU_ASYM_SCHEME_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_ASYM_SCHEME_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t x3, TPMU_ASYM_SCHEME * x4)
{
  return Tss2_MU_TPMU_ASYM_SCHEME_Unmarshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_ASYM_SCHEME_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t x3;
  TPMU_ASYM_SCHEME * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_ASYM_SCHEME_Unmarshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3116), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMU_ASYM_SCHEME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3116), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_ASYM_SCHEME_Unmarshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_ASYM_SCHEME_Unmarshal _cffi_d_Tss2_MU_TPMU_ASYM_SCHEME_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_ATTEST_Marshal(TPMU_ATTEST const * x0, uint32_t x1, uint8_t * x2, size_t x3, size_t * x4)
{
  return Tss2_MU_TPMU_ATTEST_Marshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_ATTEST_Marshal(PyObject *self, PyObject *args)
{
  TPMU_ATTEST const * x0;
  uint32_t x1;
  uint8_t * x2;
  size_t x3;
  size_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_ATTEST_Marshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2271), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMU_ATTEST const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2271), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, size_t);
  if (x3 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_ATTEST_Marshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_ATTEST_Marshal _cffi_d_Tss2_MU_TPMU_ATTEST_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_ATTEST_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t x3, TPMU_ATTEST * x4)
{
  return Tss2_MU_TPMU_ATTEST_Unmarshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_ATTEST_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t x3;
  TPMU_ATTEST * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_ATTEST_Unmarshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3123), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMU_ATTEST *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3123), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_ATTEST_Unmarshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_ATTEST_Unmarshal _cffi_d_Tss2_MU_TPMU_ATTEST_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_CAPABILITIES_Marshal(TPMU_CAPABILITIES const * x0, uint32_t x1, uint8_t * x2, size_t x3, size_t * x4)
{
  return Tss2_MU_TPMU_CAPABILITIES_Marshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_CAPABILITIES_Marshal(PyObject *self, PyObject *args)
{
  TPMU_CAPABILITIES const * x0;
  uint32_t x1;
  uint8_t * x2;
  size_t x3;
  size_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_CAPABILITIES_Marshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2278), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMU_CAPABILITIES const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2278), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, size_t);
  if (x3 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_CAPABILITIES_Marshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_CAPABILITIES_Marshal _cffi_d_Tss2_MU_TPMU_CAPABILITIES_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_CAPABILITIES_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t x3, TPMU_CAPABILITIES * x4)
{
  return Tss2_MU_TPMU_CAPABILITIES_Unmarshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_CAPABILITIES_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t x3;
  TPMU_CAPABILITIES * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_CAPABILITIES_Unmarshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3130), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMU_CAPABILITIES *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3130), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_CAPABILITIES_Unmarshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_CAPABILITIES_Unmarshal _cffi_d_Tss2_MU_TPMU_CAPABILITIES_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_ENCRYPTED_SECRET_Marshal(TPMU_ENCRYPTED_SECRET const * x0, uint32_t x1, uint8_t * x2, size_t x3, size_t * x4)
{
  return Tss2_MU_TPMU_ENCRYPTED_SECRET_Marshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_ENCRYPTED_SECRET_Marshal(PyObject *self, PyObject *args)
{
  TPMU_ENCRYPTED_SECRET const * x0;
  uint32_t x1;
  uint8_t * x2;
  size_t x3;
  size_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_ENCRYPTED_SECRET_Marshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2285), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMU_ENCRYPTED_SECRET const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2285), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, size_t);
  if (x3 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_ENCRYPTED_SECRET_Marshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_ENCRYPTED_SECRET_Marshal _cffi_d_Tss2_MU_TPMU_ENCRYPTED_SECRET_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_ENCRYPTED_SECRET_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t x3, TPMU_ENCRYPTED_SECRET * x4)
{
  return Tss2_MU_TPMU_ENCRYPTED_SECRET_Unmarshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_ENCRYPTED_SECRET_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t x3;
  TPMU_ENCRYPTED_SECRET * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_ENCRYPTED_SECRET_Unmarshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3137), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMU_ENCRYPTED_SECRET *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3137), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_ENCRYPTED_SECRET_Unmarshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_ENCRYPTED_SECRET_Unmarshal _cffi_d_Tss2_MU_TPMU_ENCRYPTED_SECRET_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_HA_Marshal(TPMU_HA const * x0, uint32_t x1, uint8_t * x2, size_t x3, size_t * x4)
{
  return Tss2_MU_TPMU_HA_Marshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_HA_Marshal(PyObject *self, PyObject *args)
{
  TPMU_HA const * x0;
  uint32_t x1;
  uint8_t * x2;
  size_t x3;
  size_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_HA_Marshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2292), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMU_HA const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2292), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, size_t);
  if (x3 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_HA_Marshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_HA_Marshal _cffi_d_Tss2_MU_TPMU_HA_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_HA_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t x3, TPMU_HA * x4)
{
  return Tss2_MU_TPMU_HA_Unmarshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_HA_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t x3;
  TPMU_HA * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_HA_Unmarshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3144), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMU_HA *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3144), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_HA_Unmarshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_HA_Unmarshal _cffi_d_Tss2_MU_TPMU_HA_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_KDF_SCHEME_Marshal(TPMU_KDF_SCHEME const * x0, uint32_t x1, uint8_t * x2, size_t x3, size_t * x4)
{
  return Tss2_MU_TPMU_KDF_SCHEME_Marshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_KDF_SCHEME_Marshal(PyObject *self, PyObject *args)
{
  TPMU_KDF_SCHEME const * x0;
  uint32_t x1;
  uint8_t * x2;
  size_t x3;
  size_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_KDF_SCHEME_Marshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2299), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMU_KDF_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2299), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, size_t);
  if (x3 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_KDF_SCHEME_Marshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_KDF_SCHEME_Marshal _cffi_d_Tss2_MU_TPMU_KDF_SCHEME_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_KDF_SCHEME_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t x3, TPMU_KDF_SCHEME * x4)
{
  return Tss2_MU_TPMU_KDF_SCHEME_Unmarshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_KDF_SCHEME_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t x3;
  TPMU_KDF_SCHEME * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_KDF_SCHEME_Unmarshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3151), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMU_KDF_SCHEME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3151), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_KDF_SCHEME_Unmarshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_KDF_SCHEME_Unmarshal _cffi_d_Tss2_MU_TPMU_KDF_SCHEME_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_NAME_Marshal(TPMU_NAME const * x0, uint32_t x1, uint8_t * x2, size_t x3, size_t * x4)
{
  return Tss2_MU_TPMU_NAME_Marshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_NAME_Marshal(PyObject *self, PyObject *args)
{
  TPMU_NAME const * x0;
  uint32_t x1;
  uint8_t * x2;
  size_t x3;
  size_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_NAME_Marshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2306), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMU_NAME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2306), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, size_t);
  if (x3 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_NAME_Marshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_NAME_Marshal _cffi_d_Tss2_MU_TPMU_NAME_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_NAME_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t x3, TPMU_NAME * x4)
{
  return Tss2_MU_TPMU_NAME_Unmarshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_NAME_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t x3;
  TPMU_NAME * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_NAME_Unmarshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3158), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMU_NAME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3158), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_NAME_Unmarshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_NAME_Unmarshal _cffi_d_Tss2_MU_TPMU_NAME_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_PUBLIC_ID_Marshal(TPMU_PUBLIC_ID const * x0, uint32_t x1, uint8_t * x2, size_t x3, size_t * x4)
{
  return Tss2_MU_TPMU_PUBLIC_ID_Marshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_PUBLIC_ID_Marshal(PyObject *self, PyObject *args)
{
  TPMU_PUBLIC_ID const * x0;
  uint32_t x1;
  uint8_t * x2;
  size_t x3;
  size_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_PUBLIC_ID_Marshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2313), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMU_PUBLIC_ID const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2313), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, size_t);
  if (x3 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_PUBLIC_ID_Marshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_PUBLIC_ID_Marshal _cffi_d_Tss2_MU_TPMU_PUBLIC_ID_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_PUBLIC_ID_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t x3, TPMU_PUBLIC_ID * x4)
{
  return Tss2_MU_TPMU_PUBLIC_ID_Unmarshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_PUBLIC_ID_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t x3;
  TPMU_PUBLIC_ID * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_PUBLIC_ID_Unmarshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3165), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMU_PUBLIC_ID *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3165), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_PUBLIC_ID_Unmarshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_PUBLIC_ID_Unmarshal _cffi_d_Tss2_MU_TPMU_PUBLIC_ID_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_PUBLIC_PARMS_Marshal(TPMU_PUBLIC_PARMS const * x0, uint32_t x1, uint8_t * x2, size_t x3, size_t * x4)
{
  return Tss2_MU_TPMU_PUBLIC_PARMS_Marshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_PUBLIC_PARMS_Marshal(PyObject *self, PyObject *args)
{
  TPMU_PUBLIC_PARMS const * x0;
  uint32_t x1;
  uint8_t * x2;
  size_t x3;
  size_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_PUBLIC_PARMS_Marshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2320), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMU_PUBLIC_PARMS const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2320), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, size_t);
  if (x3 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_PUBLIC_PARMS_Marshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_PUBLIC_PARMS_Marshal _cffi_d_Tss2_MU_TPMU_PUBLIC_PARMS_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_PUBLIC_PARMS_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t x3, TPMU_PUBLIC_PARMS * x4)
{
  return Tss2_MU_TPMU_PUBLIC_PARMS_Unmarshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_PUBLIC_PARMS_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t x3;
  TPMU_PUBLIC_PARMS * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_PUBLIC_PARMS_Unmarshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3172), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMU_PUBLIC_PARMS *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3172), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_PUBLIC_PARMS_Unmarshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_PUBLIC_PARMS_Unmarshal _cffi_d_Tss2_MU_TPMU_PUBLIC_PARMS_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_SCHEME_KEYEDHASH_Marshal(TPMU_SCHEME_KEYEDHASH const * x0, uint32_t x1, uint8_t * x2, size_t x3, size_t * x4)
{
  return Tss2_MU_TPMU_SCHEME_KEYEDHASH_Marshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_SCHEME_KEYEDHASH_Marshal(PyObject *self, PyObject *args)
{
  TPMU_SCHEME_KEYEDHASH const * x0;
  uint32_t x1;
  uint8_t * x2;
  size_t x3;
  size_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_SCHEME_KEYEDHASH_Marshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2327), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMU_SCHEME_KEYEDHASH const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2327), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, size_t);
  if (x3 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_SCHEME_KEYEDHASH_Marshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_SCHEME_KEYEDHASH_Marshal _cffi_d_Tss2_MU_TPMU_SCHEME_KEYEDHASH_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_SCHEME_KEYEDHASH_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t x3, TPMU_SCHEME_KEYEDHASH * x4)
{
  return Tss2_MU_TPMU_SCHEME_KEYEDHASH_Unmarshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_SCHEME_KEYEDHASH_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t x3;
  TPMU_SCHEME_KEYEDHASH * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_SCHEME_KEYEDHASH_Unmarshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3179), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMU_SCHEME_KEYEDHASH *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3179), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_SCHEME_KEYEDHASH_Unmarshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_SCHEME_KEYEDHASH_Unmarshal _cffi_d_Tss2_MU_TPMU_SCHEME_KEYEDHASH_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Marshal(TPMU_SENSITIVE_COMPOSITE const * x0, uint32_t x1, uint8_t * x2, size_t x3, size_t * x4)
{
  return Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Marshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Marshal(PyObject *self, PyObject *args)
{
  TPMU_SENSITIVE_COMPOSITE const * x0;
  uint32_t x1;
  uint8_t * x2;
  size_t x3;
  size_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Marshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2334), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMU_SENSITIVE_COMPOSITE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2334), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, size_t);
  if (x3 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Marshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Marshal _cffi_d_Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t x3, TPMU_SENSITIVE_COMPOSITE * x4)
{
  return Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Unmarshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t x3;
  TPMU_SENSITIVE_COMPOSITE * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Unmarshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3186), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMU_SENSITIVE_COMPOSITE *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3186), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Unmarshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Unmarshal _cffi_d_Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_SIGNATURE_Marshal(TPMU_SIGNATURE const * x0, uint32_t x1, uint8_t * x2, size_t x3, size_t * x4)
{
  return Tss2_MU_TPMU_SIGNATURE_Marshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_SIGNATURE_Marshal(PyObject *self, PyObject *args)
{
  TPMU_SIGNATURE const * x0;
  uint32_t x1;
  uint8_t * x2;
  size_t x3;
  size_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_SIGNATURE_Marshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2341), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMU_SIGNATURE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2341), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, size_t);
  if (x3 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_SIGNATURE_Marshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_SIGNATURE_Marshal _cffi_d_Tss2_MU_TPMU_SIGNATURE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_SIGNATURE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t x3, TPMU_SIGNATURE * x4)
{
  return Tss2_MU_TPMU_SIGNATURE_Unmarshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_SIGNATURE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t x3;
  TPMU_SIGNATURE * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_SIGNATURE_Unmarshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3193), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMU_SIGNATURE *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3193), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_SIGNATURE_Unmarshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_SIGNATURE_Unmarshal _cffi_d_Tss2_MU_TPMU_SIGNATURE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_SIG_SCHEME_Marshal(TPMU_SIG_SCHEME const * x0, uint32_t x1, uint8_t * x2, size_t x3, size_t * x4)
{
  return Tss2_MU_TPMU_SIG_SCHEME_Marshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_SIG_SCHEME_Marshal(PyObject *self, PyObject *args)
{
  TPMU_SIG_SCHEME const * x0;
  uint32_t x1;
  uint8_t * x2;
  size_t x3;
  size_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_SIG_SCHEME_Marshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2348), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMU_SIG_SCHEME const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2348), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, size_t);
  if (x3 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_SIG_SCHEME_Marshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_SIG_SCHEME_Marshal _cffi_d_Tss2_MU_TPMU_SIG_SCHEME_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_SIG_SCHEME_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t x3, TPMU_SIG_SCHEME * x4)
{
  return Tss2_MU_TPMU_SIG_SCHEME_Unmarshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_SIG_SCHEME_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t x3;
  TPMU_SIG_SCHEME * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_SIG_SCHEME_Unmarshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3200), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMU_SIG_SCHEME *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3200), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_SIG_SCHEME_Unmarshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_SIG_SCHEME_Unmarshal _cffi_d_Tss2_MU_TPMU_SIG_SCHEME_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_SYM_KEY_BITS_Marshal(TPMU_SYM_KEY_BITS const * x0, uint32_t x1, uint8_t * x2, size_t x3, size_t * x4)
{
  return Tss2_MU_TPMU_SYM_KEY_BITS_Marshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_SYM_KEY_BITS_Marshal(PyObject *self, PyObject *args)
{
  TPMU_SYM_KEY_BITS const * x0;
  uint32_t x1;
  uint8_t * x2;
  size_t x3;
  size_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_SYM_KEY_BITS_Marshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2355), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMU_SYM_KEY_BITS const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2355), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, size_t);
  if (x3 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_SYM_KEY_BITS_Marshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_SYM_KEY_BITS_Marshal _cffi_d_Tss2_MU_TPMU_SYM_KEY_BITS_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_SYM_KEY_BITS_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t x3, TPMU_SYM_KEY_BITS * x4)
{
  return Tss2_MU_TPMU_SYM_KEY_BITS_Unmarshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_SYM_KEY_BITS_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t x3;
  TPMU_SYM_KEY_BITS * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_SYM_KEY_BITS_Unmarshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3207), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMU_SYM_KEY_BITS *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3207), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_SYM_KEY_BITS_Unmarshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_SYM_KEY_BITS_Unmarshal _cffi_d_Tss2_MU_TPMU_SYM_KEY_BITS_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_SYM_MODE_Marshal(TPMU_SYM_MODE const * x0, uint32_t x1, uint8_t * x2, size_t x3, size_t * x4)
{
  return Tss2_MU_TPMU_SYM_MODE_Marshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_SYM_MODE_Marshal(PyObject *self, PyObject *args)
{
  TPMU_SYM_MODE const * x0;
  uint32_t x1;
  uint8_t * x2;
  size_t x3;
  size_t * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_SYM_MODE_Marshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2362), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TPMU_SYM_MODE const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2362), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, uint32_t);
  if (x1 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, size_t);
  if (x3 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_SYM_MODE_Marshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_SYM_MODE_Marshal _cffi_d_Tss2_MU_TPMU_SYM_MODE_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_TPMU_SYM_MODE_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t x3, TPMU_SYM_MODE * x4)
{
  return Tss2_MU_TPMU_SYM_MODE_Unmarshal(x0, x1, x2, x3, x4);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_TPMU_SYM_MODE_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t x3;
  TPMU_SYM_MODE * x4;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;
  PyObject *arg4;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_TPMU_SYM_MODE_Unmarshal", 5, 5, &arg0, &arg1, &arg2, &arg3, &arg4))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x3 = _cffi_to_c_int(arg3, uint32_t);
  if (x3 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3214), arg4, (char **)&x4);
  if (datasize != 0) {
    x4 = ((size_t)datasize) <= 640 ? (TPMU_SYM_MODE *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3214), arg4, (char **)&x4,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_TPMU_SYM_MODE_Unmarshal(x0, x1, x2, x3, x4); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_TPMU_SYM_MODE_Unmarshal _cffi_d_Tss2_MU_TPMU_SYM_MODE_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_UINT16_Marshal(uint16_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_UINT16_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_UINT16_Marshal(PyObject *self, PyObject *args)
{
  uint16_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_UINT16_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint16_t);
  if (x0 == (uint16_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_UINT16_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_UINT16_Marshal _cffi_d_Tss2_MU_UINT16_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_UINT16_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint16_t * x3)
{
  return Tss2_MU_UINT16_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_UINT16_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint16_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_UINT16_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(68), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint16_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(68), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_UINT16_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_UINT16_Unmarshal _cffi_d_Tss2_MU_UINT16_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_UINT32_Marshal(uint32_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_UINT32_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_UINT32_Marshal(PyObject *self, PyObject *args)
{
  uint32_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_UINT32_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint32_t);
  if (x0 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_UINT32_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_UINT32_Marshal _cffi_d_Tss2_MU_UINT32_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_UINT32_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint32_t * x3)
{
  return Tss2_MU_UINT32_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_UINT32_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint32_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_UINT32_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(98), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint32_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(98), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_UINT32_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_UINT32_Unmarshal _cffi_d_Tss2_MU_UINT32_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_UINT64_Marshal(uint64_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_UINT64_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_UINT64_Marshal(PyObject *self, PyObject *args)
{
  uint64_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_UINT64_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint64_t);
  if (x0 == (uint64_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_UINT64_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_UINT64_Marshal _cffi_d_Tss2_MU_UINT64_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_UINT64_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint64_t * x3)
{
  return Tss2_MU_UINT64_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_UINT64_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint64_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_UINT64_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3220), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint64_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3220), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_UINT64_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_UINT64_Unmarshal _cffi_d_Tss2_MU_UINT64_Unmarshal
#endif

static uint32_t _cffi_d_Tss2_MU_UINT8_Marshal(uint8_t x0, uint8_t * x1, size_t x2, size_t * x3)
{
  return Tss2_MU_UINT8_Marshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_UINT8_Marshal(PyObject *self, PyObject *args)
{
  uint8_t x0;
  uint8_t * x1;
  size_t x2;
  size_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_UINT8_Marshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint8_t);
  if (x0 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = _cffi_to_c_int(arg2, size_t);
  if (x2 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_UINT8_Marshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_UINT8_Marshal _cffi_d_Tss2_MU_UINT8_Marshal
#endif

static uint32_t _cffi_d_Tss2_MU_UINT8_Unmarshal(uint8_t const * x0, size_t x1, size_t * x2, uint8_t * x3)
{
  return Tss2_MU_UINT8_Unmarshal(x0, x1, x2, x3);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_MU_UINT8_Unmarshal(PyObject *self, PyObject *args)
{
  uint8_t const * x0;
  size_t x1;
  size_t * x2;
  uint8_t * x3;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;
  PyObject *arg3;

  if (!PyArg_UnpackTuple(args, "Tss2_MU_UINT8_Unmarshal", 4, 4, &arg0, &arg1, &arg2, &arg3))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1611), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (uint8_t const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1611), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x1 = _cffi_to_c_int(arg1, size_t);
  if (x1 == (size_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(1027), arg3, (char **)&x3);
  if (datasize != 0) {
    x3 = ((size_t)datasize) <= 640 ? (uint8_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(1027), arg3, (char **)&x3,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_MU_UINT8_Unmarshal(x0, x1, x2, x3); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_MU_UINT8_Unmarshal _cffi_d_Tss2_MU_UINT8_Unmarshal
#endif

static char const * _cffi_d_Tss2_RC_Decode(uint32_t x0)
{
  return Tss2_RC_Decode(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_RC_Decode(PyObject *self, PyObject *arg0)
{
  uint32_t x0;
  char const * result;
  PyObject *pyresult;

  x0 = _cffi_to_c_int(arg0, uint32_t);
  if (x0 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_RC_Decode(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_pointer((char *)result, _cffi_type(10));
  return pyresult;
}
#else
#  define _cffi_f_Tss2_RC_Decode _cffi_d_Tss2_RC_Decode
#endif

static uint32_t _cffi_d_Tss2_RC_DecodeInfo(uint32_t x0, TSS2_RC_INFO * x1)
{
  return Tss2_RC_DecodeInfo(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_RC_DecodeInfo(PyObject *self, PyObject *args)
{
  uint32_t x0;
  TSS2_RC_INFO * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Tss2_RC_DecodeInfo", 2, 2, &arg0, &arg1))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint32_t);
  if (x0 == (uint32_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TSS2_RC_INFO *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_RC_DecodeInfo(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_RC_DecodeInfo _cffi_d_Tss2_RC_DecodeInfo
#endif

static char const * _cffi_d_Tss2_RC_DecodeInfoError(TSS2_RC_INFO * x0)
{
  return Tss2_RC_DecodeInfoError(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_RC_DecodeInfoError(PyObject *self, PyObject *arg0)
{
  TSS2_RC_INFO * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  char const * result;
  PyObject *pyresult;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(3), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TSS2_RC_INFO *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(3), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_RC_DecodeInfoError(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_pointer((char *)result, _cffi_type(10));
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_RC_DecodeInfoError _cffi_d_Tss2_RC_DecodeInfoError
#endif

static char const *(* _cffi_d_Tss2_RC_SetHandler(uint8_t x0, char const * x1, char const *(* x2)(uint32_t)))(uint32_t)
{
  return Tss2_RC_SetHandler(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_RC_SetHandler(PyObject *self, PyObject *args)
{
  uint8_t x0;
  char const * x1;
  char const *(* x2)(uint32_t);
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  char const *(* result)(uint32_t);
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Tss2_RC_SetHandler", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  x0 = _cffi_to_c_int(arg0, uint8_t);
  if (x0 == (uint8_t)-1 && PyErr_Occurred())
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(10), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (char const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(10), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  x2 = (char const *(*)(uint32_t))_cffi_to_c_pointer(arg2, _cffi_type(11));
  if (x2 == (char const *(*)(uint32_t))NULL && PyErr_Occurred())
    return NULL;

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_RC_SetHandler(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_pointer((char *)result, _cffi_type(11));
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_RC_SetHandler _cffi_d_Tss2_RC_SetHandler
#endif

static void _cffi_d_Tss2_TctiLdr_Finalize(TSS2_TCTI_CONTEXT * * x0)
{
  Tss2_TctiLdr_Finalize(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_TctiLdr_Finalize(PyObject *self, PyObject *arg0)
{
  TSS2_TCTI_CONTEXT * * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(192), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TSS2_TCTI_CONTEXT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(192), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { Tss2_TctiLdr_Finalize(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  Py_INCREF(Py_None);
  return Py_None;
}
#else
#  define _cffi_f_Tss2_TctiLdr_Finalize _cffi_d_Tss2_TctiLdr_Finalize
#endif

static void _cffi_d_Tss2_TctiLdr_FreeInfo(TSS2_TCTI_INFO * * x0)
{
  Tss2_TctiLdr_FreeInfo(x0);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_TctiLdr_FreeInfo(PyObject *self, PyObject *arg0)
{
  TSS2_TCTI_INFO * * x0;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2412), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TSS2_TCTI_INFO * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2412), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { Tss2_TctiLdr_FreeInfo(x0); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  Py_INCREF(Py_None);
  return Py_None;
}
#else
#  define _cffi_f_Tss2_TctiLdr_FreeInfo _cffi_d_Tss2_TctiLdr_FreeInfo
#endif

static uint32_t _cffi_d_Tss2_TctiLdr_GetInfo(char const * x0, TSS2_TCTI_INFO * * x1)
{
  return Tss2_TctiLdr_GetInfo(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_TctiLdr_GetInfo(PyObject *self, PyObject *args)
{
  char const * x0;
  TSS2_TCTI_INFO * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Tss2_TctiLdr_GetInfo", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(10), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (char const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(10), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2412), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TSS2_TCTI_INFO * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2412), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_TctiLdr_GetInfo(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_TctiLdr_GetInfo _cffi_d_Tss2_TctiLdr_GetInfo
#endif

static uint32_t _cffi_d_Tss2_TctiLdr_Initialize(char const * x0, TSS2_TCTI_CONTEXT * * x1)
{
  return Tss2_TctiLdr_Initialize(x0, x1);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_TctiLdr_Initialize(PyObject *self, PyObject *args)
{
  char const * x0;
  TSS2_TCTI_CONTEXT * * x1;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;

  if (!PyArg_UnpackTuple(args, "Tss2_TctiLdr_Initialize", 2, 2, &arg0, &arg1))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(10), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (char const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(10), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(192), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (TSS2_TCTI_CONTEXT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(192), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_TctiLdr_Initialize(x0, x1); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_TctiLdr_Initialize _cffi_d_Tss2_TctiLdr_Initialize
#endif

static uint32_t _cffi_d_Tss2_TctiLdr_Initialize_Ex(char const * x0, char const * x1, TSS2_TCTI_CONTEXT * * x2)
{
  return Tss2_TctiLdr_Initialize_Ex(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_TctiLdr_Initialize_Ex(PyObject *self, PyObject *args)
{
  char const * x0;
  char const * x1;
  TSS2_TCTI_CONTEXT * * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Tss2_TctiLdr_Initialize_Ex", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(10), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (char const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(10), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(10), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (char const *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(10), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(192), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TSS2_TCTI_CONTEXT * *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(192), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_TctiLdr_Initialize_Ex(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_TctiLdr_Initialize_Ex _cffi_d_Tss2_TctiLdr_Initialize_Ex
#endif

static uint32_t _cffi_d_Tss2_Tcti_Spi_Helper_Init(TSS2_TCTI_CONTEXT * x0, size_t * x1, TSS2_TCTI_SPI_HELPER_PLATFORM * x2)
{
  return Tss2_Tcti_Spi_Helper_Init(x0, x1, x2);
}
#ifndef PYPY_VERSION
static PyObject *
_cffi_f_Tss2_Tcti_Spi_Helper_Init(PyObject *self, PyObject *args)
{
  TSS2_TCTI_CONTEXT * x0;
  size_t * x1;
  TSS2_TCTI_SPI_HELPER_PLATFORM * x2;
  Py_ssize_t datasize;
  struct _cffi_freeme_s *large_args_free = NULL;
  uint32_t result;
  PyObject *pyresult;
  PyObject *arg0;
  PyObject *arg1;
  PyObject *arg2;

  if (!PyArg_UnpackTuple(args, "Tss2_Tcti_Spi_Helper_Init", 3, 3, &arg0, &arg1, &arg2))
    return NULL;

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(15), arg0, (char **)&x0);
  if (datasize != 0) {
    x0 = ((size_t)datasize) <= 640 ? (TSS2_TCTI_CONTEXT *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(15), arg0, (char **)&x0,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(197), arg1, (char **)&x1);
  if (datasize != 0) {
    x1 = ((size_t)datasize) <= 640 ? (size_t *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(197), arg1, (char **)&x1,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  datasize = _cffi_prepare_pointer_call_argument(
      _cffi_type(2379), arg2, (char **)&x2);
  if (datasize != 0) {
    x2 = ((size_t)datasize) <= 640 ? (TSS2_TCTI_SPI_HELPER_PLATFORM *)alloca((size_t)datasize) : NULL;
    if (_cffi_convert_array_argument(_cffi_type(2379), arg2, (char **)&x2,
            datasize, &large_args_free) < 0)
      return NULL;
  }

  Py_BEGIN_ALLOW_THREADS
  _cffi_restore_errno();
  { result = Tss2_Tcti_Spi_Helper_Init(x0, x1, x2); }
  _cffi_save_errno();
  Py_END_ALLOW_THREADS

  (void)self; /* unused */
  pyresult = _cffi_from_c_int(result, uint32_t);
  if (large_args_free != NULL) _cffi_free_array_arguments(large_args_free);
  return pyresult;
}
#else
#  define _cffi_f_Tss2_Tcti_Spi_Helper_Init _cffi_d_Tss2_Tcti_Spi_Helper_Init
#endif

static int _cffi_const_ESYS_TR_NONE(unsigned long long *o)
{
  int n = (ESYS_TR_NONE) <= 0;
  *o = (unsigned long long)((ESYS_TR_NONE) | 0);  /* check that ESYS_TR_NONE is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PASSWORD(unsigned long long *o)
{
  int n = (ESYS_TR_PASSWORD) <= 0;
  *o = (unsigned long long)((ESYS_TR_PASSWORD) | 0);  /* check that ESYS_TR_PASSWORD is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR0(unsigned long long *o)
{
  int n = (ESYS_TR_PCR0) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR0) | 0);  /* check that ESYS_TR_PCR0 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR1(unsigned long long *o)
{
  int n = (ESYS_TR_PCR1) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR1) | 0);  /* check that ESYS_TR_PCR1 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR10(unsigned long long *o)
{
  int n = (ESYS_TR_PCR10) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR10) | 0);  /* check that ESYS_TR_PCR10 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR11(unsigned long long *o)
{
  int n = (ESYS_TR_PCR11) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR11) | 0);  /* check that ESYS_TR_PCR11 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR12(unsigned long long *o)
{
  int n = (ESYS_TR_PCR12) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR12) | 0);  /* check that ESYS_TR_PCR12 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR13(unsigned long long *o)
{
  int n = (ESYS_TR_PCR13) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR13) | 0);  /* check that ESYS_TR_PCR13 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR14(unsigned long long *o)
{
  int n = (ESYS_TR_PCR14) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR14) | 0);  /* check that ESYS_TR_PCR14 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR15(unsigned long long *o)
{
  int n = (ESYS_TR_PCR15) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR15) | 0);  /* check that ESYS_TR_PCR15 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR16(unsigned long long *o)
{
  int n = (ESYS_TR_PCR16) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR16) | 0);  /* check that ESYS_TR_PCR16 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR17(unsigned long long *o)
{
  int n = (ESYS_TR_PCR17) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR17) | 0);  /* check that ESYS_TR_PCR17 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR18(unsigned long long *o)
{
  int n = (ESYS_TR_PCR18) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR18) | 0);  /* check that ESYS_TR_PCR18 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR19(unsigned long long *o)
{
  int n = (ESYS_TR_PCR19) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR19) | 0);  /* check that ESYS_TR_PCR19 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR2(unsigned long long *o)
{
  int n = (ESYS_TR_PCR2) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR2) | 0);  /* check that ESYS_TR_PCR2 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR20(unsigned long long *o)
{
  int n = (ESYS_TR_PCR20) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR20) | 0);  /* check that ESYS_TR_PCR20 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR21(unsigned long long *o)
{
  int n = (ESYS_TR_PCR21) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR21) | 0);  /* check that ESYS_TR_PCR21 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR22(unsigned long long *o)
{
  int n = (ESYS_TR_PCR22) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR22) | 0);  /* check that ESYS_TR_PCR22 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR23(unsigned long long *o)
{
  int n = (ESYS_TR_PCR23) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR23) | 0);  /* check that ESYS_TR_PCR23 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR24(unsigned long long *o)
{
  int n = (ESYS_TR_PCR24) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR24) | 0);  /* check that ESYS_TR_PCR24 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR25(unsigned long long *o)
{
  int n = (ESYS_TR_PCR25) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR25) | 0);  /* check that ESYS_TR_PCR25 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR26(unsigned long long *o)
{
  int n = (ESYS_TR_PCR26) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR26) | 0);  /* check that ESYS_TR_PCR26 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR27(unsigned long long *o)
{
  int n = (ESYS_TR_PCR27) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR27) | 0);  /* check that ESYS_TR_PCR27 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR28(unsigned long long *o)
{
  int n = (ESYS_TR_PCR28) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR28) | 0);  /* check that ESYS_TR_PCR28 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR29(unsigned long long *o)
{
  int n = (ESYS_TR_PCR29) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR29) | 0);  /* check that ESYS_TR_PCR29 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR3(unsigned long long *o)
{
  int n = (ESYS_TR_PCR3) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR3) | 0);  /* check that ESYS_TR_PCR3 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR30(unsigned long long *o)
{
  int n = (ESYS_TR_PCR30) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR30) | 0);  /* check that ESYS_TR_PCR30 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR31(unsigned long long *o)
{
  int n = (ESYS_TR_PCR31) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR31) | 0);  /* check that ESYS_TR_PCR31 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR4(unsigned long long *o)
{
  int n = (ESYS_TR_PCR4) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR4) | 0);  /* check that ESYS_TR_PCR4 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR5(unsigned long long *o)
{
  int n = (ESYS_TR_PCR5) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR5) | 0);  /* check that ESYS_TR_PCR5 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR6(unsigned long long *o)
{
  int n = (ESYS_TR_PCR6) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR6) | 0);  /* check that ESYS_TR_PCR6 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR7(unsigned long long *o)
{
  int n = (ESYS_TR_PCR7) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR7) | 0);  /* check that ESYS_TR_PCR7 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR8(unsigned long long *o)
{
  int n = (ESYS_TR_PCR8) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR8) | 0);  /* check that ESYS_TR_PCR8 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_PCR9(unsigned long long *o)
{
  int n = (ESYS_TR_PCR9) <= 0;
  *o = (unsigned long long)((ESYS_TR_PCR9) | 0);  /* check that ESYS_TR_PCR9 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_0(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_0) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_0) | 0);  /* check that ESYS_TR_RH_ACT_0 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_1(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_1) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_1) | 0);  /* check that ESYS_TR_RH_ACT_1 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_2(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_2) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_2) | 0);  /* check that ESYS_TR_RH_ACT_2 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_3(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_3) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_3) | 0);  /* check that ESYS_TR_RH_ACT_3 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_4(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_4) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_4) | 0);  /* check that ESYS_TR_RH_ACT_4 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_5(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_5) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_5) | 0);  /* check that ESYS_TR_RH_ACT_5 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_6(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_6) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_6) | 0);  /* check that ESYS_TR_RH_ACT_6 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_7(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_7) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_7) | 0);  /* check that ESYS_TR_RH_ACT_7 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_8(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_8) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_8) | 0);  /* check that ESYS_TR_RH_ACT_8 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_9(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_9) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_9) | 0);  /* check that ESYS_TR_RH_ACT_9 is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_A(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_A) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_A) | 0);  /* check that ESYS_TR_RH_ACT_A is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_B(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_B) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_B) | 0);  /* check that ESYS_TR_RH_ACT_B is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_C(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_C) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_C) | 0);  /* check that ESYS_TR_RH_ACT_C is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_D(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_D) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_D) | 0);  /* check that ESYS_TR_RH_ACT_D is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_E(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_E) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_E) | 0);  /* check that ESYS_TR_RH_ACT_E is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_F(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_F) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_F) | 0);  /* check that ESYS_TR_RH_ACT_F is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_FIRST(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_FIRST) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_FIRST) | 0);  /* check that ESYS_TR_RH_ACT_FIRST is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ACT_LAST(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ACT_LAST) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ACT_LAST) | 0);  /* check that ESYS_TR_RH_ACT_LAST is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_AC_FIRST(unsigned long long *o)
{
  int n = (ESYS_TR_RH_AC_FIRST) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_AC_FIRST) | 0);  /* check that ESYS_TR_RH_AC_FIRST is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_AC_LAST(unsigned long long *o)
{
  int n = (ESYS_TR_RH_AC_LAST) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_AC_LAST) | 0);  /* check that ESYS_TR_RH_AC_LAST is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_AUTH_FIRST(unsigned long long *o)
{
  int n = (ESYS_TR_RH_AUTH_FIRST) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_AUTH_FIRST) | 0);  /* check that ESYS_TR_RH_AUTH_FIRST is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_ENDORSEMENT(unsigned long long *o)
{
  int n = (ESYS_TR_RH_ENDORSEMENT) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_ENDORSEMENT) | 0);  /* check that ESYS_TR_RH_ENDORSEMENT is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_LOCKOUT(unsigned long long *o)
{
  int n = (ESYS_TR_RH_LOCKOUT) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_LOCKOUT) | 0);  /* check that ESYS_TR_RH_LOCKOUT is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_NULL(unsigned long long *o)
{
  int n = (ESYS_TR_RH_NULL) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_NULL) | 0);  /* check that ESYS_TR_RH_NULL is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_OWNER(unsigned long long *o)
{
  int n = (ESYS_TR_RH_OWNER) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_OWNER) | 0);  /* check that ESYS_TR_RH_OWNER is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_PLATFORM(unsigned long long *o)
{
  int n = (ESYS_TR_RH_PLATFORM) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_PLATFORM) | 0);  /* check that ESYS_TR_RH_PLATFORM is an integer */
  return n;
}

static int _cffi_const_ESYS_TR_RH_PLATFORM_NV(unsigned long long *o)
{
  int n = (ESYS_TR_RH_PLATFORM_NV) <= 0;
  *o = (unsigned long long)((ESYS_TR_RH_PLATFORM_NV) | 0);  /* check that ESYS_TR_RH_PLATFORM_NV is an integer */
  return n;
}

static int _cffi_const_TPM2_ACTIVE_SESSION_FIRST(unsigned long long *o)
{
  int n = (TPM2_ACTIVE_SESSION_FIRST) <= 0;
  *o = (unsigned long long)((TPM2_ACTIVE_SESSION_FIRST) | 0);  /* check that TPM2_ACTIVE_SESSION_FIRST is an integer */
  return n;
}

static int _cffi_const_TPM2_ACTIVE_SESSION_LAST(unsigned long long *o)
{
  int n = (TPM2_ACTIVE_SESSION_LAST) <= 0;
  *o = (unsigned long long)((TPM2_ACTIVE_SESSION_LAST) | 0);  /* check that TPM2_ACTIVE_SESSION_LAST is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_AES(unsigned long long *o)
{
  int n = (TPM2_ALG_AES) <= 0;
  *o = (unsigned long long)((TPM2_ALG_AES) | 0);  /* check that TPM2_ALG_AES is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_CAMELLIA(unsigned long long *o)
{
  int n = (TPM2_ALG_CAMELLIA) <= 0;
  *o = (unsigned long long)((TPM2_ALG_CAMELLIA) | 0);  /* check that TPM2_ALG_CAMELLIA is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_CBC(unsigned long long *o)
{
  int n = (TPM2_ALG_CBC) <= 0;
  *o = (unsigned long long)((TPM2_ALG_CBC) | 0);  /* check that TPM2_ALG_CBC is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_CFB(unsigned long long *o)
{
  int n = (TPM2_ALG_CFB) <= 0;
  *o = (unsigned long long)((TPM2_ALG_CFB) | 0);  /* check that TPM2_ALG_CFB is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_CMAC(unsigned long long *o)
{
  int n = (TPM2_ALG_CMAC) <= 0;
  *o = (unsigned long long)((TPM2_ALG_CMAC) | 0);  /* check that TPM2_ALG_CMAC is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_CTR(unsigned long long *o)
{
  int n = (TPM2_ALG_CTR) <= 0;
  *o = (unsigned long long)((TPM2_ALG_CTR) | 0);  /* check that TPM2_ALG_CTR is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_ECB(unsigned long long *o)
{
  int n = (TPM2_ALG_ECB) <= 0;
  *o = (unsigned long long)((TPM2_ALG_ECB) | 0);  /* check that TPM2_ALG_ECB is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_ECC(unsigned long long *o)
{
  int n = (TPM2_ALG_ECC) <= 0;
  *o = (unsigned long long)((TPM2_ALG_ECC) | 0);  /* check that TPM2_ALG_ECC is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_ECDAA(unsigned long long *o)
{
  int n = (TPM2_ALG_ECDAA) <= 0;
  *o = (unsigned long long)((TPM2_ALG_ECDAA) | 0);  /* check that TPM2_ALG_ECDAA is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_ECDH(unsigned long long *o)
{
  int n = (TPM2_ALG_ECDH) <= 0;
  *o = (unsigned long long)((TPM2_ALG_ECDH) | 0);  /* check that TPM2_ALG_ECDH is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_ECDSA(unsigned long long *o)
{
  int n = (TPM2_ALG_ECDSA) <= 0;
  *o = (unsigned long long)((TPM2_ALG_ECDSA) | 0);  /* check that TPM2_ALG_ECDSA is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_ECMQV(unsigned long long *o)
{
  int n = (TPM2_ALG_ECMQV) <= 0;
  *o = (unsigned long long)((TPM2_ALG_ECMQV) | 0);  /* check that TPM2_ALG_ECMQV is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_ECSCHNORR(unsigned long long *o)
{
  int n = (TPM2_ALG_ECSCHNORR) <= 0;
  *o = (unsigned long long)((TPM2_ALG_ECSCHNORR) | 0);  /* check that TPM2_ALG_ECSCHNORR is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_ERROR(unsigned long long *o)
{
  int n = (TPM2_ALG_ERROR) <= 0;
  *o = (unsigned long long)((TPM2_ALG_ERROR) | 0);  /* check that TPM2_ALG_ERROR is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_FIRST(unsigned long long *o)
{
  int n = (TPM2_ALG_FIRST) <= 0;
  *o = (unsigned long long)((TPM2_ALG_FIRST) | 0);  /* check that TPM2_ALG_FIRST is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_HMAC(unsigned long long *o)
{
  int n = (TPM2_ALG_HMAC) <= 0;
  *o = (unsigned long long)((TPM2_ALG_HMAC) | 0);  /* check that TPM2_ALG_HMAC is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_KDF1_SP800_108(unsigned long long *o)
{
  int n = (TPM2_ALG_KDF1_SP800_108) <= 0;
  *o = (unsigned long long)((TPM2_ALG_KDF1_SP800_108) | 0);  /* check that TPM2_ALG_KDF1_SP800_108 is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_KDF1_SP800_56A(unsigned long long *o)
{
  int n = (TPM2_ALG_KDF1_SP800_56A) <= 0;
  *o = (unsigned long long)((TPM2_ALG_KDF1_SP800_56A) | 0);  /* check that TPM2_ALG_KDF1_SP800_56A is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_KDF2(unsigned long long *o)
{
  int n = (TPM2_ALG_KDF2) <= 0;
  *o = (unsigned long long)((TPM2_ALG_KDF2) | 0);  /* check that TPM2_ALG_KDF2 is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_KEYEDHASH(unsigned long long *o)
{
  int n = (TPM2_ALG_KEYEDHASH) <= 0;
  *o = (unsigned long long)((TPM2_ALG_KEYEDHASH) | 0);  /* check that TPM2_ALG_KEYEDHASH is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_LAST(unsigned long long *o)
{
  int n = (TPM2_ALG_LAST) <= 0;
  *o = (unsigned long long)((TPM2_ALG_LAST) | 0);  /* check that TPM2_ALG_LAST is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_MGF1(unsigned long long *o)
{
  int n = (TPM2_ALG_MGF1) <= 0;
  *o = (unsigned long long)((TPM2_ALG_MGF1) | 0);  /* check that TPM2_ALG_MGF1 is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_NULL(unsigned long long *o)
{
  int n = (TPM2_ALG_NULL) <= 0;
  *o = (unsigned long long)((TPM2_ALG_NULL) | 0);  /* check that TPM2_ALG_NULL is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_OAEP(unsigned long long *o)
{
  int n = (TPM2_ALG_OAEP) <= 0;
  *o = (unsigned long long)((TPM2_ALG_OAEP) | 0);  /* check that TPM2_ALG_OAEP is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_OFB(unsigned long long *o)
{
  int n = (TPM2_ALG_OFB) <= 0;
  *o = (unsigned long long)((TPM2_ALG_OFB) | 0);  /* check that TPM2_ALG_OFB is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_RSA(unsigned long long *o)
{
  int n = (TPM2_ALG_RSA) <= 0;
  *o = (unsigned long long)((TPM2_ALG_RSA) | 0);  /* check that TPM2_ALG_RSA is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_RSAES(unsigned long long *o)
{
  int n = (TPM2_ALG_RSAES) <= 0;
  *o = (unsigned long long)((TPM2_ALG_RSAES) | 0);  /* check that TPM2_ALG_RSAES is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_RSAPSS(unsigned long long *o)
{
  int n = (TPM2_ALG_RSAPSS) <= 0;
  *o = (unsigned long long)((TPM2_ALG_RSAPSS) | 0);  /* check that TPM2_ALG_RSAPSS is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_RSASSA(unsigned long long *o)
{
  int n = (TPM2_ALG_RSASSA) <= 0;
  *o = (unsigned long long)((TPM2_ALG_RSASSA) | 0);  /* check that TPM2_ALG_RSASSA is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_SHA(unsigned long long *o)
{
  int n = (TPM2_ALG_SHA) <= 0;
  *o = (unsigned long long)((TPM2_ALG_SHA) | 0);  /* check that TPM2_ALG_SHA is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_SHA1(unsigned long long *o)
{
  int n = (TPM2_ALG_SHA1) <= 0;
  *o = (unsigned long long)((TPM2_ALG_SHA1) | 0);  /* check that TPM2_ALG_SHA1 is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_SHA256(unsigned long long *o)
{
  int n = (TPM2_ALG_SHA256) <= 0;
  *o = (unsigned long long)((TPM2_ALG_SHA256) | 0);  /* check that TPM2_ALG_SHA256 is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_SHA384(unsigned long long *o)
{
  int n = (TPM2_ALG_SHA384) <= 0;
  *o = (unsigned long long)((TPM2_ALG_SHA384) | 0);  /* check that TPM2_ALG_SHA384 is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_SHA3_256(unsigned long long *o)
{
  int n = (TPM2_ALG_SHA3_256) <= 0;
  *o = (unsigned long long)((TPM2_ALG_SHA3_256) | 0);  /* check that TPM2_ALG_SHA3_256 is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_SHA3_384(unsigned long long *o)
{
  int n = (TPM2_ALG_SHA3_384) <= 0;
  *o = (unsigned long long)((TPM2_ALG_SHA3_384) | 0);  /* check that TPM2_ALG_SHA3_384 is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_SHA3_512(unsigned long long *o)
{
  int n = (TPM2_ALG_SHA3_512) <= 0;
  *o = (unsigned long long)((TPM2_ALG_SHA3_512) | 0);  /* check that TPM2_ALG_SHA3_512 is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_SHA512(unsigned long long *o)
{
  int n = (TPM2_ALG_SHA512) <= 0;
  *o = (unsigned long long)((TPM2_ALG_SHA512) | 0);  /* check that TPM2_ALG_SHA512 is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_SM2(unsigned long long *o)
{
  int n = (TPM2_ALG_SM2) <= 0;
  *o = (unsigned long long)((TPM2_ALG_SM2) | 0);  /* check that TPM2_ALG_SM2 is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_SM3_256(unsigned long long *o)
{
  int n = (TPM2_ALG_SM3_256) <= 0;
  *o = (unsigned long long)((TPM2_ALG_SM3_256) | 0);  /* check that TPM2_ALG_SM3_256 is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_SM4(unsigned long long *o)
{
  int n = (TPM2_ALG_SM4) <= 0;
  *o = (unsigned long long)((TPM2_ALG_SM4) | 0);  /* check that TPM2_ALG_SM4 is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_SYMCIPHER(unsigned long long *o)
{
  int n = (TPM2_ALG_SYMCIPHER) <= 0;
  *o = (unsigned long long)((TPM2_ALG_SYMCIPHER) | 0);  /* check that TPM2_ALG_SYMCIPHER is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_TDES(unsigned long long *o)
{
  int n = (TPM2_ALG_TDES) <= 0;
  *o = (unsigned long long)((TPM2_ALG_TDES) | 0);  /* check that TPM2_ALG_TDES is an integer */
  return n;
}

static int _cffi_const_TPM2_ALG_XOR(unsigned long long *o)
{
  int n = (TPM2_ALG_XOR) <= 0;
  *o = (unsigned long long)((TPM2_ALG_XOR) | 0);  /* check that TPM2_ALG_XOR is an integer */
  return n;
}

static int _cffi_const_TPM2_CAP_ACT(unsigned long long *o)
{
  int n = (TPM2_CAP_ACT) <= 0;
  *o = (unsigned long long)((TPM2_CAP_ACT) | 0);  /* check that TPM2_CAP_ACT is an integer */
  return n;
}

static int _cffi_const_TPM2_CAP_ALGS(unsigned long long *o)
{
  int n = (TPM2_CAP_ALGS) <= 0;
  *o = (unsigned long long)((TPM2_CAP_ALGS) | 0);  /* check that TPM2_CAP_ALGS is an integer */
  return n;
}

static int _cffi_const_TPM2_CAP_AUDIT_COMMANDS(unsigned long long *o)
{
  int n = (TPM2_CAP_AUDIT_COMMANDS) <= 0;
  *o = (unsigned long long)((TPM2_CAP_AUDIT_COMMANDS) | 0);  /* check that TPM2_CAP_AUDIT_COMMANDS is an integer */
  return n;
}

static int _cffi_const_TPM2_CAP_AUTH_POLICIES(unsigned long long *o)
{
  int n = (TPM2_CAP_AUTH_POLICIES) <= 0;
  *o = (unsigned long long)((TPM2_CAP_AUTH_POLICIES) | 0);  /* check that TPM2_CAP_AUTH_POLICIES is an integer */
  return n;
}

static int _cffi_const_TPM2_CAP_COMMANDS(unsigned long long *o)
{
  int n = (TPM2_CAP_COMMANDS) <= 0;
  *o = (unsigned long long)((TPM2_CAP_COMMANDS) | 0);  /* check that TPM2_CAP_COMMANDS is an integer */
  return n;
}

static int _cffi_const_TPM2_CAP_ECC_CURVES(unsigned long long *o)
{
  int n = (TPM2_CAP_ECC_CURVES) <= 0;
  *o = (unsigned long long)((TPM2_CAP_ECC_CURVES) | 0);  /* check that TPM2_CAP_ECC_CURVES is an integer */
  return n;
}

static int _cffi_const_TPM2_CAP_FIRST(unsigned long long *o)
{
  int n = (TPM2_CAP_FIRST) <= 0;
  *o = (unsigned long long)((TPM2_CAP_FIRST) | 0);  /* check that TPM2_CAP_FIRST is an integer */
  return n;
}

static int _cffi_const_TPM2_CAP_HANDLES(unsigned long long *o)
{
  int n = (TPM2_CAP_HANDLES) <= 0;
  *o = (unsigned long long)((TPM2_CAP_HANDLES) | 0);  /* check that TPM2_CAP_HANDLES is an integer */
  return n;
}

static int _cffi_const_TPM2_CAP_LAST(unsigned long long *o)
{
  int n = (TPM2_CAP_LAST) <= 0;
  *o = (unsigned long long)((TPM2_CAP_LAST) | 0);  /* check that TPM2_CAP_LAST is an integer */
  return n;
}

static int _cffi_const_TPM2_CAP_PCRS(unsigned long long *o)
{
  int n = (TPM2_CAP_PCRS) <= 0;
  *o = (unsigned long long)((TPM2_CAP_PCRS) | 0);  /* check that TPM2_CAP_PCRS is an integer */
  return n;
}

static int _cffi_const_TPM2_CAP_PCR_PROPERTIES(unsigned long long *o)
{
  int n = (TPM2_CAP_PCR_PROPERTIES) <= 0;
  *o = (unsigned long long)((TPM2_CAP_PCR_PROPERTIES) | 0);  /* check that TPM2_CAP_PCR_PROPERTIES is an integer */
  return n;
}

static int _cffi_const_TPM2_CAP_PP_COMMANDS(unsigned long long *o)
{
  int n = (TPM2_CAP_PP_COMMANDS) <= 0;
  *o = (unsigned long long)((TPM2_CAP_PP_COMMANDS) | 0);  /* check that TPM2_CAP_PP_COMMANDS is an integer */
  return n;
}

static int _cffi_const_TPM2_CAP_TPM_PROPERTIES(unsigned long long *o)
{
  int n = (TPM2_CAP_TPM_PROPERTIES) <= 0;
  *o = (unsigned long long)((TPM2_CAP_TPM_PROPERTIES) | 0);  /* check that TPM2_CAP_TPM_PROPERTIES is an integer */
  return n;
}

static int _cffi_const_TPM2_CAP_VENDOR_PROPERTY(unsigned long long *o)
{
  int n = (TPM2_CAP_VENDOR_PROPERTY) <= 0;
  *o = (unsigned long long)((TPM2_CAP_VENDOR_PROPERTY) | 0);  /* check that TPM2_CAP_VENDOR_PROPERTY is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_ACT_SetTimeout(unsigned long long *o)
{
  int n = (TPM2_CC_ACT_SetTimeout) <= 0;
  *o = (unsigned long long)((TPM2_CC_ACT_SetTimeout) | 0);  /* check that TPM2_CC_ACT_SetTimeout is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_AC_GetCapability(unsigned long long *o)
{
  int n = (TPM2_CC_AC_GetCapability) <= 0;
  *o = (unsigned long long)((TPM2_CC_AC_GetCapability) | 0);  /* check that TPM2_CC_AC_GetCapability is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_AC_Send(unsigned long long *o)
{
  int n = (TPM2_CC_AC_Send) <= 0;
  *o = (unsigned long long)((TPM2_CC_AC_Send) | 0);  /* check that TPM2_CC_AC_Send is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_ActivateCredential(unsigned long long *o)
{
  int n = (TPM2_CC_ActivateCredential) <= 0;
  *o = (unsigned long long)((TPM2_CC_ActivateCredential) | 0);  /* check that TPM2_CC_ActivateCredential is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_Certify(unsigned long long *o)
{
  int n = (TPM2_CC_Certify) <= 0;
  *o = (unsigned long long)((TPM2_CC_Certify) | 0);  /* check that TPM2_CC_Certify is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_CertifyCreation(unsigned long long *o)
{
  int n = (TPM2_CC_CertifyCreation) <= 0;
  *o = (unsigned long long)((TPM2_CC_CertifyCreation) | 0);  /* check that TPM2_CC_CertifyCreation is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_CertifyX509(unsigned long long *o)
{
  int n = (TPM2_CC_CertifyX509) <= 0;
  *o = (unsigned long long)((TPM2_CC_CertifyX509) | 0);  /* check that TPM2_CC_CertifyX509 is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_ChangeEPS(unsigned long long *o)
{
  int n = (TPM2_CC_ChangeEPS) <= 0;
  *o = (unsigned long long)((TPM2_CC_ChangeEPS) | 0);  /* check that TPM2_CC_ChangeEPS is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_ChangePPS(unsigned long long *o)
{
  int n = (TPM2_CC_ChangePPS) <= 0;
  *o = (unsigned long long)((TPM2_CC_ChangePPS) | 0);  /* check that TPM2_CC_ChangePPS is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_Clear(unsigned long long *o)
{
  int n = (TPM2_CC_Clear) <= 0;
  *o = (unsigned long long)((TPM2_CC_Clear) | 0);  /* check that TPM2_CC_Clear is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_ClearControl(unsigned long long *o)
{
  int n = (TPM2_CC_ClearControl) <= 0;
  *o = (unsigned long long)((TPM2_CC_ClearControl) | 0);  /* check that TPM2_CC_ClearControl is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_ClockRateAdjust(unsigned long long *o)
{
  int n = (TPM2_CC_ClockRateAdjust) <= 0;
  *o = (unsigned long long)((TPM2_CC_ClockRateAdjust) | 0);  /* check that TPM2_CC_ClockRateAdjust is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_ClockSet(unsigned long long *o)
{
  int n = (TPM2_CC_ClockSet) <= 0;
  *o = (unsigned long long)((TPM2_CC_ClockSet) | 0);  /* check that TPM2_CC_ClockSet is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_Commit(unsigned long long *o)
{
  int n = (TPM2_CC_Commit) <= 0;
  *o = (unsigned long long)((TPM2_CC_Commit) | 0);  /* check that TPM2_CC_Commit is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_ContextLoad(unsigned long long *o)
{
  int n = (TPM2_CC_ContextLoad) <= 0;
  *o = (unsigned long long)((TPM2_CC_ContextLoad) | 0);  /* check that TPM2_CC_ContextLoad is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_ContextSave(unsigned long long *o)
{
  int n = (TPM2_CC_ContextSave) <= 0;
  *o = (unsigned long long)((TPM2_CC_ContextSave) | 0);  /* check that TPM2_CC_ContextSave is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_Create(unsigned long long *o)
{
  int n = (TPM2_CC_Create) <= 0;
  *o = (unsigned long long)((TPM2_CC_Create) | 0);  /* check that TPM2_CC_Create is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_CreateLoaded(unsigned long long *o)
{
  int n = (TPM2_CC_CreateLoaded) <= 0;
  *o = (unsigned long long)((TPM2_CC_CreateLoaded) | 0);  /* check that TPM2_CC_CreateLoaded is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_CreatePrimary(unsigned long long *o)
{
  int n = (TPM2_CC_CreatePrimary) <= 0;
  *o = (unsigned long long)((TPM2_CC_CreatePrimary) | 0);  /* check that TPM2_CC_CreatePrimary is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_DictionaryAttackLockReset(unsigned long long *o)
{
  int n = (TPM2_CC_DictionaryAttackLockReset) <= 0;
  *o = (unsigned long long)((TPM2_CC_DictionaryAttackLockReset) | 0);  /* check that TPM2_CC_DictionaryAttackLockReset is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_DictionaryAttackParameters(unsigned long long *o)
{
  int n = (TPM2_CC_DictionaryAttackParameters) <= 0;
  *o = (unsigned long long)((TPM2_CC_DictionaryAttackParameters) | 0);  /* check that TPM2_CC_DictionaryAttackParameters is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_Duplicate(unsigned long long *o)
{
  int n = (TPM2_CC_Duplicate) <= 0;
  *o = (unsigned long long)((TPM2_CC_Duplicate) | 0);  /* check that TPM2_CC_Duplicate is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_ECC_Parameters(unsigned long long *o)
{
  int n = (TPM2_CC_ECC_Parameters) <= 0;
  *o = (unsigned long long)((TPM2_CC_ECC_Parameters) | 0);  /* check that TPM2_CC_ECC_Parameters is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_ECDH_KeyGen(unsigned long long *o)
{
  int n = (TPM2_CC_ECDH_KeyGen) <= 0;
  *o = (unsigned long long)((TPM2_CC_ECDH_KeyGen) | 0);  /* check that TPM2_CC_ECDH_KeyGen is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_ECDH_ZGen(unsigned long long *o)
{
  int n = (TPM2_CC_ECDH_ZGen) <= 0;
  *o = (unsigned long long)((TPM2_CC_ECDH_ZGen) | 0);  /* check that TPM2_CC_ECDH_ZGen is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_EC_Ephemeral(unsigned long long *o)
{
  int n = (TPM2_CC_EC_Ephemeral) <= 0;
  *o = (unsigned long long)((TPM2_CC_EC_Ephemeral) | 0);  /* check that TPM2_CC_EC_Ephemeral is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_EncryptDecrypt(unsigned long long *o)
{
  int n = (TPM2_CC_EncryptDecrypt) <= 0;
  *o = (unsigned long long)((TPM2_CC_EncryptDecrypt) | 0);  /* check that TPM2_CC_EncryptDecrypt is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_EncryptDecrypt2(unsigned long long *o)
{
  int n = (TPM2_CC_EncryptDecrypt2) <= 0;
  *o = (unsigned long long)((TPM2_CC_EncryptDecrypt2) | 0);  /* check that TPM2_CC_EncryptDecrypt2 is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_EventSequenceComplete(unsigned long long *o)
{
  int n = (TPM2_CC_EventSequenceComplete) <= 0;
  *o = (unsigned long long)((TPM2_CC_EventSequenceComplete) | 0);  /* check that TPM2_CC_EventSequenceComplete is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_EvictControl(unsigned long long *o)
{
  int n = (TPM2_CC_EvictControl) <= 0;
  *o = (unsigned long long)((TPM2_CC_EvictControl) | 0);  /* check that TPM2_CC_EvictControl is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_FIRST(unsigned long long *o)
{
  int n = (TPM2_CC_FIRST) <= 0;
  *o = (unsigned long long)((TPM2_CC_FIRST) | 0);  /* check that TPM2_CC_FIRST is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_FieldUpgradeData(unsigned long long *o)
{
  int n = (TPM2_CC_FieldUpgradeData) <= 0;
  *o = (unsigned long long)((TPM2_CC_FieldUpgradeData) | 0);  /* check that TPM2_CC_FieldUpgradeData is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_FieldUpgradeStart(unsigned long long *o)
{
  int n = (TPM2_CC_FieldUpgradeStart) <= 0;
  *o = (unsigned long long)((TPM2_CC_FieldUpgradeStart) | 0);  /* check that TPM2_CC_FieldUpgradeStart is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_FirmwareRead(unsigned long long *o)
{
  int n = (TPM2_CC_FirmwareRead) <= 0;
  *o = (unsigned long long)((TPM2_CC_FirmwareRead) | 0);  /* check that TPM2_CC_FirmwareRead is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_FlushContext(unsigned long long *o)
{
  int n = (TPM2_CC_FlushContext) <= 0;
  *o = (unsigned long long)((TPM2_CC_FlushContext) | 0);  /* check that TPM2_CC_FlushContext is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_GetCapability(unsigned long long *o)
{
  int n = (TPM2_CC_GetCapability) <= 0;
  *o = (unsigned long long)((TPM2_CC_GetCapability) | 0);  /* check that TPM2_CC_GetCapability is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_GetCommandAuditDigest(unsigned long long *o)
{
  int n = (TPM2_CC_GetCommandAuditDigest) <= 0;
  *o = (unsigned long long)((TPM2_CC_GetCommandAuditDigest) | 0);  /* check that TPM2_CC_GetCommandAuditDigest is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_GetRandom(unsigned long long *o)
{
  int n = (TPM2_CC_GetRandom) <= 0;
  *o = (unsigned long long)((TPM2_CC_GetRandom) | 0);  /* check that TPM2_CC_GetRandom is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_GetSessionAuditDigest(unsigned long long *o)
{
  int n = (TPM2_CC_GetSessionAuditDigest) <= 0;
  *o = (unsigned long long)((TPM2_CC_GetSessionAuditDigest) | 0);  /* check that TPM2_CC_GetSessionAuditDigest is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_GetTestResult(unsigned long long *o)
{
  int n = (TPM2_CC_GetTestResult) <= 0;
  *o = (unsigned long long)((TPM2_CC_GetTestResult) | 0);  /* check that TPM2_CC_GetTestResult is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_GetTime(unsigned long long *o)
{
  int n = (TPM2_CC_GetTime) <= 0;
  *o = (unsigned long long)((TPM2_CC_GetTime) | 0);  /* check that TPM2_CC_GetTime is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_HMAC(unsigned long long *o)
{
  int n = (TPM2_CC_HMAC) <= 0;
  *o = (unsigned long long)((TPM2_CC_HMAC) | 0);  /* check that TPM2_CC_HMAC is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_HMAC_Start(unsigned long long *o)
{
  int n = (TPM2_CC_HMAC_Start) <= 0;
  *o = (unsigned long long)((TPM2_CC_HMAC_Start) | 0);  /* check that TPM2_CC_HMAC_Start is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_Hash(unsigned long long *o)
{
  int n = (TPM2_CC_Hash) <= 0;
  *o = (unsigned long long)((TPM2_CC_Hash) | 0);  /* check that TPM2_CC_Hash is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_HashSequenceStart(unsigned long long *o)
{
  int n = (TPM2_CC_HashSequenceStart) <= 0;
  *o = (unsigned long long)((TPM2_CC_HashSequenceStart) | 0);  /* check that TPM2_CC_HashSequenceStart is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_HierarchyChangeAuth(unsigned long long *o)
{
  int n = (TPM2_CC_HierarchyChangeAuth) <= 0;
  *o = (unsigned long long)((TPM2_CC_HierarchyChangeAuth) | 0);  /* check that TPM2_CC_HierarchyChangeAuth is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_HierarchyControl(unsigned long long *o)
{
  int n = (TPM2_CC_HierarchyControl) <= 0;
  *o = (unsigned long long)((TPM2_CC_HierarchyControl) | 0);  /* check that TPM2_CC_HierarchyControl is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_Import(unsigned long long *o)
{
  int n = (TPM2_CC_Import) <= 0;
  *o = (unsigned long long)((TPM2_CC_Import) | 0);  /* check that TPM2_CC_Import is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_IncrementalSelfTest(unsigned long long *o)
{
  int n = (TPM2_CC_IncrementalSelfTest) <= 0;
  *o = (unsigned long long)((TPM2_CC_IncrementalSelfTest) | 0);  /* check that TPM2_CC_IncrementalSelfTest is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_LAST(unsigned long long *o)
{
  int n = (TPM2_CC_LAST) <= 0;
  *o = (unsigned long long)((TPM2_CC_LAST) | 0);  /* check that TPM2_CC_LAST is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_Load(unsigned long long *o)
{
  int n = (TPM2_CC_Load) <= 0;
  *o = (unsigned long long)((TPM2_CC_Load) | 0);  /* check that TPM2_CC_Load is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_LoadExternal(unsigned long long *o)
{
  int n = (TPM2_CC_LoadExternal) <= 0;
  *o = (unsigned long long)((TPM2_CC_LoadExternal) | 0);  /* check that TPM2_CC_LoadExternal is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_MAC(unsigned long long *o)
{
  int n = (TPM2_CC_MAC) <= 0;
  *o = (unsigned long long)((TPM2_CC_MAC) | 0);  /* check that TPM2_CC_MAC is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_MAC_Start(unsigned long long *o)
{
  int n = (TPM2_CC_MAC_Start) <= 0;
  *o = (unsigned long long)((TPM2_CC_MAC_Start) | 0);  /* check that TPM2_CC_MAC_Start is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_MakeCredential(unsigned long long *o)
{
  int n = (TPM2_CC_MakeCredential) <= 0;
  *o = (unsigned long long)((TPM2_CC_MakeCredential) | 0);  /* check that TPM2_CC_MakeCredential is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_NV_Certify(unsigned long long *o)
{
  int n = (TPM2_CC_NV_Certify) <= 0;
  *o = (unsigned long long)((TPM2_CC_NV_Certify) | 0);  /* check that TPM2_CC_NV_Certify is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_NV_ChangeAuth(unsigned long long *o)
{
  int n = (TPM2_CC_NV_ChangeAuth) <= 0;
  *o = (unsigned long long)((TPM2_CC_NV_ChangeAuth) | 0);  /* check that TPM2_CC_NV_ChangeAuth is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_NV_DefineSpace(unsigned long long *o)
{
  int n = (TPM2_CC_NV_DefineSpace) <= 0;
  *o = (unsigned long long)((TPM2_CC_NV_DefineSpace) | 0);  /* check that TPM2_CC_NV_DefineSpace is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_NV_Extend(unsigned long long *o)
{
  int n = (TPM2_CC_NV_Extend) <= 0;
  *o = (unsigned long long)((TPM2_CC_NV_Extend) | 0);  /* check that TPM2_CC_NV_Extend is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_NV_GlobalWriteLock(unsigned long long *o)
{
  int n = (TPM2_CC_NV_GlobalWriteLock) <= 0;
  *o = (unsigned long long)((TPM2_CC_NV_GlobalWriteLock) | 0);  /* check that TPM2_CC_NV_GlobalWriteLock is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_NV_Increment(unsigned long long *o)
{
  int n = (TPM2_CC_NV_Increment) <= 0;
  *o = (unsigned long long)((TPM2_CC_NV_Increment) | 0);  /* check that TPM2_CC_NV_Increment is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_NV_Read(unsigned long long *o)
{
  int n = (TPM2_CC_NV_Read) <= 0;
  *o = (unsigned long long)((TPM2_CC_NV_Read) | 0);  /* check that TPM2_CC_NV_Read is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_NV_ReadLock(unsigned long long *o)
{
  int n = (TPM2_CC_NV_ReadLock) <= 0;
  *o = (unsigned long long)((TPM2_CC_NV_ReadLock) | 0);  /* check that TPM2_CC_NV_ReadLock is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_NV_ReadPublic(unsigned long long *o)
{
  int n = (TPM2_CC_NV_ReadPublic) <= 0;
  *o = (unsigned long long)((TPM2_CC_NV_ReadPublic) | 0);  /* check that TPM2_CC_NV_ReadPublic is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_NV_SetBits(unsigned long long *o)
{
  int n = (TPM2_CC_NV_SetBits) <= 0;
  *o = (unsigned long long)((TPM2_CC_NV_SetBits) | 0);  /* check that TPM2_CC_NV_SetBits is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_NV_UndefineSpace(unsigned long long *o)
{
  int n = (TPM2_CC_NV_UndefineSpace) <= 0;
  *o = (unsigned long long)((TPM2_CC_NV_UndefineSpace) | 0);  /* check that TPM2_CC_NV_UndefineSpace is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_NV_UndefineSpaceSpecial(unsigned long long *o)
{
  int n = (TPM2_CC_NV_UndefineSpaceSpecial) <= 0;
  *o = (unsigned long long)((TPM2_CC_NV_UndefineSpaceSpecial) | 0);  /* check that TPM2_CC_NV_UndefineSpaceSpecial is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_NV_Write(unsigned long long *o)
{
  int n = (TPM2_CC_NV_Write) <= 0;
  *o = (unsigned long long)((TPM2_CC_NV_Write) | 0);  /* check that TPM2_CC_NV_Write is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_NV_WriteLock(unsigned long long *o)
{
  int n = (TPM2_CC_NV_WriteLock) <= 0;
  *o = (unsigned long long)((TPM2_CC_NV_WriteLock) | 0);  /* check that TPM2_CC_NV_WriteLock is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_ObjectChangeAuth(unsigned long long *o)
{
  int n = (TPM2_CC_ObjectChangeAuth) <= 0;
  *o = (unsigned long long)((TPM2_CC_ObjectChangeAuth) | 0);  /* check that TPM2_CC_ObjectChangeAuth is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PCR_Allocate(unsigned long long *o)
{
  int n = (TPM2_CC_PCR_Allocate) <= 0;
  *o = (unsigned long long)((TPM2_CC_PCR_Allocate) | 0);  /* check that TPM2_CC_PCR_Allocate is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PCR_Event(unsigned long long *o)
{
  int n = (TPM2_CC_PCR_Event) <= 0;
  *o = (unsigned long long)((TPM2_CC_PCR_Event) | 0);  /* check that TPM2_CC_PCR_Event is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PCR_Extend(unsigned long long *o)
{
  int n = (TPM2_CC_PCR_Extend) <= 0;
  *o = (unsigned long long)((TPM2_CC_PCR_Extend) | 0);  /* check that TPM2_CC_PCR_Extend is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PCR_Read(unsigned long long *o)
{
  int n = (TPM2_CC_PCR_Read) <= 0;
  *o = (unsigned long long)((TPM2_CC_PCR_Read) | 0);  /* check that TPM2_CC_PCR_Read is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PCR_Reset(unsigned long long *o)
{
  int n = (TPM2_CC_PCR_Reset) <= 0;
  *o = (unsigned long long)((TPM2_CC_PCR_Reset) | 0);  /* check that TPM2_CC_PCR_Reset is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PCR_SetAuthPolicy(unsigned long long *o)
{
  int n = (TPM2_CC_PCR_SetAuthPolicy) <= 0;
  *o = (unsigned long long)((TPM2_CC_PCR_SetAuthPolicy) | 0);  /* check that TPM2_CC_PCR_SetAuthPolicy is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PCR_SetAuthValue(unsigned long long *o)
{
  int n = (TPM2_CC_PCR_SetAuthValue) <= 0;
  *o = (unsigned long long)((TPM2_CC_PCR_SetAuthValue) | 0);  /* check that TPM2_CC_PCR_SetAuthValue is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PP_Commands(unsigned long long *o)
{
  int n = (TPM2_CC_PP_Commands) <= 0;
  *o = (unsigned long long)((TPM2_CC_PP_Commands) | 0);  /* check that TPM2_CC_PP_Commands is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyAuthValue(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyAuthValue) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyAuthValue) | 0);  /* check that TPM2_CC_PolicyAuthValue is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyAuthorize(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyAuthorize) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyAuthorize) | 0);  /* check that TPM2_CC_PolicyAuthorize is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyAuthorizeNV(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyAuthorizeNV) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyAuthorizeNV) | 0);  /* check that TPM2_CC_PolicyAuthorizeNV is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyCommandCode(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyCommandCode) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyCommandCode) | 0);  /* check that TPM2_CC_PolicyCommandCode is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyCounterTimer(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyCounterTimer) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyCounterTimer) | 0);  /* check that TPM2_CC_PolicyCounterTimer is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyCpHash(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyCpHash) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyCpHash) | 0);  /* check that TPM2_CC_PolicyCpHash is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyDuplicationSelect(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyDuplicationSelect) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyDuplicationSelect) | 0);  /* check that TPM2_CC_PolicyDuplicationSelect is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyGetDigest(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyGetDigest) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyGetDigest) | 0);  /* check that TPM2_CC_PolicyGetDigest is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyLocality(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyLocality) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyLocality) | 0);  /* check that TPM2_CC_PolicyLocality is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyNV(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyNV) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyNV) | 0);  /* check that TPM2_CC_PolicyNV is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyNameHash(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyNameHash) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyNameHash) | 0);  /* check that TPM2_CC_PolicyNameHash is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyNvWritten(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyNvWritten) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyNvWritten) | 0);  /* check that TPM2_CC_PolicyNvWritten is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyOR(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyOR) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyOR) | 0);  /* check that TPM2_CC_PolicyOR is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyPCR(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyPCR) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyPCR) | 0);  /* check that TPM2_CC_PolicyPCR is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyPassword(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyPassword) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyPassword) | 0);  /* check that TPM2_CC_PolicyPassword is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyPhysicalPresence(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyPhysicalPresence) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyPhysicalPresence) | 0);  /* check that TPM2_CC_PolicyPhysicalPresence is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyRestart(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyRestart) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyRestart) | 0);  /* check that TPM2_CC_PolicyRestart is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicySecret(unsigned long long *o)
{
  int n = (TPM2_CC_PolicySecret) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicySecret) | 0);  /* check that TPM2_CC_PolicySecret is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicySigned(unsigned long long *o)
{
  int n = (TPM2_CC_PolicySigned) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicySigned) | 0);  /* check that TPM2_CC_PolicySigned is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyTemplate(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyTemplate) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyTemplate) | 0);  /* check that TPM2_CC_PolicyTemplate is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_PolicyTicket(unsigned long long *o)
{
  int n = (TPM2_CC_PolicyTicket) <= 0;
  *o = (unsigned long long)((TPM2_CC_PolicyTicket) | 0);  /* check that TPM2_CC_PolicyTicket is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_Policy_AC_SendSelect(unsigned long long *o)
{
  int n = (TPM2_CC_Policy_AC_SendSelect) <= 0;
  *o = (unsigned long long)((TPM2_CC_Policy_AC_SendSelect) | 0);  /* check that TPM2_CC_Policy_AC_SendSelect is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_Quote(unsigned long long *o)
{
  int n = (TPM2_CC_Quote) <= 0;
  *o = (unsigned long long)((TPM2_CC_Quote) | 0);  /* check that TPM2_CC_Quote is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_RSA_Decrypt(unsigned long long *o)
{
  int n = (TPM2_CC_RSA_Decrypt) <= 0;
  *o = (unsigned long long)((TPM2_CC_RSA_Decrypt) | 0);  /* check that TPM2_CC_RSA_Decrypt is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_RSA_Encrypt(unsigned long long *o)
{
  int n = (TPM2_CC_RSA_Encrypt) <= 0;
  *o = (unsigned long long)((TPM2_CC_RSA_Encrypt) | 0);  /* check that TPM2_CC_RSA_Encrypt is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_ReadClock(unsigned long long *o)
{
  int n = (TPM2_CC_ReadClock) <= 0;
  *o = (unsigned long long)((TPM2_CC_ReadClock) | 0);  /* check that TPM2_CC_ReadClock is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_ReadPublic(unsigned long long *o)
{
  int n = (TPM2_CC_ReadPublic) <= 0;
  *o = (unsigned long long)((TPM2_CC_ReadPublic) | 0);  /* check that TPM2_CC_ReadPublic is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_Rewrap(unsigned long long *o)
{
  int n = (TPM2_CC_Rewrap) <= 0;
  *o = (unsigned long long)((TPM2_CC_Rewrap) | 0);  /* check that TPM2_CC_Rewrap is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_SelfTest(unsigned long long *o)
{
  int n = (TPM2_CC_SelfTest) <= 0;
  *o = (unsigned long long)((TPM2_CC_SelfTest) | 0);  /* check that TPM2_CC_SelfTest is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_SequenceComplete(unsigned long long *o)
{
  int n = (TPM2_CC_SequenceComplete) <= 0;
  *o = (unsigned long long)((TPM2_CC_SequenceComplete) | 0);  /* check that TPM2_CC_SequenceComplete is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_SequenceUpdate(unsigned long long *o)
{
  int n = (TPM2_CC_SequenceUpdate) <= 0;
  *o = (unsigned long long)((TPM2_CC_SequenceUpdate) | 0);  /* check that TPM2_CC_SequenceUpdate is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_SetAlgorithmSet(unsigned long long *o)
{
  int n = (TPM2_CC_SetAlgorithmSet) <= 0;
  *o = (unsigned long long)((TPM2_CC_SetAlgorithmSet) | 0);  /* check that TPM2_CC_SetAlgorithmSet is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_SetCommandCodeAuditStatus(unsigned long long *o)
{
  int n = (TPM2_CC_SetCommandCodeAuditStatus) <= 0;
  *o = (unsigned long long)((TPM2_CC_SetCommandCodeAuditStatus) | 0);  /* check that TPM2_CC_SetCommandCodeAuditStatus is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_SetPrimaryPolicy(unsigned long long *o)
{
  int n = (TPM2_CC_SetPrimaryPolicy) <= 0;
  *o = (unsigned long long)((TPM2_CC_SetPrimaryPolicy) | 0);  /* check that TPM2_CC_SetPrimaryPolicy is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_Shutdown(unsigned long long *o)
{
  int n = (TPM2_CC_Shutdown) <= 0;
  *o = (unsigned long long)((TPM2_CC_Shutdown) | 0);  /* check that TPM2_CC_Shutdown is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_Sign(unsigned long long *o)
{
  int n = (TPM2_CC_Sign) <= 0;
  *o = (unsigned long long)((TPM2_CC_Sign) | 0);  /* check that TPM2_CC_Sign is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_StartAuthSession(unsigned long long *o)
{
  int n = (TPM2_CC_StartAuthSession) <= 0;
  *o = (unsigned long long)((TPM2_CC_StartAuthSession) | 0);  /* check that TPM2_CC_StartAuthSession is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_Startup(unsigned long long *o)
{
  int n = (TPM2_CC_Startup) <= 0;
  *o = (unsigned long long)((TPM2_CC_Startup) | 0);  /* check that TPM2_CC_Startup is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_StirRandom(unsigned long long *o)
{
  int n = (TPM2_CC_StirRandom) <= 0;
  *o = (unsigned long long)((TPM2_CC_StirRandom) | 0);  /* check that TPM2_CC_StirRandom is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_TestParms(unsigned long long *o)
{
  int n = (TPM2_CC_TestParms) <= 0;
  *o = (unsigned long long)((TPM2_CC_TestParms) | 0);  /* check that TPM2_CC_TestParms is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_Unseal(unsigned long long *o)
{
  int n = (TPM2_CC_Unseal) <= 0;
  *o = (unsigned long long)((TPM2_CC_Unseal) | 0);  /* check that TPM2_CC_Unseal is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_Vendor_TCG_Test(unsigned long long *o)
{
  int n = (TPM2_CC_Vendor_TCG_Test) <= 0;
  *o = (unsigned long long)((TPM2_CC_Vendor_TCG_Test) | 0);  /* check that TPM2_CC_Vendor_TCG_Test is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_VerifySignature(unsigned long long *o)
{
  int n = (TPM2_CC_VerifySignature) <= 0;
  *o = (unsigned long long)((TPM2_CC_VerifySignature) | 0);  /* check that TPM2_CC_VerifySignature is an integer */
  return n;
}

static int _cffi_const_TPM2_CC_ZGen_2Phase(unsigned long long *o)
{
  int n = (TPM2_CC_ZGen_2Phase) <= 0;
  *o = (unsigned long long)((TPM2_CC_ZGen_2Phase) | 0);  /* check that TPM2_CC_ZGen_2Phase is an integer */
  return n;
}

static int _cffi_const_TPM2_CLOCK_COARSE_FASTER(unsigned long long *o)
{
  int n = (TPM2_CLOCK_COARSE_FASTER) <= 0;
  *o = (unsigned long long)((TPM2_CLOCK_COARSE_FASTER) | 0);  /* check that TPM2_CLOCK_COARSE_FASTER is an integer */
  return n;
}

static int _cffi_const_TPM2_CLOCK_COARSE_SLOWER(unsigned long long *o)
{
  int n = (TPM2_CLOCK_COARSE_SLOWER) <= 0;
  *o = (unsigned long long)((TPM2_CLOCK_COARSE_SLOWER) | 0);  /* check that TPM2_CLOCK_COARSE_SLOWER is an integer */
  return n;
}

static int _cffi_const_TPM2_CLOCK_FINE_FASTER(unsigned long long *o)
{
  int n = (TPM2_CLOCK_FINE_FASTER) <= 0;
  *o = (unsigned long long)((TPM2_CLOCK_FINE_FASTER) | 0);  /* check that TPM2_CLOCK_FINE_FASTER is an integer */
  return n;
}

static int _cffi_const_TPM2_CLOCK_FINE_SLOWER(unsigned long long *o)
{
  int n = (TPM2_CLOCK_FINE_SLOWER) <= 0;
  *o = (unsigned long long)((TPM2_CLOCK_FINE_SLOWER) | 0);  /* check that TPM2_CLOCK_FINE_SLOWER is an integer */
  return n;
}

static int _cffi_const_TPM2_CLOCK_MEDIUM_FASTER(unsigned long long *o)
{
  int n = (TPM2_CLOCK_MEDIUM_FASTER) <= 0;
  *o = (unsigned long long)((TPM2_CLOCK_MEDIUM_FASTER) | 0);  /* check that TPM2_CLOCK_MEDIUM_FASTER is an integer */
  return n;
}

static int _cffi_const_TPM2_CLOCK_MEDIUM_SLOWER(unsigned long long *o)
{
  int n = (TPM2_CLOCK_MEDIUM_SLOWER) <= 0;
  *o = (unsigned long long)((TPM2_CLOCK_MEDIUM_SLOWER) | 0);  /* check that TPM2_CLOCK_MEDIUM_SLOWER is an integer */
  return n;
}

static int _cffi_const_TPM2_CLOCK_NO_CHANGE(unsigned long long *o)
{
  int n = (TPM2_CLOCK_NO_CHANGE) <= 0;
  *o = (unsigned long long)((TPM2_CLOCK_NO_CHANGE) | 0);  /* check that TPM2_CLOCK_NO_CHANGE is an integer */
  return n;
}

static int _cffi_const_TPM2_ECC_BN_P256(unsigned long long *o)
{
  int n = (TPM2_ECC_BN_P256) <= 0;
  *o = (unsigned long long)((TPM2_ECC_BN_P256) | 0);  /* check that TPM2_ECC_BN_P256 is an integer */
  return n;
}

static int _cffi_const_TPM2_ECC_BN_P638(unsigned long long *o)
{
  int n = (TPM2_ECC_BN_P638) <= 0;
  *o = (unsigned long long)((TPM2_ECC_BN_P638) | 0);  /* check that TPM2_ECC_BN_P638 is an integer */
  return n;
}

static int _cffi_const_TPM2_ECC_NIST_P192(unsigned long long *o)
{
  int n = (TPM2_ECC_NIST_P192) <= 0;
  *o = (unsigned long long)((TPM2_ECC_NIST_P192) | 0);  /* check that TPM2_ECC_NIST_P192 is an integer */
  return n;
}

static int _cffi_const_TPM2_ECC_NIST_P224(unsigned long long *o)
{
  int n = (TPM2_ECC_NIST_P224) <= 0;
  *o = (unsigned long long)((TPM2_ECC_NIST_P224) | 0);  /* check that TPM2_ECC_NIST_P224 is an integer */
  return n;
}

static int _cffi_const_TPM2_ECC_NIST_P256(unsigned long long *o)
{
  int n = (TPM2_ECC_NIST_P256) <= 0;
  *o = (unsigned long long)((TPM2_ECC_NIST_P256) | 0);  /* check that TPM2_ECC_NIST_P256 is an integer */
  return n;
}

static int _cffi_const_TPM2_ECC_NIST_P384(unsigned long long *o)
{
  int n = (TPM2_ECC_NIST_P384) <= 0;
  *o = (unsigned long long)((TPM2_ECC_NIST_P384) | 0);  /* check that TPM2_ECC_NIST_P384 is an integer */
  return n;
}

static int _cffi_const_TPM2_ECC_NIST_P521(unsigned long long *o)
{
  int n = (TPM2_ECC_NIST_P521) <= 0;
  *o = (unsigned long long)((TPM2_ECC_NIST_P521) | 0);  /* check that TPM2_ECC_NIST_P521 is an integer */
  return n;
}

static int _cffi_const_TPM2_ECC_NONE(unsigned long long *o)
{
  int n = (TPM2_ECC_NONE) <= 0;
  *o = (unsigned long long)((TPM2_ECC_NONE) | 0);  /* check that TPM2_ECC_NONE is an integer */
  return n;
}

static int _cffi_const_TPM2_ECC_SM2_P256(unsigned long long *o)
{
  int n = (TPM2_ECC_SM2_P256) <= 0;
  *o = (unsigned long long)((TPM2_ECC_SM2_P256) | 0);  /* check that TPM2_ECC_SM2_P256 is an integer */
  return n;
}

static int _cffi_const_TPM2_EO_BITCLEAR(unsigned long long *o)
{
  int n = (TPM2_EO_BITCLEAR) <= 0;
  *o = (unsigned long long)((TPM2_EO_BITCLEAR) | 0);  /* check that TPM2_EO_BITCLEAR is an integer */
  return n;
}

static int _cffi_const_TPM2_EO_BITSET(unsigned long long *o)
{
  int n = (TPM2_EO_BITSET) <= 0;
  *o = (unsigned long long)((TPM2_EO_BITSET) | 0);  /* check that TPM2_EO_BITSET is an integer */
  return n;
}

static int _cffi_const_TPM2_EO_EQ(unsigned long long *o)
{
  int n = (TPM2_EO_EQ) <= 0;
  *o = (unsigned long long)((TPM2_EO_EQ) | 0);  /* check that TPM2_EO_EQ is an integer */
  return n;
}

static int _cffi_const_TPM2_EO_NEQ(unsigned long long *o)
{
  int n = (TPM2_EO_NEQ) <= 0;
  *o = (unsigned long long)((TPM2_EO_NEQ) | 0);  /* check that TPM2_EO_NEQ is an integer */
  return n;
}

static int _cffi_const_TPM2_EO_SIGNED_GE(unsigned long long *o)
{
  int n = (TPM2_EO_SIGNED_GE) <= 0;
  *o = (unsigned long long)((TPM2_EO_SIGNED_GE) | 0);  /* check that TPM2_EO_SIGNED_GE is an integer */
  return n;
}

static int _cffi_const_TPM2_EO_SIGNED_GT(unsigned long long *o)
{
  int n = (TPM2_EO_SIGNED_GT) <= 0;
  *o = (unsigned long long)((TPM2_EO_SIGNED_GT) | 0);  /* check that TPM2_EO_SIGNED_GT is an integer */
  return n;
}

static int _cffi_const_TPM2_EO_SIGNED_LE(unsigned long long *o)
{
  int n = (TPM2_EO_SIGNED_LE) <= 0;
  *o = (unsigned long long)((TPM2_EO_SIGNED_LE) | 0);  /* check that TPM2_EO_SIGNED_LE is an integer */
  return n;
}

static int _cffi_const_TPM2_EO_SIGNED_LT(unsigned long long *o)
{
  int n = (TPM2_EO_SIGNED_LT) <= 0;
  *o = (unsigned long long)((TPM2_EO_SIGNED_LT) | 0);  /* check that TPM2_EO_SIGNED_LT is an integer */
  return n;
}

static int _cffi_const_TPM2_EO_UNSIGNED_GE(unsigned long long *o)
{
  int n = (TPM2_EO_UNSIGNED_GE) <= 0;
  *o = (unsigned long long)((TPM2_EO_UNSIGNED_GE) | 0);  /* check that TPM2_EO_UNSIGNED_GE is an integer */
  return n;
}

static int _cffi_const_TPM2_EO_UNSIGNED_GT(unsigned long long *o)
{
  int n = (TPM2_EO_UNSIGNED_GT) <= 0;
  *o = (unsigned long long)((TPM2_EO_UNSIGNED_GT) | 0);  /* check that TPM2_EO_UNSIGNED_GT is an integer */
  return n;
}

static int _cffi_const_TPM2_EO_UNSIGNED_LE(unsigned long long *o)
{
  int n = (TPM2_EO_UNSIGNED_LE) <= 0;
  *o = (unsigned long long)((TPM2_EO_UNSIGNED_LE) | 0);  /* check that TPM2_EO_UNSIGNED_LE is an integer */
  return n;
}

static int _cffi_const_TPM2_EO_UNSIGNED_LT(unsigned long long *o)
{
  int n = (TPM2_EO_UNSIGNED_LT) <= 0;
  *o = (unsigned long long)((TPM2_EO_UNSIGNED_LT) | 0);  /* check that TPM2_EO_UNSIGNED_LT is an integer */
  return n;
}

static int _cffi_const_TPM2_GENERATED_VALUE(unsigned long long *o)
{
  int n = (TPM2_GENERATED_VALUE) <= 0;
  *o = (unsigned long long)((TPM2_GENERATED_VALUE) | 0);  /* check that TPM2_GENERATED_VALUE is an integer */
  return n;
}

static int _cffi_const_TPM2_HMAC_SESSION_FIRST(unsigned long long *o)
{
  int n = (TPM2_HMAC_SESSION_FIRST) <= 0;
  *o = (unsigned long long)((TPM2_HMAC_SESSION_FIRST) | 0);  /* check that TPM2_HMAC_SESSION_FIRST is an integer */
  return n;
}

static int _cffi_const_TPM2_HMAC_SESSION_LAST(unsigned long long *o)
{
  int n = (TPM2_HMAC_SESSION_LAST) <= 0;
  *o = (unsigned long long)((TPM2_HMAC_SESSION_LAST) | 0);  /* check that TPM2_HMAC_SESSION_LAST is an integer */
  return n;
}

static int _cffi_const_TPM2_HR_HANDLE_MASK(unsigned long long *o)
{
  int n = (TPM2_HR_HANDLE_MASK) <= 0;
  *o = (unsigned long long)((TPM2_HR_HANDLE_MASK) | 0);  /* check that TPM2_HR_HANDLE_MASK is an integer */
  return n;
}

static int _cffi_const_TPM2_HR_HMAC_SESSION(unsigned long long *o)
{
  int n = (TPM2_HR_HMAC_SESSION) <= 0;
  *o = (unsigned long long)((TPM2_HR_HMAC_SESSION) | 0);  /* check that TPM2_HR_HMAC_SESSION is an integer */
  return n;
}

static int _cffi_const_TPM2_HR_NV_AC(unsigned long long *o)
{
  int n = (TPM2_HR_NV_AC) <= 0;
  *o = (unsigned long long)((TPM2_HR_NV_AC) | 0);  /* check that TPM2_HR_NV_AC is an integer */
  return n;
}

static int _cffi_const_TPM2_HR_NV_INDEX(unsigned long long *o)
{
  int n = (TPM2_HR_NV_INDEX) <= 0;
  *o = (unsigned long long)((TPM2_HR_NV_INDEX) | 0);  /* check that TPM2_HR_NV_INDEX is an integer */
  return n;
}

static int _cffi_const_TPM2_HR_PCR(unsigned long long *o)
{
  int n = (TPM2_HR_PCR) <= 0;
  *o = (unsigned long long)((TPM2_HR_PCR) | 0);  /* check that TPM2_HR_PCR is an integer */
  return n;
}

static int _cffi_const_TPM2_HR_PERMANENT(unsigned long long *o)
{
  int n = (TPM2_HR_PERMANENT) <= 0;
  *o = (unsigned long long)((TPM2_HR_PERMANENT) | 0);  /* check that TPM2_HR_PERMANENT is an integer */
  return n;
}

static int _cffi_const_TPM2_HR_PERSISTENT(unsigned long long *o)
{
  int n = (TPM2_HR_PERSISTENT) <= 0;
  *o = (unsigned long long)((TPM2_HR_PERSISTENT) | 0);  /* check that TPM2_HR_PERSISTENT is an integer */
  return n;
}

static int _cffi_const_TPM2_HR_POLICY_SESSION(unsigned long long *o)
{
  int n = (TPM2_HR_POLICY_SESSION) <= 0;
  *o = (unsigned long long)((TPM2_HR_POLICY_SESSION) | 0);  /* check that TPM2_HR_POLICY_SESSION is an integer */
  return n;
}

static int _cffi_const_TPM2_HR_RANGE_MASK(unsigned long long *o)
{
  int n = (TPM2_HR_RANGE_MASK) <= 0;
  *o = (unsigned long long)((TPM2_HR_RANGE_MASK) | 0);  /* check that TPM2_HR_RANGE_MASK is an integer */
  return n;
}

static int _cffi_const_TPM2_HR_SHIFT(unsigned long long *o)
{
  int n = (TPM2_HR_SHIFT) <= 0;
  *o = (unsigned long long)((TPM2_HR_SHIFT) | 0);  /* check that TPM2_HR_SHIFT is an integer */
  return n;
}

static int _cffi_const_TPM2_HR_TRANSIENT(unsigned long long *o)
{
  int n = (TPM2_HR_TRANSIENT) <= 0;
  *o = (unsigned long long)((TPM2_HR_TRANSIENT) | 0);  /* check that TPM2_HR_TRANSIENT is an integer */
  return n;
}

static int _cffi_const_TPM2_HT_HMAC_SESSION(unsigned long long *o)
{
  int n = (TPM2_HT_HMAC_SESSION) <= 0;
  *o = (unsigned long long)((TPM2_HT_HMAC_SESSION) | 0);  /* check that TPM2_HT_HMAC_SESSION is an integer */
  return n;
}

static int _cffi_const_TPM2_HT_LOADED_SESSION(unsigned long long *o)
{
  int n = (TPM2_HT_LOADED_SESSION) <= 0;
  *o = (unsigned long long)((TPM2_HT_LOADED_SESSION) | 0);  /* check that TPM2_HT_LOADED_SESSION is an integer */
  return n;
}

static int _cffi_const_TPM2_HT_NV_INDEX(unsigned long long *o)
{
  int n = (TPM2_HT_NV_INDEX) <= 0;
  *o = (unsigned long long)((TPM2_HT_NV_INDEX) | 0);  /* check that TPM2_HT_NV_INDEX is an integer */
  return n;
}

static int _cffi_const_TPM2_HT_PCR(unsigned long long *o)
{
  int n = (TPM2_HT_PCR) <= 0;
  *o = (unsigned long long)((TPM2_HT_PCR) | 0);  /* check that TPM2_HT_PCR is an integer */
  return n;
}

static int _cffi_const_TPM2_HT_PERMANENT(unsigned long long *o)
{
  int n = (TPM2_HT_PERMANENT) <= 0;
  *o = (unsigned long long)((TPM2_HT_PERMANENT) | 0);  /* check that TPM2_HT_PERMANENT is an integer */
  return n;
}

static int _cffi_const_TPM2_HT_PERSISTENT(unsigned long long *o)
{
  int n = (TPM2_HT_PERSISTENT) <= 0;
  *o = (unsigned long long)((TPM2_HT_PERSISTENT) | 0);  /* check that TPM2_HT_PERSISTENT is an integer */
  return n;
}

static int _cffi_const_TPM2_HT_POLICY_SESSION(unsigned long long *o)
{
  int n = (TPM2_HT_POLICY_SESSION) <= 0;
  *o = (unsigned long long)((TPM2_HT_POLICY_SESSION) | 0);  /* check that TPM2_HT_POLICY_SESSION is an integer */
  return n;
}

static int _cffi_const_TPM2_HT_SAVED_SESSION(unsigned long long *o)
{
  int n = (TPM2_HT_SAVED_SESSION) <= 0;
  *o = (unsigned long long)((TPM2_HT_SAVED_SESSION) | 0);  /* check that TPM2_HT_SAVED_SESSION is an integer */
  return n;
}

static int _cffi_const_TPM2_HT_TRANSIENT(unsigned long long *o)
{
  int n = (TPM2_HT_TRANSIENT) <= 0;
  *o = (unsigned long long)((TPM2_HT_TRANSIENT) | 0);  /* check that TPM2_HT_TRANSIENT is an integer */
  return n;
}

static int _cffi_const_TPM2_LABEL_MAX_BUFFER(unsigned long long *o)
{
  int n = (TPM2_LABEL_MAX_BUFFER) <= 0;
  *o = (unsigned long long)((TPM2_LABEL_MAX_BUFFER) | 0);  /* check that TPM2_LABEL_MAX_BUFFER is an integer */
  return n;
}

static int _cffi_const_TPM2_LOADED_SESSION_FIRST(unsigned long long *o)
{
  int n = (TPM2_LOADED_SESSION_FIRST) <= 0;
  *o = (unsigned long long)((TPM2_LOADED_SESSION_FIRST) | 0);  /* check that TPM2_LOADED_SESSION_FIRST is an integer */
  return n;
}

static int _cffi_const_TPM2_LOADED_SESSION_LAST(unsigned long long *o)
{
  int n = (TPM2_LOADED_SESSION_LAST) <= 0;
  *o = (unsigned long long)((TPM2_LOADED_SESSION_LAST) | 0);  /* check that TPM2_LOADED_SESSION_LAST is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_ACT_DATA(unsigned long long *o)
{
  int n = (TPM2_MAX_ACT_DATA) <= 0;
  *o = (unsigned long long)((TPM2_MAX_ACT_DATA) | 0);  /* check that TPM2_MAX_ACT_DATA is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_AC_CAPABILITIES(unsigned long long *o)
{
  int n = (TPM2_MAX_AC_CAPABILITIES) <= 0;
  *o = (unsigned long long)((TPM2_MAX_AC_CAPABILITIES) | 0);  /* check that TPM2_MAX_AC_CAPABILITIES is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_ALG_LIST_SIZE(unsigned long long *o)
{
  int n = (TPM2_MAX_ALG_LIST_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_MAX_ALG_LIST_SIZE) | 0);  /* check that TPM2_MAX_ALG_LIST_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_CAP_ALGS(unsigned long long *o)
{
  int n = (TPM2_MAX_CAP_ALGS) <= 0;
  *o = (unsigned long long)((TPM2_MAX_CAP_ALGS) | 0);  /* check that TPM2_MAX_CAP_ALGS is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_CAP_BUFFER(unsigned long long *o)
{
  int n = (TPM2_MAX_CAP_BUFFER) <= 0;
  *o = (unsigned long long)((TPM2_MAX_CAP_BUFFER) | 0);  /* check that TPM2_MAX_CAP_BUFFER is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_CAP_CC(unsigned long long *o)
{
  int n = (TPM2_MAX_CAP_CC) <= 0;
  *o = (unsigned long long)((TPM2_MAX_CAP_CC) | 0);  /* check that TPM2_MAX_CAP_CC is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_CAP_HANDLES(unsigned long long *o)
{
  int n = (TPM2_MAX_CAP_HANDLES) <= 0;
  *o = (unsigned long long)((TPM2_MAX_CAP_HANDLES) | 0);  /* check that TPM2_MAX_CAP_HANDLES is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_COMMAND_SIZE(unsigned long long *o)
{
  int n = (TPM2_MAX_COMMAND_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_MAX_COMMAND_SIZE) | 0);  /* check that TPM2_MAX_COMMAND_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_CONTEXT_SIZE(unsigned long long *o)
{
  int n = (TPM2_MAX_CONTEXT_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_MAX_CONTEXT_SIZE) | 0);  /* check that TPM2_MAX_CONTEXT_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_DIGEST_BUFFER(unsigned long long *o)
{
  int n = (TPM2_MAX_DIGEST_BUFFER) <= 0;
  *o = (unsigned long long)((TPM2_MAX_DIGEST_BUFFER) | 0);  /* check that TPM2_MAX_DIGEST_BUFFER is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_ECC_CURVES(unsigned long long *o)
{
  int n = (TPM2_MAX_ECC_CURVES) <= 0;
  *o = (unsigned long long)((TPM2_MAX_ECC_CURVES) | 0);  /* check that TPM2_MAX_ECC_CURVES is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_ECC_KEY_BYTES(unsigned long long *o)
{
  int n = (TPM2_MAX_ECC_KEY_BYTES) <= 0;
  *o = (unsigned long long)((TPM2_MAX_ECC_KEY_BYTES) | 0);  /* check that TPM2_MAX_ECC_KEY_BYTES is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_NV_BUFFER_SIZE(unsigned long long *o)
{
  int n = (TPM2_MAX_NV_BUFFER_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_MAX_NV_BUFFER_SIZE) | 0);  /* check that TPM2_MAX_NV_BUFFER_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_PCRS(unsigned long long *o)
{
  int n = (TPM2_MAX_PCRS) <= 0;
  *o = (unsigned long long)((TPM2_MAX_PCRS) | 0);  /* check that TPM2_MAX_PCRS is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_PCR_PROPERTIES(unsigned long long *o)
{
  int n = (TPM2_MAX_PCR_PROPERTIES) <= 0;
  *o = (unsigned long long)((TPM2_MAX_PCR_PROPERTIES) | 0);  /* check that TPM2_MAX_PCR_PROPERTIES is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_PTT_PROPERTIES(unsigned long long *o)
{
  int n = (TPM2_MAX_PTT_PROPERTIES) <= 0;
  *o = (unsigned long long)((TPM2_MAX_PTT_PROPERTIES) | 0);  /* check that TPM2_MAX_PTT_PROPERTIES is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_RESPONSE_SIZE(unsigned long long *o)
{
  int n = (TPM2_MAX_RESPONSE_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_MAX_RESPONSE_SIZE) | 0);  /* check that TPM2_MAX_RESPONSE_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_RSA_KEY_BYTES(unsigned long long *o)
{
  int n = (TPM2_MAX_RSA_KEY_BYTES) <= 0;
  *o = (unsigned long long)((TPM2_MAX_RSA_KEY_BYTES) | 0);  /* check that TPM2_MAX_RSA_KEY_BYTES is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_SYM_BLOCK_SIZE(unsigned long long *o)
{
  int n = (TPM2_MAX_SYM_BLOCK_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_MAX_SYM_BLOCK_SIZE) | 0);  /* check that TPM2_MAX_SYM_BLOCK_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_SYM_DATA(unsigned long long *o)
{
  int n = (TPM2_MAX_SYM_DATA) <= 0;
  *o = (unsigned long long)((TPM2_MAX_SYM_DATA) | 0);  /* check that TPM2_MAX_SYM_DATA is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_SYM_KEY_BYTES(unsigned long long *o)
{
  int n = (TPM2_MAX_SYM_KEY_BYTES) <= 0;
  *o = (unsigned long long)((TPM2_MAX_SYM_KEY_BYTES) | 0);  /* check that TPM2_MAX_SYM_KEY_BYTES is an integer */
  return n;
}

static int _cffi_const_TPM2_MAX_TPM_PROPERTIES(unsigned long long *o)
{
  int n = (TPM2_MAX_TPM_PROPERTIES) <= 0;
  *o = (unsigned long long)((TPM2_MAX_TPM_PROPERTIES) | 0);  /* check that TPM2_MAX_TPM_PROPERTIES is an integer */
  return n;
}

static int _cffi_const_TPM2_NO(unsigned long long *o)
{
  int n = (TPM2_NO) <= 0;
  *o = (unsigned long long)((TPM2_NO) | 0);  /* check that TPM2_NO is an integer */
  return n;
}

static int _cffi_const_TPM2_NT_BITS(unsigned long long *o)
{
  int n = (TPM2_NT_BITS) <= 0;
  *o = (unsigned long long)((TPM2_NT_BITS) | 0);  /* check that TPM2_NT_BITS is an integer */
  return n;
}

static int _cffi_const_TPM2_NT_COUNTER(unsigned long long *o)
{
  int n = (TPM2_NT_COUNTER) <= 0;
  *o = (unsigned long long)((TPM2_NT_COUNTER) | 0);  /* check that TPM2_NT_COUNTER is an integer */
  return n;
}

static int _cffi_const_TPM2_NT_EXTEND(unsigned long long *o)
{
  int n = (TPM2_NT_EXTEND) <= 0;
  *o = (unsigned long long)((TPM2_NT_EXTEND) | 0);  /* check that TPM2_NT_EXTEND is an integer */
  return n;
}

static int _cffi_const_TPM2_NT_ORDINARY(unsigned long long *o)
{
  int n = (TPM2_NT_ORDINARY) <= 0;
  *o = (unsigned long long)((TPM2_NT_ORDINARY) | 0);  /* check that TPM2_NT_ORDINARY is an integer */
  return n;
}

static int _cffi_const_TPM2_NT_PIN_FAIL(unsigned long long *o)
{
  int n = (TPM2_NT_PIN_FAIL) <= 0;
  *o = (unsigned long long)((TPM2_NT_PIN_FAIL) | 0);  /* check that TPM2_NT_PIN_FAIL is an integer */
  return n;
}

static int _cffi_const_TPM2_NT_PIN_PASS(unsigned long long *o)
{
  int n = (TPM2_NT_PIN_PASS) <= 0;
  *o = (unsigned long long)((TPM2_NT_PIN_PASS) | 0);  /* check that TPM2_NT_PIN_PASS is an integer */
  return n;
}

static int _cffi_const_TPM2_NUM_PCR_BANKS(unsigned long long *o)
{
  int n = (TPM2_NUM_PCR_BANKS) <= 0;
  *o = (unsigned long long)((TPM2_NUM_PCR_BANKS) | 0);  /* check that TPM2_NUM_PCR_BANKS is an integer */
  return n;
}

static int _cffi_const_TPM2_NV_AC_FIRST(unsigned long long *o)
{
  int n = (TPM2_NV_AC_FIRST) <= 0;
  *o = (unsigned long long)((TPM2_NV_AC_FIRST) | 0);  /* check that TPM2_NV_AC_FIRST is an integer */
  return n;
}

static int _cffi_const_TPM2_NV_AC_LAST(unsigned long long *o)
{
  int n = (TPM2_NV_AC_LAST) <= 0;
  *o = (unsigned long long)((TPM2_NV_AC_LAST) | 0);  /* check that TPM2_NV_AC_LAST is an integer */
  return n;
}

static int _cffi_const_TPM2_NV_INDEX_FIRST(unsigned long long *o)
{
  int n = (TPM2_NV_INDEX_FIRST) <= 0;
  *o = (unsigned long long)((TPM2_NV_INDEX_FIRST) | 0);  /* check that TPM2_NV_INDEX_FIRST is an integer */
  return n;
}

static int _cffi_const_TPM2_NV_INDEX_INDEX_MASK(unsigned long long *o)
{
  int n = (TPM2_NV_INDEX_INDEX_MASK) <= 0;
  *o = (unsigned long long)((TPM2_NV_INDEX_INDEX_MASK) | 0);  /* check that TPM2_NV_INDEX_INDEX_MASK is an integer */
  return n;
}

static int _cffi_const_TPM2_NV_INDEX_INDEX_SHIFT(unsigned long long *o)
{
  int n = (TPM2_NV_INDEX_INDEX_SHIFT) <= 0;
  *o = (unsigned long long)((TPM2_NV_INDEX_INDEX_SHIFT) | 0);  /* check that TPM2_NV_INDEX_INDEX_SHIFT is an integer */
  return n;
}

static int _cffi_const_TPM2_NV_INDEX_LAST(unsigned long long *o)
{
  int n = (TPM2_NV_INDEX_LAST) <= 0;
  *o = (unsigned long long)((TPM2_NV_INDEX_LAST) | 0);  /* check that TPM2_NV_INDEX_LAST is an integer */
  return n;
}

static int _cffi_const_TPM2_NV_INDEX_RH_NV_MASK(unsigned long long *o)
{
  int n = (TPM2_NV_INDEX_RH_NV_MASK) <= 0;
  *o = (unsigned long long)((TPM2_NV_INDEX_RH_NV_MASK) | 0);  /* check that TPM2_NV_INDEX_RH_NV_MASK is an integer */
  return n;
}

static int _cffi_const_TPM2_NV_INDEX_RH_NV_SHIFT(unsigned long long *o)
{
  int n = (TPM2_NV_INDEX_RH_NV_SHIFT) <= 0;
  *o = (unsigned long long)((TPM2_NV_INDEX_RH_NV_SHIFT) | 0);  /* check that TPM2_NV_INDEX_RH_NV_SHIFT is an integer */
  return n;
}

static int _cffi_const_TPM2_PCR_FIRST(unsigned long long *o)
{
  int n = (TPM2_PCR_FIRST) <= 0;
  *o = (unsigned long long)((TPM2_PCR_FIRST) | 0);  /* check that TPM2_PCR_FIRST is an integer */
  return n;
}

static int _cffi_const_TPM2_PCR_LAST(unsigned long long *o)
{
  int n = (TPM2_PCR_LAST) <= 0;
  *o = (unsigned long long)((TPM2_PCR_LAST) | 0);  /* check that TPM2_PCR_LAST is an integer */
  return n;
}

static int _cffi_const_TPM2_PCR_SELECT_MAX(unsigned long long *o)
{
  int n = (TPM2_PCR_SELECT_MAX) <= 0;
  *o = (unsigned long long)((TPM2_PCR_SELECT_MAX) | 0);  /* check that TPM2_PCR_SELECT_MAX is an integer */
  return n;
}

static int _cffi_const_TPM2_PERMANENT_FIRST(unsigned long long *o)
{
  int n = (TPM2_PERMANENT_FIRST) <= 0;
  *o = (unsigned long long)((TPM2_PERMANENT_FIRST) | 0);  /* check that TPM2_PERMANENT_FIRST is an integer */
  return n;
}

static int _cffi_const_TPM2_PERMANENT_LAST(unsigned long long *o)
{
  int n = (TPM2_PERMANENT_LAST) <= 0;
  *o = (unsigned long long)((TPM2_PERMANENT_LAST) | 0);  /* check that TPM2_PERMANENT_LAST is an integer */
  return n;
}

static int _cffi_const_TPM2_PERSISTENT_FIRST(unsigned long long *o)
{
  int n = (TPM2_PERSISTENT_FIRST) <= 0;
  *o = (unsigned long long)((TPM2_PERSISTENT_FIRST) | 0);  /* check that TPM2_PERSISTENT_FIRST is an integer */
  return n;
}

static int _cffi_const_TPM2_PERSISTENT_LAST(unsigned long long *o)
{
  int n = (TPM2_PERSISTENT_LAST) <= 0;
  *o = (unsigned long long)((TPM2_PERSISTENT_LAST) | 0);  /* check that TPM2_PERSISTENT_LAST is an integer */
  return n;
}

static int _cffi_const_TPM2_PLATFORM_PERSISTENT(unsigned long long *o)
{
  int n = (TPM2_PLATFORM_PERSISTENT) <= 0;
  *o = (unsigned long long)((TPM2_PLATFORM_PERSISTENT) | 0);  /* check that TPM2_PLATFORM_PERSISTENT is an integer */
  return n;
}

static int _cffi_const_TPM2_POLICY_SESSION_FIRST(unsigned long long *o)
{
  int n = (TPM2_POLICY_SESSION_FIRST) <= 0;
  *o = (unsigned long long)((TPM2_POLICY_SESSION_FIRST) | 0);  /* check that TPM2_POLICY_SESSION_FIRST is an integer */
  return n;
}

static int _cffi_const_TPM2_POLICY_SESSION_LAST(unsigned long long *o)
{
  int n = (TPM2_POLICY_SESSION_LAST) <= 0;
  *o = (unsigned long long)((TPM2_POLICY_SESSION_LAST) | 0);  /* check that TPM2_POLICY_SESSION_LAST is an integer */
  return n;
}

static int _cffi_const_TPM2_PRIVATE_VENDOR_SPECIFIC_BYTES(unsigned long long *o)
{
  int n = (TPM2_PRIVATE_VENDOR_SPECIFIC_BYTES) <= 0;
  *o = (unsigned long long)((TPM2_PRIVATE_VENDOR_SPECIFIC_BYTES) | 0);  /* check that TPM2_PRIVATE_VENDOR_SPECIFIC_BYTES is an integer */
  return n;
}

static int _cffi_const_TPM2_PS_AUTHENTICATION(unsigned long long *o)
{
  int n = (TPM2_PS_AUTHENTICATION) <= 0;
  *o = (unsigned long long)((TPM2_PS_AUTHENTICATION) | 0);  /* check that TPM2_PS_AUTHENTICATION is an integer */
  return n;
}

static int _cffi_const_TPM2_PS_CELL_PHONE(unsigned long long *o)
{
  int n = (TPM2_PS_CELL_PHONE) <= 0;
  *o = (unsigned long long)((TPM2_PS_CELL_PHONE) | 0);  /* check that TPM2_PS_CELL_PHONE is an integer */
  return n;
}

static int _cffi_const_TPM2_PS_EMBEDDED(unsigned long long *o)
{
  int n = (TPM2_PS_EMBEDDED) <= 0;
  *o = (unsigned long long)((TPM2_PS_EMBEDDED) | 0);  /* check that TPM2_PS_EMBEDDED is an integer */
  return n;
}

static int _cffi_const_TPM2_PS_HARDCOPY(unsigned long long *o)
{
  int n = (TPM2_PS_HARDCOPY) <= 0;
  *o = (unsigned long long)((TPM2_PS_HARDCOPY) | 0);  /* check that TPM2_PS_HARDCOPY is an integer */
  return n;
}

static int _cffi_const_TPM2_PS_INFRASTRUCTURE(unsigned long long *o)
{
  int n = (TPM2_PS_INFRASTRUCTURE) <= 0;
  *o = (unsigned long long)((TPM2_PS_INFRASTRUCTURE) | 0);  /* check that TPM2_PS_INFRASTRUCTURE is an integer */
  return n;
}

static int _cffi_const_TPM2_PS_MAIN(unsigned long long *o)
{
  int n = (TPM2_PS_MAIN) <= 0;
  *o = (unsigned long long)((TPM2_PS_MAIN) | 0);  /* check that TPM2_PS_MAIN is an integer */
  return n;
}

static int _cffi_const_TPM2_PS_MULTI_TENANT(unsigned long long *o)
{
  int n = (TPM2_PS_MULTI_TENANT) <= 0;
  *o = (unsigned long long)((TPM2_PS_MULTI_TENANT) | 0);  /* check that TPM2_PS_MULTI_TENANT is an integer */
  return n;
}

static int _cffi_const_TPM2_PS_PC(unsigned long long *o)
{
  int n = (TPM2_PS_PC) <= 0;
  *o = (unsigned long long)((TPM2_PS_PC) | 0);  /* check that TPM2_PS_PC is an integer */
  return n;
}

static int _cffi_const_TPM2_PS_PDA(unsigned long long *o)
{
  int n = (TPM2_PS_PDA) <= 0;
  *o = (unsigned long long)((TPM2_PS_PDA) | 0);  /* check that TPM2_PS_PDA is an integer */
  return n;
}

static int _cffi_const_TPM2_PS_PERIPHERAL(unsigned long long *o)
{
  int n = (TPM2_PS_PERIPHERAL) <= 0;
  *o = (unsigned long long)((TPM2_PS_PERIPHERAL) | 0);  /* check that TPM2_PS_PERIPHERAL is an integer */
  return n;
}

static int _cffi_const_TPM2_PS_SERVER(unsigned long long *o)
{
  int n = (TPM2_PS_SERVER) <= 0;
  *o = (unsigned long long)((TPM2_PS_SERVER) | 0);  /* check that TPM2_PS_SERVER is an integer */
  return n;
}

static int _cffi_const_TPM2_PS_STORAGE(unsigned long long *o)
{
  int n = (TPM2_PS_STORAGE) <= 0;
  *o = (unsigned long long)((TPM2_PS_STORAGE) | 0);  /* check that TPM2_PS_STORAGE is an integer */
  return n;
}

static int _cffi_const_TPM2_PS_TC(unsigned long long *o)
{
  int n = (TPM2_PS_TC) <= 0;
  *o = (unsigned long long)((TPM2_PS_TC) | 0);  /* check that TPM2_PS_TC is an integer */
  return n;
}

static int _cffi_const_TPM2_PS_TNC(unsigned long long *o)
{
  int n = (TPM2_PS_TNC) <= 0;
  *o = (unsigned long long)((TPM2_PS_TNC) | 0);  /* check that TPM2_PS_TNC is an integer */
  return n;
}

static int _cffi_const_TPM2_PS_TSS(unsigned long long *o)
{
  int n = (TPM2_PS_TSS) <= 0;
  *o = (unsigned long long)((TPM2_PS_TSS) | 0);  /* check that TPM2_PS_TSS is an integer */
  return n;
}

static int _cffi_const_TPM2_PS_VIRTUALIZATION(unsigned long long *o)
{
  int n = (TPM2_PS_VIRTUALIZATION) <= 0;
  *o = (unsigned long long)((TPM2_PS_VIRTUALIZATION) | 0);  /* check that TPM2_PS_VIRTUALIZATION is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_ACTIVE_SESSIONS_MAX(unsigned long long *o)
{
  int n = (TPM2_PT_ACTIVE_SESSIONS_MAX) <= 0;
  *o = (unsigned long long)((TPM2_PT_ACTIVE_SESSIONS_MAX) | 0);  /* check that TPM2_PT_ACTIVE_SESSIONS_MAX is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_ALGORITHM_SET(unsigned long long *o)
{
  int n = (TPM2_PT_ALGORITHM_SET) <= 0;
  *o = (unsigned long long)((TPM2_PT_ALGORITHM_SET) | 0);  /* check that TPM2_PT_ALGORITHM_SET is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_AUDIT_COUNTER_0(unsigned long long *o)
{
  int n = (TPM2_PT_AUDIT_COUNTER_0) <= 0;
  *o = (unsigned long long)((TPM2_PT_AUDIT_COUNTER_0) | 0);  /* check that TPM2_PT_AUDIT_COUNTER_0 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_AUDIT_COUNTER_1(unsigned long long *o)
{
  int n = (TPM2_PT_AUDIT_COUNTER_1) <= 0;
  *o = (unsigned long long)((TPM2_PT_AUDIT_COUNTER_1) | 0);  /* check that TPM2_PT_AUDIT_COUNTER_1 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_CLOCK_UPDATE(unsigned long long *o)
{
  int n = (TPM2_PT_CLOCK_UPDATE) <= 0;
  *o = (unsigned long long)((TPM2_PT_CLOCK_UPDATE) | 0);  /* check that TPM2_PT_CLOCK_UPDATE is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_CONTEXT_GAP_MAX(unsigned long long *o)
{
  int n = (TPM2_PT_CONTEXT_GAP_MAX) <= 0;
  *o = (unsigned long long)((TPM2_PT_CONTEXT_GAP_MAX) | 0);  /* check that TPM2_PT_CONTEXT_GAP_MAX is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_CONTEXT_HASH(unsigned long long *o)
{
  int n = (TPM2_PT_CONTEXT_HASH) <= 0;
  *o = (unsigned long long)((TPM2_PT_CONTEXT_HASH) | 0);  /* check that TPM2_PT_CONTEXT_HASH is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_CONTEXT_SYM(unsigned long long *o)
{
  int n = (TPM2_PT_CONTEXT_SYM) <= 0;
  *o = (unsigned long long)((TPM2_PT_CONTEXT_SYM) | 0);  /* check that TPM2_PT_CONTEXT_SYM is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_CONTEXT_SYM_SIZE(unsigned long long *o)
{
  int n = (TPM2_PT_CONTEXT_SYM_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_PT_CONTEXT_SYM_SIZE) | 0);  /* check that TPM2_PT_CONTEXT_SYM_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_DAY_OF_YEAR(unsigned long long *o)
{
  int n = (TPM2_PT_DAY_OF_YEAR) <= 0;
  *o = (unsigned long long)((TPM2_PT_DAY_OF_YEAR) | 0);  /* check that TPM2_PT_DAY_OF_YEAR is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_FAMILY_INDICATOR(unsigned long long *o)
{
  int n = (TPM2_PT_FAMILY_INDICATOR) <= 0;
  *o = (unsigned long long)((TPM2_PT_FAMILY_INDICATOR) | 0);  /* check that TPM2_PT_FAMILY_INDICATOR is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_FIRMWARE_VERSION_1(unsigned long long *o)
{
  int n = (TPM2_PT_FIRMWARE_VERSION_1) <= 0;
  *o = (unsigned long long)((TPM2_PT_FIRMWARE_VERSION_1) | 0);  /* check that TPM2_PT_FIRMWARE_VERSION_1 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_FIRMWARE_VERSION_2(unsigned long long *o)
{
  int n = (TPM2_PT_FIRMWARE_VERSION_2) <= 0;
  *o = (unsigned long long)((TPM2_PT_FIRMWARE_VERSION_2) | 0);  /* check that TPM2_PT_FIRMWARE_VERSION_2 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_FIXED(unsigned long long *o)
{
  int n = (TPM2_PT_FIXED) <= 0;
  *o = (unsigned long long)((TPM2_PT_FIXED) | 0);  /* check that TPM2_PT_FIXED is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_GROUP(unsigned long long *o)
{
  int n = (TPM2_PT_GROUP) <= 0;
  *o = (unsigned long long)((TPM2_PT_GROUP) | 0);  /* check that TPM2_PT_GROUP is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_HR_ACTIVE(unsigned long long *o)
{
  int n = (TPM2_PT_HR_ACTIVE) <= 0;
  *o = (unsigned long long)((TPM2_PT_HR_ACTIVE) | 0);  /* check that TPM2_PT_HR_ACTIVE is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_HR_ACTIVE_AVAIL(unsigned long long *o)
{
  int n = (TPM2_PT_HR_ACTIVE_AVAIL) <= 0;
  *o = (unsigned long long)((TPM2_PT_HR_ACTIVE_AVAIL) | 0);  /* check that TPM2_PT_HR_ACTIVE_AVAIL is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_HR_LOADED(unsigned long long *o)
{
  int n = (TPM2_PT_HR_LOADED) <= 0;
  *o = (unsigned long long)((TPM2_PT_HR_LOADED) | 0);  /* check that TPM2_PT_HR_LOADED is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_HR_LOADED_AVAIL(unsigned long long *o)
{
  int n = (TPM2_PT_HR_LOADED_AVAIL) <= 0;
  *o = (unsigned long long)((TPM2_PT_HR_LOADED_AVAIL) | 0);  /* check that TPM2_PT_HR_LOADED_AVAIL is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_HR_LOADED_MIN(unsigned long long *o)
{
  int n = (TPM2_PT_HR_LOADED_MIN) <= 0;
  *o = (unsigned long long)((TPM2_PT_HR_LOADED_MIN) | 0);  /* check that TPM2_PT_HR_LOADED_MIN is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_HR_NV_INDEX(unsigned long long *o)
{
  int n = (TPM2_PT_HR_NV_INDEX) <= 0;
  *o = (unsigned long long)((TPM2_PT_HR_NV_INDEX) | 0);  /* check that TPM2_PT_HR_NV_INDEX is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_HR_PERSISTENT(unsigned long long *o)
{
  int n = (TPM2_PT_HR_PERSISTENT) <= 0;
  *o = (unsigned long long)((TPM2_PT_HR_PERSISTENT) | 0);  /* check that TPM2_PT_HR_PERSISTENT is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_HR_PERSISTENT_AVAIL(unsigned long long *o)
{
  int n = (TPM2_PT_HR_PERSISTENT_AVAIL) <= 0;
  *o = (unsigned long long)((TPM2_PT_HR_PERSISTENT_AVAIL) | 0);  /* check that TPM2_PT_HR_PERSISTENT_AVAIL is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_HR_PERSISTENT_MIN(unsigned long long *o)
{
  int n = (TPM2_PT_HR_PERSISTENT_MIN) <= 0;
  *o = (unsigned long long)((TPM2_PT_HR_PERSISTENT_MIN) | 0);  /* check that TPM2_PT_HR_PERSISTENT_MIN is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_HR_TRANSIENT_AVAIL(unsigned long long *o)
{
  int n = (TPM2_PT_HR_TRANSIENT_AVAIL) <= 0;
  *o = (unsigned long long)((TPM2_PT_HR_TRANSIENT_AVAIL) | 0);  /* check that TPM2_PT_HR_TRANSIENT_AVAIL is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_HR_TRANSIENT_MIN(unsigned long long *o)
{
  int n = (TPM2_PT_HR_TRANSIENT_MIN) <= 0;
  *o = (unsigned long long)((TPM2_PT_HR_TRANSIENT_MIN) | 0);  /* check that TPM2_PT_HR_TRANSIENT_MIN is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_INPUT_BUFFER(unsigned long long *o)
{
  int n = (TPM2_PT_INPUT_BUFFER) <= 0;
  *o = (unsigned long long)((TPM2_PT_INPUT_BUFFER) | 0);  /* check that TPM2_PT_INPUT_BUFFER is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_LEVEL(unsigned long long *o)
{
  int n = (TPM2_PT_LEVEL) <= 0;
  *o = (unsigned long long)((TPM2_PT_LEVEL) | 0);  /* check that TPM2_PT_LEVEL is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_LIBRARY_COMMANDS(unsigned long long *o)
{
  int n = (TPM2_PT_LIBRARY_COMMANDS) <= 0;
  *o = (unsigned long long)((TPM2_PT_LIBRARY_COMMANDS) | 0);  /* check that TPM2_PT_LIBRARY_COMMANDS is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_LOADED_CURVES(unsigned long long *o)
{
  int n = (TPM2_PT_LOADED_CURVES) <= 0;
  *o = (unsigned long long)((TPM2_PT_LOADED_CURVES) | 0);  /* check that TPM2_PT_LOADED_CURVES is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_LOCKOUT_COUNTER(unsigned long long *o)
{
  int n = (TPM2_PT_LOCKOUT_COUNTER) <= 0;
  *o = (unsigned long long)((TPM2_PT_LOCKOUT_COUNTER) | 0);  /* check that TPM2_PT_LOCKOUT_COUNTER is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_LOCKOUT_INTERVAL(unsigned long long *o)
{
  int n = (TPM2_PT_LOCKOUT_INTERVAL) <= 0;
  *o = (unsigned long long)((TPM2_PT_LOCKOUT_INTERVAL) | 0);  /* check that TPM2_PT_LOCKOUT_INTERVAL is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_LOCKOUT_RECOVERY(unsigned long long *o)
{
  int n = (TPM2_PT_LOCKOUT_RECOVERY) <= 0;
  *o = (unsigned long long)((TPM2_PT_LOCKOUT_RECOVERY) | 0);  /* check that TPM2_PT_LOCKOUT_RECOVERY is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_MANUFACTURER(unsigned long long *o)
{
  int n = (TPM2_PT_MANUFACTURER) <= 0;
  *o = (unsigned long long)((TPM2_PT_MANUFACTURER) | 0);  /* check that TPM2_PT_MANUFACTURER is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_MAX_AUTH_FAIL(unsigned long long *o)
{
  int n = (TPM2_PT_MAX_AUTH_FAIL) <= 0;
  *o = (unsigned long long)((TPM2_PT_MAX_AUTH_FAIL) | 0);  /* check that TPM2_PT_MAX_AUTH_FAIL is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_MAX_CAP_BUFFER(unsigned long long *o)
{
  int n = (TPM2_PT_MAX_CAP_BUFFER) <= 0;
  *o = (unsigned long long)((TPM2_PT_MAX_CAP_BUFFER) | 0);  /* check that TPM2_PT_MAX_CAP_BUFFER is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_MAX_COMMAND_SIZE(unsigned long long *o)
{
  int n = (TPM2_PT_MAX_COMMAND_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_PT_MAX_COMMAND_SIZE) | 0);  /* check that TPM2_PT_MAX_COMMAND_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_MAX_DIGEST(unsigned long long *o)
{
  int n = (TPM2_PT_MAX_DIGEST) <= 0;
  *o = (unsigned long long)((TPM2_PT_MAX_DIGEST) | 0);  /* check that TPM2_PT_MAX_DIGEST is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_MAX_OBJECT_CONTEXT(unsigned long long *o)
{
  int n = (TPM2_PT_MAX_OBJECT_CONTEXT) <= 0;
  *o = (unsigned long long)((TPM2_PT_MAX_OBJECT_CONTEXT) | 0);  /* check that TPM2_PT_MAX_OBJECT_CONTEXT is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_MAX_RESPONSE_SIZE(unsigned long long *o)
{
  int n = (TPM2_PT_MAX_RESPONSE_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_PT_MAX_RESPONSE_SIZE) | 0);  /* check that TPM2_PT_MAX_RESPONSE_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_MAX_SESSION_CONTEXT(unsigned long long *o)
{
  int n = (TPM2_PT_MAX_SESSION_CONTEXT) <= 0;
  *o = (unsigned long long)((TPM2_PT_MAX_SESSION_CONTEXT) | 0);  /* check that TPM2_PT_MAX_SESSION_CONTEXT is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_MEMORY(unsigned long long *o)
{
  int n = (TPM2_PT_MEMORY) <= 0;
  *o = (unsigned long long)((TPM2_PT_MEMORY) | 0);  /* check that TPM2_PT_MEMORY is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_MODES(unsigned long long *o)
{
  int n = (TPM2_PT_MODES) <= 0;
  *o = (unsigned long long)((TPM2_PT_MODES) | 0);  /* check that TPM2_PT_MODES is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_NONE(unsigned long long *o)
{
  int n = (TPM2_PT_NONE) <= 0;
  *o = (unsigned long long)((TPM2_PT_NONE) | 0);  /* check that TPM2_PT_NONE is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_NV_BUFFER_MAX(unsigned long long *o)
{
  int n = (TPM2_PT_NV_BUFFER_MAX) <= 0;
  *o = (unsigned long long)((TPM2_PT_NV_BUFFER_MAX) | 0);  /* check that TPM2_PT_NV_BUFFER_MAX is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_NV_COUNTERS(unsigned long long *o)
{
  int n = (TPM2_PT_NV_COUNTERS) <= 0;
  *o = (unsigned long long)((TPM2_PT_NV_COUNTERS) | 0);  /* check that TPM2_PT_NV_COUNTERS is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_NV_COUNTERS_AVAIL(unsigned long long *o)
{
  int n = (TPM2_PT_NV_COUNTERS_AVAIL) <= 0;
  *o = (unsigned long long)((TPM2_PT_NV_COUNTERS_AVAIL) | 0);  /* check that TPM2_PT_NV_COUNTERS_AVAIL is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_NV_COUNTERS_MAX(unsigned long long *o)
{
  int n = (TPM2_PT_NV_COUNTERS_MAX) <= 0;
  *o = (unsigned long long)((TPM2_PT_NV_COUNTERS_MAX) | 0);  /* check that TPM2_PT_NV_COUNTERS_MAX is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_NV_INDEX_MAX(unsigned long long *o)
{
  int n = (TPM2_PT_NV_INDEX_MAX) <= 0;
  *o = (unsigned long long)((TPM2_PT_NV_INDEX_MAX) | 0);  /* check that TPM2_PT_NV_INDEX_MAX is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_NV_WRITE_RECOVERY(unsigned long long *o)
{
  int n = (TPM2_PT_NV_WRITE_RECOVERY) <= 0;
  *o = (unsigned long long)((TPM2_PT_NV_WRITE_RECOVERY) | 0);  /* check that TPM2_PT_NV_WRITE_RECOVERY is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_ORDERLY_COUNT(unsigned long long *o)
{
  int n = (TPM2_PT_ORDERLY_COUNT) <= 0;
  *o = (unsigned long long)((TPM2_PT_ORDERLY_COUNT) | 0);  /* check that TPM2_PT_ORDERLY_COUNT is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_AUTH(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_AUTH) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_AUTH) | 0);  /* check that TPM2_PT_PCR_AUTH is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_COUNT(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_COUNT) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_COUNT) | 0);  /* check that TPM2_PT_PCR_COUNT is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_DRTM_RESET(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_DRTM_RESET) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_DRTM_RESET) | 0);  /* check that TPM2_PT_PCR_DRTM_RESET is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_EXTEND_L0(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_EXTEND_L0) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_EXTEND_L0) | 0);  /* check that TPM2_PT_PCR_EXTEND_L0 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_EXTEND_L1(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_EXTEND_L1) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_EXTEND_L1) | 0);  /* check that TPM2_PT_PCR_EXTEND_L1 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_EXTEND_L2(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_EXTEND_L2) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_EXTEND_L2) | 0);  /* check that TPM2_PT_PCR_EXTEND_L2 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_EXTEND_L3(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_EXTEND_L3) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_EXTEND_L3) | 0);  /* check that TPM2_PT_PCR_EXTEND_L3 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_EXTEND_L4(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_EXTEND_L4) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_EXTEND_L4) | 0);  /* check that TPM2_PT_PCR_EXTEND_L4 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_NO_INCREMENT(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_NO_INCREMENT) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_NO_INCREMENT) | 0);  /* check that TPM2_PT_PCR_NO_INCREMENT is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_POLICY(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_POLICY) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_POLICY) | 0);  /* check that TPM2_PT_PCR_POLICY is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_RESET_L0(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_RESET_L0) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_RESET_L0) | 0);  /* check that TPM2_PT_PCR_RESET_L0 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_RESET_L1(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_RESET_L1) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_RESET_L1) | 0);  /* check that TPM2_PT_PCR_RESET_L1 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_RESET_L2(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_RESET_L2) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_RESET_L2) | 0);  /* check that TPM2_PT_PCR_RESET_L2 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_RESET_L3(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_RESET_L3) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_RESET_L3) | 0);  /* check that TPM2_PT_PCR_RESET_L3 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_RESET_L4(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_RESET_L4) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_RESET_L4) | 0);  /* check that TPM2_PT_PCR_RESET_L4 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_SAVE(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_SAVE) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_SAVE) | 0);  /* check that TPM2_PT_PCR_SAVE is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PCR_SELECT_MIN(unsigned long long *o)
{
  int n = (TPM2_PT_PCR_SELECT_MIN) <= 0;
  *o = (unsigned long long)((TPM2_PT_PCR_SELECT_MIN) | 0);  /* check that TPM2_PT_PCR_SELECT_MIN is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PERMANENT(unsigned long long *o)
{
  int n = (TPM2_PT_PERMANENT) <= 0;
  *o = (unsigned long long)((TPM2_PT_PERMANENT) | 0);  /* check that TPM2_PT_PERMANENT is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PS_DAY_OF_YEAR(unsigned long long *o)
{
  int n = (TPM2_PT_PS_DAY_OF_YEAR) <= 0;
  *o = (unsigned long long)((TPM2_PT_PS_DAY_OF_YEAR) | 0);  /* check that TPM2_PT_PS_DAY_OF_YEAR is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PS_FAMILY_INDICATOR(unsigned long long *o)
{
  int n = (TPM2_PT_PS_FAMILY_INDICATOR) <= 0;
  *o = (unsigned long long)((TPM2_PT_PS_FAMILY_INDICATOR) | 0);  /* check that TPM2_PT_PS_FAMILY_INDICATOR is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PS_LEVEL(unsigned long long *o)
{
  int n = (TPM2_PT_PS_LEVEL) <= 0;
  *o = (unsigned long long)((TPM2_PT_PS_LEVEL) | 0);  /* check that TPM2_PT_PS_LEVEL is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PS_REVISION(unsigned long long *o)
{
  int n = (TPM2_PT_PS_REVISION) <= 0;
  *o = (unsigned long long)((TPM2_PT_PS_REVISION) | 0);  /* check that TPM2_PT_PS_REVISION is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_PS_YEAR(unsigned long long *o)
{
  int n = (TPM2_PT_PS_YEAR) <= 0;
  *o = (unsigned long long)((TPM2_PT_PS_YEAR) | 0);  /* check that TPM2_PT_PS_YEAR is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_REVISION(unsigned long long *o)
{
  int n = (TPM2_PT_REVISION) <= 0;
  *o = (unsigned long long)((TPM2_PT_REVISION) | 0);  /* check that TPM2_PT_REVISION is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_SPLIT_MAX(unsigned long long *o)
{
  int n = (TPM2_PT_SPLIT_MAX) <= 0;
  *o = (unsigned long long)((TPM2_PT_SPLIT_MAX) | 0);  /* check that TPM2_PT_SPLIT_MAX is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_STARTUP_CLEAR(unsigned long long *o)
{
  int n = (TPM2_PT_STARTUP_CLEAR) <= 0;
  *o = (unsigned long long)((TPM2_PT_STARTUP_CLEAR) | 0);  /* check that TPM2_PT_STARTUP_CLEAR is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_TOTAL_COMMANDS(unsigned long long *o)
{
  int n = (TPM2_PT_TOTAL_COMMANDS) <= 0;
  *o = (unsigned long long)((TPM2_PT_TOTAL_COMMANDS) | 0);  /* check that TPM2_PT_TOTAL_COMMANDS is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_TPM2_PCR_FIRST(unsigned long long *o)
{
  int n = (TPM2_PT_TPM2_PCR_FIRST) <= 0;
  *o = (unsigned long long)((TPM2_PT_TPM2_PCR_FIRST) | 0);  /* check that TPM2_PT_TPM2_PCR_FIRST is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_TPM2_PCR_LAST(unsigned long long *o)
{
  int n = (TPM2_PT_TPM2_PCR_LAST) <= 0;
  *o = (unsigned long long)((TPM2_PT_TPM2_PCR_LAST) | 0);  /* check that TPM2_PT_TPM2_PCR_LAST is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_VAR(unsigned long long *o)
{
  int n = (TPM2_PT_VAR) <= 0;
  *o = (unsigned long long)((TPM2_PT_VAR) | 0);  /* check that TPM2_PT_VAR is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_VENDOR_COMMANDS(unsigned long long *o)
{
  int n = (TPM2_PT_VENDOR_COMMANDS) <= 0;
  *o = (unsigned long long)((TPM2_PT_VENDOR_COMMANDS) | 0);  /* check that TPM2_PT_VENDOR_COMMANDS is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_VENDOR_STRING_1(unsigned long long *o)
{
  int n = (TPM2_PT_VENDOR_STRING_1) <= 0;
  *o = (unsigned long long)((TPM2_PT_VENDOR_STRING_1) | 0);  /* check that TPM2_PT_VENDOR_STRING_1 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_VENDOR_STRING_2(unsigned long long *o)
{
  int n = (TPM2_PT_VENDOR_STRING_2) <= 0;
  *o = (unsigned long long)((TPM2_PT_VENDOR_STRING_2) | 0);  /* check that TPM2_PT_VENDOR_STRING_2 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_VENDOR_STRING_3(unsigned long long *o)
{
  int n = (TPM2_PT_VENDOR_STRING_3) <= 0;
  *o = (unsigned long long)((TPM2_PT_VENDOR_STRING_3) | 0);  /* check that TPM2_PT_VENDOR_STRING_3 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_VENDOR_STRING_4(unsigned long long *o)
{
  int n = (TPM2_PT_VENDOR_STRING_4) <= 0;
  *o = (unsigned long long)((TPM2_PT_VENDOR_STRING_4) | 0);  /* check that TPM2_PT_VENDOR_STRING_4 is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_VENDOR_TPM_TYPE(unsigned long long *o)
{
  int n = (TPM2_PT_VENDOR_TPM_TYPE) <= 0;
  *o = (unsigned long long)((TPM2_PT_VENDOR_TPM_TYPE) | 0);  /* check that TPM2_PT_VENDOR_TPM_TYPE is an integer */
  return n;
}

static int _cffi_const_TPM2_PT_YEAR(unsigned long long *o)
{
  int n = (TPM2_PT_YEAR) <= 0;
  *o = (unsigned long long)((TPM2_PT_YEAR) | 0);  /* check that TPM2_PT_YEAR is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_1(unsigned long long *o)
{
  int n = (TPM2_RC_1) <= 0;
  *o = (unsigned long long)((TPM2_RC_1) | 0);  /* check that TPM2_RC_1 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_2(unsigned long long *o)
{
  int n = (TPM2_RC_2) <= 0;
  *o = (unsigned long long)((TPM2_RC_2) | 0);  /* check that TPM2_RC_2 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_3(unsigned long long *o)
{
  int n = (TPM2_RC_3) <= 0;
  *o = (unsigned long long)((TPM2_RC_3) | 0);  /* check that TPM2_RC_3 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_4(unsigned long long *o)
{
  int n = (TPM2_RC_4) <= 0;
  *o = (unsigned long long)((TPM2_RC_4) | 0);  /* check that TPM2_RC_4 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_5(unsigned long long *o)
{
  int n = (TPM2_RC_5) <= 0;
  *o = (unsigned long long)((TPM2_RC_5) | 0);  /* check that TPM2_RC_5 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_6(unsigned long long *o)
{
  int n = (TPM2_RC_6) <= 0;
  *o = (unsigned long long)((TPM2_RC_6) | 0);  /* check that TPM2_RC_6 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_7(unsigned long long *o)
{
  int n = (TPM2_RC_7) <= 0;
  *o = (unsigned long long)((TPM2_RC_7) | 0);  /* check that TPM2_RC_7 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_8(unsigned long long *o)
{
  int n = (TPM2_RC_8) <= 0;
  *o = (unsigned long long)((TPM2_RC_8) | 0);  /* check that TPM2_RC_8 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_9(unsigned long long *o)
{
  int n = (TPM2_RC_9) <= 0;
  *o = (unsigned long long)((TPM2_RC_9) | 0);  /* check that TPM2_RC_9 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_A(unsigned long long *o)
{
  int n = (TPM2_RC_A) <= 0;
  *o = (unsigned long long)((TPM2_RC_A) | 0);  /* check that TPM2_RC_A is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_ASYMMETRIC(unsigned long long *o)
{
  int n = (TPM2_RC_ASYMMETRIC) <= 0;
  *o = (unsigned long long)((TPM2_RC_ASYMMETRIC) | 0);  /* check that TPM2_RC_ASYMMETRIC is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_ATTRIBUTES(unsigned long long *o)
{
  int n = (TPM2_RC_ATTRIBUTES) <= 0;
  *o = (unsigned long long)((TPM2_RC_ATTRIBUTES) | 0);  /* check that TPM2_RC_ATTRIBUTES is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_AUTHSIZE(unsigned long long *o)
{
  int n = (TPM2_RC_AUTHSIZE) <= 0;
  *o = (unsigned long long)((TPM2_RC_AUTHSIZE) | 0);  /* check that TPM2_RC_AUTHSIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_AUTH_CONTEXT(unsigned long long *o)
{
  int n = (TPM2_RC_AUTH_CONTEXT) <= 0;
  *o = (unsigned long long)((TPM2_RC_AUTH_CONTEXT) | 0);  /* check that TPM2_RC_AUTH_CONTEXT is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_AUTH_FAIL(unsigned long long *o)
{
  int n = (TPM2_RC_AUTH_FAIL) <= 0;
  *o = (unsigned long long)((TPM2_RC_AUTH_FAIL) | 0);  /* check that TPM2_RC_AUTH_FAIL is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_AUTH_MISSING(unsigned long long *o)
{
  int n = (TPM2_RC_AUTH_MISSING) <= 0;
  *o = (unsigned long long)((TPM2_RC_AUTH_MISSING) | 0);  /* check that TPM2_RC_AUTH_MISSING is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_AUTH_TYPE(unsigned long long *o)
{
  int n = (TPM2_RC_AUTH_TYPE) <= 0;
  *o = (unsigned long long)((TPM2_RC_AUTH_TYPE) | 0);  /* check that TPM2_RC_AUTH_TYPE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_AUTH_UNAVAILABLE(unsigned long long *o)
{
  int n = (TPM2_RC_AUTH_UNAVAILABLE) <= 0;
  *o = (unsigned long long)((TPM2_RC_AUTH_UNAVAILABLE) | 0);  /* check that TPM2_RC_AUTH_UNAVAILABLE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_B(unsigned long long *o)
{
  int n = (TPM2_RC_B) <= 0;
  *o = (unsigned long long)((TPM2_RC_B) | 0);  /* check that TPM2_RC_B is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_BAD_AUTH(unsigned long long *o)
{
  int n = (TPM2_RC_BAD_AUTH) <= 0;
  *o = (unsigned long long)((TPM2_RC_BAD_AUTH) | 0);  /* check that TPM2_RC_BAD_AUTH is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_BAD_CONTEXT(unsigned long long *o)
{
  int n = (TPM2_RC_BAD_CONTEXT) <= 0;
  *o = (unsigned long long)((TPM2_RC_BAD_CONTEXT) | 0);  /* check that TPM2_RC_BAD_CONTEXT is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_BAD_TAG(unsigned long long *o)
{
  int n = (TPM2_RC_BAD_TAG) <= 0;
  *o = (unsigned long long)((TPM2_RC_BAD_TAG) | 0);  /* check that TPM2_RC_BAD_TAG is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_BINDING(unsigned long long *o)
{
  int n = (TPM2_RC_BINDING) <= 0;
  *o = (unsigned long long)((TPM2_RC_BINDING) | 0);  /* check that TPM2_RC_BINDING is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_C(unsigned long long *o)
{
  int n = (TPM2_RC_C) <= 0;
  *o = (unsigned long long)((TPM2_RC_C) | 0);  /* check that TPM2_RC_C is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_CANCELED(unsigned long long *o)
{
  int n = (TPM2_RC_CANCELED) <= 0;
  *o = (unsigned long long)((TPM2_RC_CANCELED) | 0);  /* check that TPM2_RC_CANCELED is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_COMMAND_CODE(unsigned long long *o)
{
  int n = (TPM2_RC_COMMAND_CODE) <= 0;
  *o = (unsigned long long)((TPM2_RC_COMMAND_CODE) | 0);  /* check that TPM2_RC_COMMAND_CODE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_COMMAND_SIZE(unsigned long long *o)
{
  int n = (TPM2_RC_COMMAND_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_RC_COMMAND_SIZE) | 0);  /* check that TPM2_RC_COMMAND_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_CONTEXT_GAP(unsigned long long *o)
{
  int n = (TPM2_RC_CONTEXT_GAP) <= 0;
  *o = (unsigned long long)((TPM2_RC_CONTEXT_GAP) | 0);  /* check that TPM2_RC_CONTEXT_GAP is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_CPHASH(unsigned long long *o)
{
  int n = (TPM2_RC_CPHASH) <= 0;
  *o = (unsigned long long)((TPM2_RC_CPHASH) | 0);  /* check that TPM2_RC_CPHASH is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_CURVE(unsigned long long *o)
{
  int n = (TPM2_RC_CURVE) <= 0;
  *o = (unsigned long long)((TPM2_RC_CURVE) | 0);  /* check that TPM2_RC_CURVE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_D(unsigned long long *o)
{
  int n = (TPM2_RC_D) <= 0;
  *o = (unsigned long long)((TPM2_RC_D) | 0);  /* check that TPM2_RC_D is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_DISABLED(unsigned long long *o)
{
  int n = (TPM2_RC_DISABLED) <= 0;
  *o = (unsigned long long)((TPM2_RC_DISABLED) | 0);  /* check that TPM2_RC_DISABLED is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_E(unsigned long long *o)
{
  int n = (TPM2_RC_E) <= 0;
  *o = (unsigned long long)((TPM2_RC_E) | 0);  /* check that TPM2_RC_E is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_ECC_POINT(unsigned long long *o)
{
  int n = (TPM2_RC_ECC_POINT) <= 0;
  *o = (unsigned long long)((TPM2_RC_ECC_POINT) | 0);  /* check that TPM2_RC_ECC_POINT is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_EXCLUSIVE(unsigned long long *o)
{
  int n = (TPM2_RC_EXCLUSIVE) <= 0;
  *o = (unsigned long long)((TPM2_RC_EXCLUSIVE) | 0);  /* check that TPM2_RC_EXCLUSIVE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_EXPIRED(unsigned long long *o)
{
  int n = (TPM2_RC_EXPIRED) <= 0;
  *o = (unsigned long long)((TPM2_RC_EXPIRED) | 0);  /* check that TPM2_RC_EXPIRED is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_F(unsigned long long *o)
{
  int n = (TPM2_RC_F) <= 0;
  *o = (unsigned long long)((TPM2_RC_F) | 0);  /* check that TPM2_RC_F is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_FAILURE(unsigned long long *o)
{
  int n = (TPM2_RC_FAILURE) <= 0;
  *o = (unsigned long long)((TPM2_RC_FAILURE) | 0);  /* check that TPM2_RC_FAILURE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_FMT1(unsigned long long *o)
{
  int n = (TPM2_RC_FMT1) <= 0;
  *o = (unsigned long long)((TPM2_RC_FMT1) | 0);  /* check that TPM2_RC_FMT1 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_H(unsigned long long *o)
{
  int n = (TPM2_RC_H) <= 0;
  *o = (unsigned long long)((TPM2_RC_H) | 0);  /* check that TPM2_RC_H is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_HANDLE(unsigned long long *o)
{
  int n = (TPM2_RC_HANDLE) <= 0;
  *o = (unsigned long long)((TPM2_RC_HANDLE) | 0);  /* check that TPM2_RC_HANDLE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_HASH(unsigned long long *o)
{
  int n = (TPM2_RC_HASH) <= 0;
  *o = (unsigned long long)((TPM2_RC_HASH) | 0);  /* check that TPM2_RC_HASH is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_HIERARCHY(unsigned long long *o)
{
  int n = (TPM2_RC_HIERARCHY) <= 0;
  *o = (unsigned long long)((TPM2_RC_HIERARCHY) | 0);  /* check that TPM2_RC_HIERARCHY is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_HMAC(unsigned long long *o)
{
  int n = (TPM2_RC_HMAC) <= 0;
  *o = (unsigned long long)((TPM2_RC_HMAC) | 0);  /* check that TPM2_RC_HMAC is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_INITIALIZE(unsigned long long *o)
{
  int n = (TPM2_RC_INITIALIZE) <= 0;
  *o = (unsigned long long)((TPM2_RC_INITIALIZE) | 0);  /* check that TPM2_RC_INITIALIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_INSUFFICIENT(unsigned long long *o)
{
  int n = (TPM2_RC_INSUFFICIENT) <= 0;
  *o = (unsigned long long)((TPM2_RC_INSUFFICIENT) | 0);  /* check that TPM2_RC_INSUFFICIENT is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_INTEGRITY(unsigned long long *o)
{
  int n = (TPM2_RC_INTEGRITY) <= 0;
  *o = (unsigned long long)((TPM2_RC_INTEGRITY) | 0);  /* check that TPM2_RC_INTEGRITY is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_KDF(unsigned long long *o)
{
  int n = (TPM2_RC_KDF) <= 0;
  *o = (unsigned long long)((TPM2_RC_KDF) | 0);  /* check that TPM2_RC_KDF is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_KEY(unsigned long long *o)
{
  int n = (TPM2_RC_KEY) <= 0;
  *o = (unsigned long long)((TPM2_RC_KEY) | 0);  /* check that TPM2_RC_KEY is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_KEY_SIZE(unsigned long long *o)
{
  int n = (TPM2_RC_KEY_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_RC_KEY_SIZE) | 0);  /* check that TPM2_RC_KEY_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_LOCALITY(unsigned long long *o)
{
  int n = (TPM2_RC_LOCALITY) <= 0;
  *o = (unsigned long long)((TPM2_RC_LOCALITY) | 0);  /* check that TPM2_RC_LOCALITY is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_LOCKOUT(unsigned long long *o)
{
  int n = (TPM2_RC_LOCKOUT) <= 0;
  *o = (unsigned long long)((TPM2_RC_LOCKOUT) | 0);  /* check that TPM2_RC_LOCKOUT is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_MAX_FM0(unsigned long long *o)
{
  int n = (TPM2_RC_MAX_FM0) <= 0;
  *o = (unsigned long long)((TPM2_RC_MAX_FM0) | 0);  /* check that TPM2_RC_MAX_FM0 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_MEMORY(unsigned long long *o)
{
  int n = (TPM2_RC_MEMORY) <= 0;
  *o = (unsigned long long)((TPM2_RC_MEMORY) | 0);  /* check that TPM2_RC_MEMORY is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_MGF(unsigned long long *o)
{
  int n = (TPM2_RC_MGF) <= 0;
  *o = (unsigned long long)((TPM2_RC_MGF) | 0);  /* check that TPM2_RC_MGF is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_MODE(unsigned long long *o)
{
  int n = (TPM2_RC_MODE) <= 0;
  *o = (unsigned long long)((TPM2_RC_MODE) | 0);  /* check that TPM2_RC_MODE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_NEEDS_TEST(unsigned long long *o)
{
  int n = (TPM2_RC_NEEDS_TEST) <= 0;
  *o = (unsigned long long)((TPM2_RC_NEEDS_TEST) | 0);  /* check that TPM2_RC_NEEDS_TEST is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_NONCE(unsigned long long *o)
{
  int n = (TPM2_RC_NONCE) <= 0;
  *o = (unsigned long long)((TPM2_RC_NONCE) | 0);  /* check that TPM2_RC_NONCE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_NOT_USED(unsigned long long *o)
{
  int n = (TPM2_RC_NOT_USED) <= 0;
  *o = (unsigned long long)((TPM2_RC_NOT_USED) | 0);  /* check that TPM2_RC_NOT_USED is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_NO_RESULT(unsigned long long *o)
{
  int n = (TPM2_RC_NO_RESULT) <= 0;
  *o = (unsigned long long)((TPM2_RC_NO_RESULT) | 0);  /* check that TPM2_RC_NO_RESULT is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_NV_AUTHORIZATION(unsigned long long *o)
{
  int n = (TPM2_RC_NV_AUTHORIZATION) <= 0;
  *o = (unsigned long long)((TPM2_RC_NV_AUTHORIZATION) | 0);  /* check that TPM2_RC_NV_AUTHORIZATION is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_NV_DEFINED(unsigned long long *o)
{
  int n = (TPM2_RC_NV_DEFINED) <= 0;
  *o = (unsigned long long)((TPM2_RC_NV_DEFINED) | 0);  /* check that TPM2_RC_NV_DEFINED is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_NV_LOCKED(unsigned long long *o)
{
  int n = (TPM2_RC_NV_LOCKED) <= 0;
  *o = (unsigned long long)((TPM2_RC_NV_LOCKED) | 0);  /* check that TPM2_RC_NV_LOCKED is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_NV_RANGE(unsigned long long *o)
{
  int n = (TPM2_RC_NV_RANGE) <= 0;
  *o = (unsigned long long)((TPM2_RC_NV_RANGE) | 0);  /* check that TPM2_RC_NV_RANGE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_NV_RATE(unsigned long long *o)
{
  int n = (TPM2_RC_NV_RATE) <= 0;
  *o = (unsigned long long)((TPM2_RC_NV_RATE) | 0);  /* check that TPM2_RC_NV_RATE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_NV_SIZE(unsigned long long *o)
{
  int n = (TPM2_RC_NV_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_RC_NV_SIZE) | 0);  /* check that TPM2_RC_NV_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_NV_SPACE(unsigned long long *o)
{
  int n = (TPM2_RC_NV_SPACE) <= 0;
  *o = (unsigned long long)((TPM2_RC_NV_SPACE) | 0);  /* check that TPM2_RC_NV_SPACE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_NV_UNAVAILABLE(unsigned long long *o)
{
  int n = (TPM2_RC_NV_UNAVAILABLE) <= 0;
  *o = (unsigned long long)((TPM2_RC_NV_UNAVAILABLE) | 0);  /* check that TPM2_RC_NV_UNAVAILABLE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_NV_UNINITIALIZED(unsigned long long *o)
{
  int n = (TPM2_RC_NV_UNINITIALIZED) <= 0;
  *o = (unsigned long long)((TPM2_RC_NV_UNINITIALIZED) | 0);  /* check that TPM2_RC_NV_UNINITIALIZED is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_N_MASK(unsigned long long *o)
{
  int n = (TPM2_RC_N_MASK) <= 0;
  *o = (unsigned long long)((TPM2_RC_N_MASK) | 0);  /* check that TPM2_RC_N_MASK is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_OBJECT_HANDLES(unsigned long long *o)
{
  int n = (TPM2_RC_OBJECT_HANDLES) <= 0;
  *o = (unsigned long long)((TPM2_RC_OBJECT_HANDLES) | 0);  /* check that TPM2_RC_OBJECT_HANDLES is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_OBJECT_MEMORY(unsigned long long *o)
{
  int n = (TPM2_RC_OBJECT_MEMORY) <= 0;
  *o = (unsigned long long)((TPM2_RC_OBJECT_MEMORY) | 0);  /* check that TPM2_RC_OBJECT_MEMORY is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_P(unsigned long long *o)
{
  int n = (TPM2_RC_P) <= 0;
  *o = (unsigned long long)((TPM2_RC_P) | 0);  /* check that TPM2_RC_P is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_PARENT(unsigned long long *o)
{
  int n = (TPM2_RC_PARENT) <= 0;
  *o = (unsigned long long)((TPM2_RC_PARENT) | 0);  /* check that TPM2_RC_PARENT is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_PCR(unsigned long long *o)
{
  int n = (TPM2_RC_PCR) <= 0;
  *o = (unsigned long long)((TPM2_RC_PCR) | 0);  /* check that TPM2_RC_PCR is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_PCR_CHANGED(unsigned long long *o)
{
  int n = (TPM2_RC_PCR_CHANGED) <= 0;
  *o = (unsigned long long)((TPM2_RC_PCR_CHANGED) | 0);  /* check that TPM2_RC_PCR_CHANGED is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_POLICY(unsigned long long *o)
{
  int n = (TPM2_RC_POLICY) <= 0;
  *o = (unsigned long long)((TPM2_RC_POLICY) | 0);  /* check that TPM2_RC_POLICY is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_POLICY_CC(unsigned long long *o)
{
  int n = (TPM2_RC_POLICY_CC) <= 0;
  *o = (unsigned long long)((TPM2_RC_POLICY_CC) | 0);  /* check that TPM2_RC_POLICY_CC is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_POLICY_FAIL(unsigned long long *o)
{
  int n = (TPM2_RC_POLICY_FAIL) <= 0;
  *o = (unsigned long long)((TPM2_RC_POLICY_FAIL) | 0);  /* check that TPM2_RC_POLICY_FAIL is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_PP(unsigned long long *o)
{
  int n = (TPM2_RC_PP) <= 0;
  *o = (unsigned long long)((TPM2_RC_PP) | 0);  /* check that TPM2_RC_PP is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_PRIVATE(unsigned long long *o)
{
  int n = (TPM2_RC_PRIVATE) <= 0;
  *o = (unsigned long long)((TPM2_RC_PRIVATE) | 0);  /* check that TPM2_RC_PRIVATE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_RANGE(unsigned long long *o)
{
  int n = (TPM2_RC_RANGE) <= 0;
  *o = (unsigned long long)((TPM2_RC_RANGE) | 0);  /* check that TPM2_RC_RANGE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_REBOOT(unsigned long long *o)
{
  int n = (TPM2_RC_REBOOT) <= 0;
  *o = (unsigned long long)((TPM2_RC_REBOOT) | 0);  /* check that TPM2_RC_REBOOT is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_REFERENCE_H0(unsigned long long *o)
{
  int n = (TPM2_RC_REFERENCE_H0) <= 0;
  *o = (unsigned long long)((TPM2_RC_REFERENCE_H0) | 0);  /* check that TPM2_RC_REFERENCE_H0 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_REFERENCE_H1(unsigned long long *o)
{
  int n = (TPM2_RC_REFERENCE_H1) <= 0;
  *o = (unsigned long long)((TPM2_RC_REFERENCE_H1) | 0);  /* check that TPM2_RC_REFERENCE_H1 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_REFERENCE_H2(unsigned long long *o)
{
  int n = (TPM2_RC_REFERENCE_H2) <= 0;
  *o = (unsigned long long)((TPM2_RC_REFERENCE_H2) | 0);  /* check that TPM2_RC_REFERENCE_H2 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_REFERENCE_H3(unsigned long long *o)
{
  int n = (TPM2_RC_REFERENCE_H3) <= 0;
  *o = (unsigned long long)((TPM2_RC_REFERENCE_H3) | 0);  /* check that TPM2_RC_REFERENCE_H3 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_REFERENCE_H4(unsigned long long *o)
{
  int n = (TPM2_RC_REFERENCE_H4) <= 0;
  *o = (unsigned long long)((TPM2_RC_REFERENCE_H4) | 0);  /* check that TPM2_RC_REFERENCE_H4 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_REFERENCE_H5(unsigned long long *o)
{
  int n = (TPM2_RC_REFERENCE_H5) <= 0;
  *o = (unsigned long long)((TPM2_RC_REFERENCE_H5) | 0);  /* check that TPM2_RC_REFERENCE_H5 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_REFERENCE_H6(unsigned long long *o)
{
  int n = (TPM2_RC_REFERENCE_H6) <= 0;
  *o = (unsigned long long)((TPM2_RC_REFERENCE_H6) | 0);  /* check that TPM2_RC_REFERENCE_H6 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_REFERENCE_S0(unsigned long long *o)
{
  int n = (TPM2_RC_REFERENCE_S0) <= 0;
  *o = (unsigned long long)((TPM2_RC_REFERENCE_S0) | 0);  /* check that TPM2_RC_REFERENCE_S0 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_REFERENCE_S1(unsigned long long *o)
{
  int n = (TPM2_RC_REFERENCE_S1) <= 0;
  *o = (unsigned long long)((TPM2_RC_REFERENCE_S1) | 0);  /* check that TPM2_RC_REFERENCE_S1 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_REFERENCE_S2(unsigned long long *o)
{
  int n = (TPM2_RC_REFERENCE_S2) <= 0;
  *o = (unsigned long long)((TPM2_RC_REFERENCE_S2) | 0);  /* check that TPM2_RC_REFERENCE_S2 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_REFERENCE_S3(unsigned long long *o)
{
  int n = (TPM2_RC_REFERENCE_S3) <= 0;
  *o = (unsigned long long)((TPM2_RC_REFERENCE_S3) | 0);  /* check that TPM2_RC_REFERENCE_S3 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_REFERENCE_S4(unsigned long long *o)
{
  int n = (TPM2_RC_REFERENCE_S4) <= 0;
  *o = (unsigned long long)((TPM2_RC_REFERENCE_S4) | 0);  /* check that TPM2_RC_REFERENCE_S4 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_REFERENCE_S5(unsigned long long *o)
{
  int n = (TPM2_RC_REFERENCE_S5) <= 0;
  *o = (unsigned long long)((TPM2_RC_REFERENCE_S5) | 0);  /* check that TPM2_RC_REFERENCE_S5 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_REFERENCE_S6(unsigned long long *o)
{
  int n = (TPM2_RC_REFERENCE_S6) <= 0;
  *o = (unsigned long long)((TPM2_RC_REFERENCE_S6) | 0);  /* check that TPM2_RC_REFERENCE_S6 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_RESERVED_BITS(unsigned long long *o)
{
  int n = (TPM2_RC_RESERVED_BITS) <= 0;
  *o = (unsigned long long)((TPM2_RC_RESERVED_BITS) | 0);  /* check that TPM2_RC_RESERVED_BITS is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_RETRY(unsigned long long *o)
{
  int n = (TPM2_RC_RETRY) <= 0;
  *o = (unsigned long long)((TPM2_RC_RETRY) | 0);  /* check that TPM2_RC_RETRY is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_S(unsigned long long *o)
{
  int n = (TPM2_RC_S) <= 0;
  *o = (unsigned long long)((TPM2_RC_S) | 0);  /* check that TPM2_RC_S is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_SCHEME(unsigned long long *o)
{
  int n = (TPM2_RC_SCHEME) <= 0;
  *o = (unsigned long long)((TPM2_RC_SCHEME) | 0);  /* check that TPM2_RC_SCHEME is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_SELECTOR(unsigned long long *o)
{
  int n = (TPM2_RC_SELECTOR) <= 0;
  *o = (unsigned long long)((TPM2_RC_SELECTOR) | 0);  /* check that TPM2_RC_SELECTOR is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_SENSITIVE(unsigned long long *o)
{
  int n = (TPM2_RC_SENSITIVE) <= 0;
  *o = (unsigned long long)((TPM2_RC_SENSITIVE) | 0);  /* check that TPM2_RC_SENSITIVE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_SEQUENCE(unsigned long long *o)
{
  int n = (TPM2_RC_SEQUENCE) <= 0;
  *o = (unsigned long long)((TPM2_RC_SEQUENCE) | 0);  /* check that TPM2_RC_SEQUENCE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_SESSION_HANDLES(unsigned long long *o)
{
  int n = (TPM2_RC_SESSION_HANDLES) <= 0;
  *o = (unsigned long long)((TPM2_RC_SESSION_HANDLES) | 0);  /* check that TPM2_RC_SESSION_HANDLES is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_SESSION_MEMORY(unsigned long long *o)
{
  int n = (TPM2_RC_SESSION_MEMORY) <= 0;
  *o = (unsigned long long)((TPM2_RC_SESSION_MEMORY) | 0);  /* check that TPM2_RC_SESSION_MEMORY is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_SIGNATURE(unsigned long long *o)
{
  int n = (TPM2_RC_SIGNATURE) <= 0;
  *o = (unsigned long long)((TPM2_RC_SIGNATURE) | 0);  /* check that TPM2_RC_SIGNATURE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_SIZE(unsigned long long *o)
{
  int n = (TPM2_RC_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_RC_SIZE) | 0);  /* check that TPM2_RC_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_SUCCESS(unsigned long long *o)
{
  int n = (TPM2_RC_SUCCESS) <= 0;
  *o = (unsigned long long)((TPM2_RC_SUCCESS) | 0);  /* check that TPM2_RC_SUCCESS is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_SYMMETRIC(unsigned long long *o)
{
  int n = (TPM2_RC_SYMMETRIC) <= 0;
  *o = (unsigned long long)((TPM2_RC_SYMMETRIC) | 0);  /* check that TPM2_RC_SYMMETRIC is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_TAG(unsigned long long *o)
{
  int n = (TPM2_RC_TAG) <= 0;
  *o = (unsigned long long)((TPM2_RC_TAG) | 0);  /* check that TPM2_RC_TAG is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_TESTING(unsigned long long *o)
{
  int n = (TPM2_RC_TESTING) <= 0;
  *o = (unsigned long long)((TPM2_RC_TESTING) | 0);  /* check that TPM2_RC_TESTING is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_TICKET(unsigned long long *o)
{
  int n = (TPM2_RC_TICKET) <= 0;
  *o = (unsigned long long)((TPM2_RC_TICKET) | 0);  /* check that TPM2_RC_TICKET is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_TOO_MANY_CONTEXTS(unsigned long long *o)
{
  int n = (TPM2_RC_TOO_MANY_CONTEXTS) <= 0;
  *o = (unsigned long long)((TPM2_RC_TOO_MANY_CONTEXTS) | 0);  /* check that TPM2_RC_TOO_MANY_CONTEXTS is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_TYPE(unsigned long long *o)
{
  int n = (TPM2_RC_TYPE) <= 0;
  *o = (unsigned long long)((TPM2_RC_TYPE) | 0);  /* check that TPM2_RC_TYPE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_UNBALANCED(unsigned long long *o)
{
  int n = (TPM2_RC_UNBALANCED) <= 0;
  *o = (unsigned long long)((TPM2_RC_UNBALANCED) | 0);  /* check that TPM2_RC_UNBALANCED is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_UPGRADE(unsigned long long *o)
{
  int n = (TPM2_RC_UPGRADE) <= 0;
  *o = (unsigned long long)((TPM2_RC_UPGRADE) | 0);  /* check that TPM2_RC_UPGRADE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_VALUE(unsigned long long *o)
{
  int n = (TPM2_RC_VALUE) <= 0;
  *o = (unsigned long long)((TPM2_RC_VALUE) | 0);  /* check that TPM2_RC_VALUE is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_VER1(unsigned long long *o)
{
  int n = (TPM2_RC_VER1) <= 0;
  *o = (unsigned long long)((TPM2_RC_VER1) | 0);  /* check that TPM2_RC_VER1 is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_WARN(unsigned long long *o)
{
  int n = (TPM2_RC_WARN) <= 0;
  *o = (unsigned long long)((TPM2_RC_WARN) | 0);  /* check that TPM2_RC_WARN is an integer */
  return n;
}

static int _cffi_const_TPM2_RC_YIELDED(unsigned long long *o)
{
  int n = (TPM2_RC_YIELDED) <= 0;
  *o = (unsigned long long)((TPM2_RC_YIELDED) | 0);  /* check that TPM2_RC_YIELDED is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ACT_0(unsigned long long *o)
{
  int n = (TPM2_RH_ACT_0) <= 0;
  *o = (unsigned long long)((TPM2_RH_ACT_0) | 0);  /* check that TPM2_RH_ACT_0 is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ACT_1(unsigned long long *o)
{
  int n = (TPM2_RH_ACT_1) <= 0;
  *o = (unsigned long long)((TPM2_RH_ACT_1) | 0);  /* check that TPM2_RH_ACT_1 is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ACT_2(unsigned long long *o)
{
  int n = (TPM2_RH_ACT_2) <= 0;
  *o = (unsigned long long)((TPM2_RH_ACT_2) | 0);  /* check that TPM2_RH_ACT_2 is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ACT_3(unsigned long long *o)
{
  int n = (TPM2_RH_ACT_3) <= 0;
  *o = (unsigned long long)((TPM2_RH_ACT_3) | 0);  /* check that TPM2_RH_ACT_3 is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ACT_4(unsigned long long *o)
{
  int n = (TPM2_RH_ACT_4) <= 0;
  *o = (unsigned long long)((TPM2_RH_ACT_4) | 0);  /* check that TPM2_RH_ACT_4 is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ACT_5(unsigned long long *o)
{
  int n = (TPM2_RH_ACT_5) <= 0;
  *o = (unsigned long long)((TPM2_RH_ACT_5) | 0);  /* check that TPM2_RH_ACT_5 is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ACT_6(unsigned long long *o)
{
  int n = (TPM2_RH_ACT_6) <= 0;
  *o = (unsigned long long)((TPM2_RH_ACT_6) | 0);  /* check that TPM2_RH_ACT_6 is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ACT_7(unsigned long long *o)
{
  int n = (TPM2_RH_ACT_7) <= 0;
  *o = (unsigned long long)((TPM2_RH_ACT_7) | 0);  /* check that TPM2_RH_ACT_7 is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ACT_8(unsigned long long *o)
{
  int n = (TPM2_RH_ACT_8) <= 0;
  *o = (unsigned long long)((TPM2_RH_ACT_8) | 0);  /* check that TPM2_RH_ACT_8 is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ACT_9(unsigned long long *o)
{
  int n = (TPM2_RH_ACT_9) <= 0;
  *o = (unsigned long long)((TPM2_RH_ACT_9) | 0);  /* check that TPM2_RH_ACT_9 is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ACT_A(unsigned long long *o)
{
  int n = (TPM2_RH_ACT_A) <= 0;
  *o = (unsigned long long)((TPM2_RH_ACT_A) | 0);  /* check that TPM2_RH_ACT_A is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ACT_B(unsigned long long *o)
{
  int n = (TPM2_RH_ACT_B) <= 0;
  *o = (unsigned long long)((TPM2_RH_ACT_B) | 0);  /* check that TPM2_RH_ACT_B is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ACT_C(unsigned long long *o)
{
  int n = (TPM2_RH_ACT_C) <= 0;
  *o = (unsigned long long)((TPM2_RH_ACT_C) | 0);  /* check that TPM2_RH_ACT_C is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ACT_D(unsigned long long *o)
{
  int n = (TPM2_RH_ACT_D) <= 0;
  *o = (unsigned long long)((TPM2_RH_ACT_D) | 0);  /* check that TPM2_RH_ACT_D is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ACT_E(unsigned long long *o)
{
  int n = (TPM2_RH_ACT_E) <= 0;
  *o = (unsigned long long)((TPM2_RH_ACT_E) | 0);  /* check that TPM2_RH_ACT_E is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ACT_F(unsigned long long *o)
{
  int n = (TPM2_RH_ACT_F) <= 0;
  *o = (unsigned long long)((TPM2_RH_ACT_F) | 0);  /* check that TPM2_RH_ACT_F is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ADMIN(unsigned long long *o)
{
  int n = (TPM2_RH_ADMIN) <= 0;
  *o = (unsigned long long)((TPM2_RH_ADMIN) | 0);  /* check that TPM2_RH_ADMIN is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_AUTH_00(unsigned long long *o)
{
  int n = (TPM2_RH_AUTH_00) <= 0;
  *o = (unsigned long long)((TPM2_RH_AUTH_00) | 0);  /* check that TPM2_RH_AUTH_00 is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_AUTH_FF(unsigned long long *o)
{
  int n = (TPM2_RH_AUTH_FF) <= 0;
  *o = (unsigned long long)((TPM2_RH_AUTH_FF) | 0);  /* check that TPM2_RH_AUTH_FF is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_EK(unsigned long long *o)
{
  int n = (TPM2_RH_EK) <= 0;
  *o = (unsigned long long)((TPM2_RH_EK) | 0);  /* check that TPM2_RH_EK is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_ENDORSEMENT(unsigned long long *o)
{
  int n = (TPM2_RH_ENDORSEMENT) <= 0;
  *o = (unsigned long long)((TPM2_RH_ENDORSEMENT) | 0);  /* check that TPM2_RH_ENDORSEMENT is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_FIRST(unsigned long long *o)
{
  int n = (TPM2_RH_FIRST) <= 0;
  *o = (unsigned long long)((TPM2_RH_FIRST) | 0);  /* check that TPM2_RH_FIRST is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_LAST(unsigned long long *o)
{
  int n = (TPM2_RH_LAST) <= 0;
  *o = (unsigned long long)((TPM2_RH_LAST) | 0);  /* check that TPM2_RH_LAST is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_LOCKOUT(unsigned long long *o)
{
  int n = (TPM2_RH_LOCKOUT) <= 0;
  *o = (unsigned long long)((TPM2_RH_LOCKOUT) | 0);  /* check that TPM2_RH_LOCKOUT is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_NULL(unsigned long long *o)
{
  int n = (TPM2_RH_NULL) <= 0;
  *o = (unsigned long long)((TPM2_RH_NULL) | 0);  /* check that TPM2_RH_NULL is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_OPERATOR(unsigned long long *o)
{
  int n = (TPM2_RH_OPERATOR) <= 0;
  *o = (unsigned long long)((TPM2_RH_OPERATOR) | 0);  /* check that TPM2_RH_OPERATOR is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_OWNER(unsigned long long *o)
{
  int n = (TPM2_RH_OWNER) <= 0;
  *o = (unsigned long long)((TPM2_RH_OWNER) | 0);  /* check that TPM2_RH_OWNER is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_PLATFORM(unsigned long long *o)
{
  int n = (TPM2_RH_PLATFORM) <= 0;
  *o = (unsigned long long)((TPM2_RH_PLATFORM) | 0);  /* check that TPM2_RH_PLATFORM is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_PLATFORM_NV(unsigned long long *o)
{
  int n = (TPM2_RH_PLATFORM_NV) <= 0;
  *o = (unsigned long long)((TPM2_RH_PLATFORM_NV) | 0);  /* check that TPM2_RH_PLATFORM_NV is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_PW(unsigned long long *o)
{
  int n = (TPM2_RH_PW) <= 0;
  *o = (unsigned long long)((TPM2_RH_PW) | 0);  /* check that TPM2_RH_PW is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_REVOKE(unsigned long long *o)
{
  int n = (TPM2_RH_REVOKE) <= 0;
  *o = (unsigned long long)((TPM2_RH_REVOKE) | 0);  /* check that TPM2_RH_REVOKE is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_SRK(unsigned long long *o)
{
  int n = (TPM2_RH_SRK) <= 0;
  *o = (unsigned long long)((TPM2_RH_SRK) | 0);  /* check that TPM2_RH_SRK is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_TRANSPORT(unsigned long long *o)
{
  int n = (TPM2_RH_TRANSPORT) <= 0;
  *o = (unsigned long long)((TPM2_RH_TRANSPORT) | 0);  /* check that TPM2_RH_TRANSPORT is an integer */
  return n;
}

static int _cffi_const_TPM2_RH_UNASSIGNED(unsigned long long *o)
{
  int n = (TPM2_RH_UNASSIGNED) <= 0;
  *o = (unsigned long long)((TPM2_RH_UNASSIGNED) | 0);  /* check that TPM2_RH_UNASSIGNED is an integer */
  return n;
}

static int _cffi_const_TPM2_RS_PW(unsigned long long *o)
{
  int n = (TPM2_RS_PW) <= 0;
  *o = (unsigned long long)((TPM2_RS_PW) | 0);  /* check that TPM2_RS_PW is an integer */
  return n;
}

static int _cffi_const_TPM2_SE_HMAC(unsigned long long *o)
{
  int n = (TPM2_SE_HMAC) <= 0;
  *o = (unsigned long long)((TPM2_SE_HMAC) | 0);  /* check that TPM2_SE_HMAC is an integer */
  return n;
}

static int _cffi_const_TPM2_SE_POLICY(unsigned long long *o)
{
  int n = (TPM2_SE_POLICY) <= 0;
  *o = (unsigned long long)((TPM2_SE_POLICY) | 0);  /* check that TPM2_SE_POLICY is an integer */
  return n;
}

static int _cffi_const_TPM2_SE_TRIAL(unsigned long long *o)
{
  int n = (TPM2_SE_TRIAL) <= 0;
  *o = (unsigned long long)((TPM2_SE_TRIAL) | 0);  /* check that TPM2_SE_TRIAL is an integer */
  return n;
}

static int _cffi_const_TPM2_SHA1_DIGEST_SIZE(unsigned long long *o)
{
  int n = (TPM2_SHA1_DIGEST_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_SHA1_DIGEST_SIZE) | 0);  /* check that TPM2_SHA1_DIGEST_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_SHA256_DIGEST_SIZE(unsigned long long *o)
{
  int n = (TPM2_SHA256_DIGEST_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_SHA256_DIGEST_SIZE) | 0);  /* check that TPM2_SHA256_DIGEST_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_SHA384_DIGEST_SIZE(unsigned long long *o)
{
  int n = (TPM2_SHA384_DIGEST_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_SHA384_DIGEST_SIZE) | 0);  /* check that TPM2_SHA384_DIGEST_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_SHA512_DIGEST_SIZE(unsigned long long *o)
{
  int n = (TPM2_SHA512_DIGEST_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_SHA512_DIGEST_SIZE) | 0);  /* check that TPM2_SHA512_DIGEST_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_SHA_DIGEST_SIZE(unsigned long long *o)
{
  int n = (TPM2_SHA_DIGEST_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_SHA_DIGEST_SIZE) | 0);  /* check that TPM2_SHA_DIGEST_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_SM3_256_DIGEST_SIZE(unsigned long long *o)
{
  int n = (TPM2_SM3_256_DIGEST_SIZE) <= 0;
  *o = (unsigned long long)((TPM2_SM3_256_DIGEST_SIZE) | 0);  /* check that TPM2_SM3_256_DIGEST_SIZE is an integer */
  return n;
}

static int _cffi_const_TPM2_SPEC_DAY_OF_YEAR(unsigned long long *o)
{
  int n = (TPM2_SPEC_DAY_OF_YEAR) <= 0;
  *o = (unsigned long long)((TPM2_SPEC_DAY_OF_YEAR) | 0);  /* check that TPM2_SPEC_DAY_OF_YEAR is an integer */
  return n;
}

static int _cffi_const_TPM2_SPEC_FAMILY(unsigned long long *o)
{
  int n = (TPM2_SPEC_FAMILY) <= 0;
  *o = (unsigned long long)((TPM2_SPEC_FAMILY) | 0);  /* check that TPM2_SPEC_FAMILY is an integer */
  return n;
}

static int _cffi_const_TPM2_SPEC_LEVEL(unsigned long long *o)
{
  int n = (TPM2_SPEC_LEVEL) <= 0;
  *o = (unsigned long long)((TPM2_SPEC_LEVEL) | 0);  /* check that TPM2_SPEC_LEVEL is an integer */
  return n;
}

static int _cffi_const_TPM2_SPEC_VERSION(unsigned long long *o)
{
  int n = (TPM2_SPEC_VERSION) <= 0;
  *o = (unsigned long long)((TPM2_SPEC_VERSION) | 0);  /* check that TPM2_SPEC_VERSION is an integer */
  return n;
}

static int _cffi_const_TPM2_SPEC_YEAR(unsigned long long *o)
{
  int n = (TPM2_SPEC_YEAR) <= 0;
  *o = (unsigned long long)((TPM2_SPEC_YEAR) | 0);  /* check that TPM2_SPEC_YEAR is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_ATTEST_CERTIFY(unsigned long long *o)
{
  int n = (TPM2_ST_ATTEST_CERTIFY) <= 0;
  *o = (unsigned long long)((TPM2_ST_ATTEST_CERTIFY) | 0);  /* check that TPM2_ST_ATTEST_CERTIFY is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_ATTEST_COMMAND_AUDIT(unsigned long long *o)
{
  int n = (TPM2_ST_ATTEST_COMMAND_AUDIT) <= 0;
  *o = (unsigned long long)((TPM2_ST_ATTEST_COMMAND_AUDIT) | 0);  /* check that TPM2_ST_ATTEST_COMMAND_AUDIT is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_ATTEST_CREATION(unsigned long long *o)
{
  int n = (TPM2_ST_ATTEST_CREATION) <= 0;
  *o = (unsigned long long)((TPM2_ST_ATTEST_CREATION) | 0);  /* check that TPM2_ST_ATTEST_CREATION is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_ATTEST_NV(unsigned long long *o)
{
  int n = (TPM2_ST_ATTEST_NV) <= 0;
  *o = (unsigned long long)((TPM2_ST_ATTEST_NV) | 0);  /* check that TPM2_ST_ATTEST_NV is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_ATTEST_QUOTE(unsigned long long *o)
{
  int n = (TPM2_ST_ATTEST_QUOTE) <= 0;
  *o = (unsigned long long)((TPM2_ST_ATTEST_QUOTE) | 0);  /* check that TPM2_ST_ATTEST_QUOTE is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_ATTEST_SESSION_AUDIT(unsigned long long *o)
{
  int n = (TPM2_ST_ATTEST_SESSION_AUDIT) <= 0;
  *o = (unsigned long long)((TPM2_ST_ATTEST_SESSION_AUDIT) | 0);  /* check that TPM2_ST_ATTEST_SESSION_AUDIT is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_ATTEST_TIME(unsigned long long *o)
{
  int n = (TPM2_ST_ATTEST_TIME) <= 0;
  *o = (unsigned long long)((TPM2_ST_ATTEST_TIME) | 0);  /* check that TPM2_ST_ATTEST_TIME is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_AUTH_SECRET(unsigned long long *o)
{
  int n = (TPM2_ST_AUTH_SECRET) <= 0;
  *o = (unsigned long long)((TPM2_ST_AUTH_SECRET) | 0);  /* check that TPM2_ST_AUTH_SECRET is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_AUTH_SIGNED(unsigned long long *o)
{
  int n = (TPM2_ST_AUTH_SIGNED) <= 0;
  *o = (unsigned long long)((TPM2_ST_AUTH_SIGNED) | 0);  /* check that TPM2_ST_AUTH_SIGNED is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_CREATION(unsigned long long *o)
{
  int n = (TPM2_ST_CREATION) <= 0;
  *o = (unsigned long long)((TPM2_ST_CREATION) | 0);  /* check that TPM2_ST_CREATION is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_FU_MANIFEST(unsigned long long *o)
{
  int n = (TPM2_ST_FU_MANIFEST) <= 0;
  *o = (unsigned long long)((TPM2_ST_FU_MANIFEST) | 0);  /* check that TPM2_ST_FU_MANIFEST is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_HASHCHECK(unsigned long long *o)
{
  int n = (TPM2_ST_HASHCHECK) <= 0;
  *o = (unsigned long long)((TPM2_ST_HASHCHECK) | 0);  /* check that TPM2_ST_HASHCHECK is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_NO_SESSIONS(unsigned long long *o)
{
  int n = (TPM2_ST_NO_SESSIONS) <= 0;
  *o = (unsigned long long)((TPM2_ST_NO_SESSIONS) | 0);  /* check that TPM2_ST_NO_SESSIONS is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_NULL(unsigned long long *o)
{
  int n = (TPM2_ST_NULL) <= 0;
  *o = (unsigned long long)((TPM2_ST_NULL) | 0);  /* check that TPM2_ST_NULL is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_RESERVED1(unsigned long long *o)
{
  int n = (TPM2_ST_RESERVED1) <= 0;
  *o = (unsigned long long)((TPM2_ST_RESERVED1) | 0);  /* check that TPM2_ST_RESERVED1 is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_RESERVED2(unsigned long long *o)
{
  int n = (TPM2_ST_RESERVED2) <= 0;
  *o = (unsigned long long)((TPM2_ST_RESERVED2) | 0);  /* check that TPM2_ST_RESERVED2 is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_RESERVED3(unsigned long long *o)
{
  int n = (TPM2_ST_RESERVED3) <= 0;
  *o = (unsigned long long)((TPM2_ST_RESERVED3) | 0);  /* check that TPM2_ST_RESERVED3 is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_RSP_COMMAND(unsigned long long *o)
{
  int n = (TPM2_ST_RSP_COMMAND) <= 0;
  *o = (unsigned long long)((TPM2_ST_RSP_COMMAND) | 0);  /* check that TPM2_ST_RSP_COMMAND is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_SESSIONS(unsigned long long *o)
{
  int n = (TPM2_ST_SESSIONS) <= 0;
  *o = (unsigned long long)((TPM2_ST_SESSIONS) | 0);  /* check that TPM2_ST_SESSIONS is an integer */
  return n;
}

static int _cffi_const_TPM2_ST_VERIFIED(unsigned long long *o)
{
  int n = (TPM2_ST_VERIFIED) <= 0;
  *o = (unsigned long long)((TPM2_ST_VERIFIED) | 0);  /* check that TPM2_ST_VERIFIED is an integer */
  return n;
}

static int _cffi_const_TPM2_SU_CLEAR(unsigned long long *o)
{
  int n = (TPM2_SU_CLEAR) <= 0;
  *o = (unsigned long long)((TPM2_SU_CLEAR) | 0);  /* check that TPM2_SU_CLEAR is an integer */
  return n;
}

static int _cffi_const_TPM2_SU_STATE(unsigned long long *o)
{
  int n = (TPM2_SU_STATE) <= 0;
  *o = (unsigned long long)((TPM2_SU_STATE) | 0);  /* check that TPM2_SU_STATE is an integer */
  return n;
}

static int _cffi_const_TPM2_TRANSIENT_FIRST(unsigned long long *o)
{
  int n = (TPM2_TRANSIENT_FIRST) <= 0;
  *o = (unsigned long long)((TPM2_TRANSIENT_FIRST) | 0);  /* check that TPM2_TRANSIENT_FIRST is an integer */
  return n;
}

static int _cffi_const_TPM2_TRANSIENT_LAST(unsigned long long *o)
{
  int n = (TPM2_TRANSIENT_LAST) <= 0;
  *o = (unsigned long long)((TPM2_TRANSIENT_LAST) | 0);  /* check that TPM2_TRANSIENT_LAST is an integer */
  return n;
}

static int _cffi_const_TPM2_YES(unsigned long long *o)
{
  int n = (TPM2_YES) <= 0;
  *o = (unsigned long long)((TPM2_YES) | 0);  /* check that TPM2_YES is an integer */
  return n;
}

static int _cffi_const_TPMA_ACT_PRESERVESIGNALED(unsigned long long *o)
{
  int n = (TPMA_ACT_PRESERVESIGNALED) <= 0;
  *o = (unsigned long long)((TPMA_ACT_PRESERVESIGNALED) | 0);  /* check that TPMA_ACT_PRESERVESIGNALED is an integer */
  return n;
}

static int _cffi_const_TPMA_ACT_RESERVED_MASK(unsigned long long *o)
{
  int n = (TPMA_ACT_RESERVED_MASK) <= 0;
  *o = (unsigned long long)((TPMA_ACT_RESERVED_MASK) | 0);  /* check that TPMA_ACT_RESERVED_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_ACT_SIGNALED(unsigned long long *o)
{
  int n = (TPMA_ACT_SIGNALED) <= 0;
  *o = (unsigned long long)((TPMA_ACT_SIGNALED) | 0);  /* check that TPMA_ACT_SIGNALED is an integer */
  return n;
}

static int _cffi_const_TPMA_ALGORITHM_ASYMMETRIC(unsigned long long *o)
{
  int n = (TPMA_ALGORITHM_ASYMMETRIC) <= 0;
  *o = (unsigned long long)((TPMA_ALGORITHM_ASYMMETRIC) | 0);  /* check that TPMA_ALGORITHM_ASYMMETRIC is an integer */
  return n;
}

static int _cffi_const_TPMA_ALGORITHM_ENCRYPTING(unsigned long long *o)
{
  int n = (TPMA_ALGORITHM_ENCRYPTING) <= 0;
  *o = (unsigned long long)((TPMA_ALGORITHM_ENCRYPTING) | 0);  /* check that TPMA_ALGORITHM_ENCRYPTING is an integer */
  return n;
}

static int _cffi_const_TPMA_ALGORITHM_HASH(unsigned long long *o)
{
  int n = (TPMA_ALGORITHM_HASH) <= 0;
  *o = (unsigned long long)((TPMA_ALGORITHM_HASH) | 0);  /* check that TPMA_ALGORITHM_HASH is an integer */
  return n;
}

static int _cffi_const_TPMA_ALGORITHM_METHOD(unsigned long long *o)
{
  int n = (TPMA_ALGORITHM_METHOD) <= 0;
  *o = (unsigned long long)((TPMA_ALGORITHM_METHOD) | 0);  /* check that TPMA_ALGORITHM_METHOD is an integer */
  return n;
}

static int _cffi_const_TPMA_ALGORITHM_OBJECT(unsigned long long *o)
{
  int n = (TPMA_ALGORITHM_OBJECT) <= 0;
  *o = (unsigned long long)((TPMA_ALGORITHM_OBJECT) | 0);  /* check that TPMA_ALGORITHM_OBJECT is an integer */
  return n;
}

static int _cffi_const_TPMA_ALGORITHM_RESERVED1_MASK(unsigned long long *o)
{
  int n = (TPMA_ALGORITHM_RESERVED1_MASK) <= 0;
  *o = (unsigned long long)((TPMA_ALGORITHM_RESERVED1_MASK) | 0);  /* check that TPMA_ALGORITHM_RESERVED1_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_ALGORITHM_RESERVED2_MASK(unsigned long long *o)
{
  int n = (TPMA_ALGORITHM_RESERVED2_MASK) <= 0;
  *o = (unsigned long long)((TPMA_ALGORITHM_RESERVED2_MASK) | 0);  /* check that TPMA_ALGORITHM_RESERVED2_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_ALGORITHM_SIGNING(unsigned long long *o)
{
  int n = (TPMA_ALGORITHM_SIGNING) <= 0;
  *o = (unsigned long long)((TPMA_ALGORITHM_SIGNING) | 0);  /* check that TPMA_ALGORITHM_SIGNING is an integer */
  return n;
}

static int _cffi_const_TPMA_ALGORITHM_SYMMETRIC(unsigned long long *o)
{
  int n = (TPMA_ALGORITHM_SYMMETRIC) <= 0;
  *o = (unsigned long long)((TPMA_ALGORITHM_SYMMETRIC) | 0);  /* check that TPMA_ALGORITHM_SYMMETRIC is an integer */
  return n;
}

static int _cffi_const_TPMA_CC_CHANDLES_MASK(unsigned long long *o)
{
  int n = (TPMA_CC_CHANDLES_MASK) <= 0;
  *o = (unsigned long long)((TPMA_CC_CHANDLES_MASK) | 0);  /* check that TPMA_CC_CHANDLES_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_CC_CHANDLES_SHIFT(unsigned long long *o)
{
  int n = (TPMA_CC_CHANDLES_SHIFT) <= 0;
  *o = (unsigned long long)((TPMA_CC_CHANDLES_SHIFT) | 0);  /* check that TPMA_CC_CHANDLES_SHIFT is an integer */
  return n;
}

static int _cffi_const_TPMA_CC_COMMANDINDEX_MASK(unsigned long long *o)
{
  int n = (TPMA_CC_COMMANDINDEX_MASK) <= 0;
  *o = (unsigned long long)((TPMA_CC_COMMANDINDEX_MASK) | 0);  /* check that TPMA_CC_COMMANDINDEX_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_CC_COMMANDINDEX_SHIFT(unsigned long long *o)
{
  int n = (TPMA_CC_COMMANDINDEX_SHIFT) <= 0;
  *o = (unsigned long long)((TPMA_CC_COMMANDINDEX_SHIFT) | 0);  /* check that TPMA_CC_COMMANDINDEX_SHIFT is an integer */
  return n;
}

static int _cffi_const_TPMA_CC_EXTENSIVE(unsigned long long *o)
{
  int n = (TPMA_CC_EXTENSIVE) <= 0;
  *o = (unsigned long long)((TPMA_CC_EXTENSIVE) | 0);  /* check that TPMA_CC_EXTENSIVE is an integer */
  return n;
}

static int _cffi_const_TPMA_CC_FLUSHED(unsigned long long *o)
{
  int n = (TPMA_CC_FLUSHED) <= 0;
  *o = (unsigned long long)((TPMA_CC_FLUSHED) | 0);  /* check that TPMA_CC_FLUSHED is an integer */
  return n;
}

static int _cffi_const_TPMA_CC_NV(unsigned long long *o)
{
  int n = (TPMA_CC_NV) <= 0;
  *o = (unsigned long long)((TPMA_CC_NV) | 0);  /* check that TPMA_CC_NV is an integer */
  return n;
}

static int _cffi_const_TPMA_CC_RESERVED1_MASK(unsigned long long *o)
{
  int n = (TPMA_CC_RESERVED1_MASK) <= 0;
  *o = (unsigned long long)((TPMA_CC_RESERVED1_MASK) | 0);  /* check that TPMA_CC_RESERVED1_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_CC_RES_MASK(unsigned long long *o)
{
  int n = (TPMA_CC_RES_MASK) <= 0;
  *o = (unsigned long long)((TPMA_CC_RES_MASK) | 0);  /* check that TPMA_CC_RES_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_CC_RES_SHIFT(unsigned long long *o)
{
  int n = (TPMA_CC_RES_SHIFT) <= 0;
  *o = (unsigned long long)((TPMA_CC_RES_SHIFT) | 0);  /* check that TPMA_CC_RES_SHIFT is an integer */
  return n;
}

static int _cffi_const_TPMA_CC_RHANDLE(unsigned long long *o)
{
  int n = (TPMA_CC_RHANDLE) <= 0;
  *o = (unsigned long long)((TPMA_CC_RHANDLE) | 0);  /* check that TPMA_CC_RHANDLE is an integer */
  return n;
}

static int _cffi_const_TPMA_CC_V(unsigned long long *o)
{
  int n = (TPMA_CC_V) <= 0;
  *o = (unsigned long long)((TPMA_CC_V) | 0);  /* check that TPMA_CC_V is an integer */
  return n;
}

static int _cffi_const_TPMA_LOCALITY_EXTENDED_MASK(unsigned long long *o)
{
  int n = (TPMA_LOCALITY_EXTENDED_MASK) <= 0;
  *o = (unsigned long long)((TPMA_LOCALITY_EXTENDED_MASK) | 0);  /* check that TPMA_LOCALITY_EXTENDED_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_LOCALITY_EXTENDED_SHIFT(unsigned long long *o)
{
  int n = (TPMA_LOCALITY_EXTENDED_SHIFT) <= 0;
  *o = (unsigned long long)((TPMA_LOCALITY_EXTENDED_SHIFT) | 0);  /* check that TPMA_LOCALITY_EXTENDED_SHIFT is an integer */
  return n;
}

static int _cffi_const_TPMA_LOCALITY_TPM2_LOC_FOUR(unsigned long long *o)
{
  int n = (TPMA_LOCALITY_TPM2_LOC_FOUR) <= 0;
  *o = (unsigned long long)((TPMA_LOCALITY_TPM2_LOC_FOUR) | 0);  /* check that TPMA_LOCALITY_TPM2_LOC_FOUR is an integer */
  return n;
}

static int _cffi_const_TPMA_LOCALITY_TPM2_LOC_ONE(unsigned long long *o)
{
  int n = (TPMA_LOCALITY_TPM2_LOC_ONE) <= 0;
  *o = (unsigned long long)((TPMA_LOCALITY_TPM2_LOC_ONE) | 0);  /* check that TPMA_LOCALITY_TPM2_LOC_ONE is an integer */
  return n;
}

static int _cffi_const_TPMA_LOCALITY_TPM2_LOC_THREE(unsigned long long *o)
{
  int n = (TPMA_LOCALITY_TPM2_LOC_THREE) <= 0;
  *o = (unsigned long long)((TPMA_LOCALITY_TPM2_LOC_THREE) | 0);  /* check that TPMA_LOCALITY_TPM2_LOC_THREE is an integer */
  return n;
}

static int _cffi_const_TPMA_LOCALITY_TPM2_LOC_TWO(unsigned long long *o)
{
  int n = (TPMA_LOCALITY_TPM2_LOC_TWO) <= 0;
  *o = (unsigned long long)((TPMA_LOCALITY_TPM2_LOC_TWO) | 0);  /* check that TPMA_LOCALITY_TPM2_LOC_TWO is an integer */
  return n;
}

static int _cffi_const_TPMA_LOCALITY_TPM2_LOC_ZERO(unsigned long long *o)
{
  int n = (TPMA_LOCALITY_TPM2_LOC_ZERO) <= 0;
  *o = (unsigned long long)((TPMA_LOCALITY_TPM2_LOC_ZERO) | 0);  /* check that TPMA_LOCALITY_TPM2_LOC_ZERO is an integer */
  return n;
}

static int _cffi_const_TPMA_MEMORY_OBJECTCOPIEDTORAM(unsigned long long *o)
{
  int n = (TPMA_MEMORY_OBJECTCOPIEDTORAM) <= 0;
  *o = (unsigned long long)((TPMA_MEMORY_OBJECTCOPIEDTORAM) | 0);  /* check that TPMA_MEMORY_OBJECTCOPIEDTORAM is an integer */
  return n;
}

static int _cffi_const_TPMA_MEMORY_RESERVED1_MASK(unsigned long long *o)
{
  int n = (TPMA_MEMORY_RESERVED1_MASK) <= 0;
  *o = (unsigned long long)((TPMA_MEMORY_RESERVED1_MASK) | 0);  /* check that TPMA_MEMORY_RESERVED1_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_MEMORY_SHAREDNV(unsigned long long *o)
{
  int n = (TPMA_MEMORY_SHAREDNV) <= 0;
  *o = (unsigned long long)((TPMA_MEMORY_SHAREDNV) | 0);  /* check that TPMA_MEMORY_SHAREDNV is an integer */
  return n;
}

static int _cffi_const_TPMA_MEMORY_SHAREDRAM(unsigned long long *o)
{
  int n = (TPMA_MEMORY_SHAREDRAM) <= 0;
  *o = (unsigned long long)((TPMA_MEMORY_SHAREDRAM) | 0);  /* check that TPMA_MEMORY_SHAREDRAM is an integer */
  return n;
}

static int _cffi_const_TPMA_MODES_FIPS_140_2(unsigned long long *o)
{
  int n = (TPMA_MODES_FIPS_140_2) <= 0;
  *o = (unsigned long long)((TPMA_MODES_FIPS_140_2) | 0);  /* check that TPMA_MODES_FIPS_140_2 is an integer */
  return n;
}

static int _cffi_const_TPMA_MODES_RESERVED1_MASK(unsigned long long *o)
{
  int n = (TPMA_MODES_RESERVED1_MASK) <= 0;
  *o = (unsigned long long)((TPMA_MODES_RESERVED1_MASK) | 0);  /* check that TPMA_MODES_RESERVED1_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_AUTHREAD(unsigned long long *o)
{
  int n = (TPMA_NV_AUTHREAD) <= 0;
  *o = (unsigned long long)((TPMA_NV_AUTHREAD) | 0);  /* check that TPMA_NV_AUTHREAD is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_AUTHWRITE(unsigned long long *o)
{
  int n = (TPMA_NV_AUTHWRITE) <= 0;
  *o = (unsigned long long)((TPMA_NV_AUTHWRITE) | 0);  /* check that TPMA_NV_AUTHWRITE is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_CLEAR_STCLEAR(unsigned long long *o)
{
  int n = (TPMA_NV_CLEAR_STCLEAR) <= 0;
  *o = (unsigned long long)((TPMA_NV_CLEAR_STCLEAR) | 0);  /* check that TPMA_NV_CLEAR_STCLEAR is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_GLOBALLOCK(unsigned long long *o)
{
  int n = (TPMA_NV_GLOBALLOCK) <= 0;
  *o = (unsigned long long)((TPMA_NV_GLOBALLOCK) | 0);  /* check that TPMA_NV_GLOBALLOCK is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_NO_DA(unsigned long long *o)
{
  int n = (TPMA_NV_NO_DA) <= 0;
  *o = (unsigned long long)((TPMA_NV_NO_DA) | 0);  /* check that TPMA_NV_NO_DA is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_ORDERLY(unsigned long long *o)
{
  int n = (TPMA_NV_ORDERLY) <= 0;
  *o = (unsigned long long)((TPMA_NV_ORDERLY) | 0);  /* check that TPMA_NV_ORDERLY is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_OWNERREAD(unsigned long long *o)
{
  int n = (TPMA_NV_OWNERREAD) <= 0;
  *o = (unsigned long long)((TPMA_NV_OWNERREAD) | 0);  /* check that TPMA_NV_OWNERREAD is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_OWNERWRITE(unsigned long long *o)
{
  int n = (TPMA_NV_OWNERWRITE) <= 0;
  *o = (unsigned long long)((TPMA_NV_OWNERWRITE) | 0);  /* check that TPMA_NV_OWNERWRITE is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_PLATFORMCREATE(unsigned long long *o)
{
  int n = (TPMA_NV_PLATFORMCREATE) <= 0;
  *o = (unsigned long long)((TPMA_NV_PLATFORMCREATE) | 0);  /* check that TPMA_NV_PLATFORMCREATE is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_POLICYREAD(unsigned long long *o)
{
  int n = (TPMA_NV_POLICYREAD) <= 0;
  *o = (unsigned long long)((TPMA_NV_POLICYREAD) | 0);  /* check that TPMA_NV_POLICYREAD is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_POLICYWRITE(unsigned long long *o)
{
  int n = (TPMA_NV_POLICYWRITE) <= 0;
  *o = (unsigned long long)((TPMA_NV_POLICYWRITE) | 0);  /* check that TPMA_NV_POLICYWRITE is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_POLICY_DELETE(unsigned long long *o)
{
  int n = (TPMA_NV_POLICY_DELETE) <= 0;
  *o = (unsigned long long)((TPMA_NV_POLICY_DELETE) | 0);  /* check that TPMA_NV_POLICY_DELETE is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_PPREAD(unsigned long long *o)
{
  int n = (TPMA_NV_PPREAD) <= 0;
  *o = (unsigned long long)((TPMA_NV_PPREAD) | 0);  /* check that TPMA_NV_PPREAD is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_PPWRITE(unsigned long long *o)
{
  int n = (TPMA_NV_PPWRITE) <= 0;
  *o = (unsigned long long)((TPMA_NV_PPWRITE) | 0);  /* check that TPMA_NV_PPWRITE is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_READLOCKED(unsigned long long *o)
{
  int n = (TPMA_NV_READLOCKED) <= 0;
  *o = (unsigned long long)((TPMA_NV_READLOCKED) | 0);  /* check that TPMA_NV_READLOCKED is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_READ_STCLEAR(unsigned long long *o)
{
  int n = (TPMA_NV_READ_STCLEAR) <= 0;
  *o = (unsigned long long)((TPMA_NV_READ_STCLEAR) | 0);  /* check that TPMA_NV_READ_STCLEAR is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_RESERVED1_MASK(unsigned long long *o)
{
  int n = (TPMA_NV_RESERVED1_MASK) <= 0;
  *o = (unsigned long long)((TPMA_NV_RESERVED1_MASK) | 0);  /* check that TPMA_NV_RESERVED1_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_RESERVED2_MASK(unsigned long long *o)
{
  int n = (TPMA_NV_RESERVED2_MASK) <= 0;
  *o = (unsigned long long)((TPMA_NV_RESERVED2_MASK) | 0);  /* check that TPMA_NV_RESERVED2_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_TPM2_NT_MASK(unsigned long long *o)
{
  int n = (TPMA_NV_TPM2_NT_MASK) <= 0;
  *o = (unsigned long long)((TPMA_NV_TPM2_NT_MASK) | 0);  /* check that TPMA_NV_TPM2_NT_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_TPM2_NT_SHIFT(unsigned long long *o)
{
  int n = (TPMA_NV_TPM2_NT_SHIFT) <= 0;
  *o = (unsigned long long)((TPMA_NV_TPM2_NT_SHIFT) | 0);  /* check that TPMA_NV_TPM2_NT_SHIFT is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_WRITEALL(unsigned long long *o)
{
  int n = (TPMA_NV_WRITEALL) <= 0;
  *o = (unsigned long long)((TPMA_NV_WRITEALL) | 0);  /* check that TPMA_NV_WRITEALL is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_WRITEDEFINE(unsigned long long *o)
{
  int n = (TPMA_NV_WRITEDEFINE) <= 0;
  *o = (unsigned long long)((TPMA_NV_WRITEDEFINE) | 0);  /* check that TPMA_NV_WRITEDEFINE is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_WRITELOCKED(unsigned long long *o)
{
  int n = (TPMA_NV_WRITELOCKED) <= 0;
  *o = (unsigned long long)((TPMA_NV_WRITELOCKED) | 0);  /* check that TPMA_NV_WRITELOCKED is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_WRITE_STCLEAR(unsigned long long *o)
{
  int n = (TPMA_NV_WRITE_STCLEAR) <= 0;
  *o = (unsigned long long)((TPMA_NV_WRITE_STCLEAR) | 0);  /* check that TPMA_NV_WRITE_STCLEAR is an integer */
  return n;
}

static int _cffi_const_TPMA_NV_WRITTEN(unsigned long long *o)
{
  int n = (TPMA_NV_WRITTEN) <= 0;
  *o = (unsigned long long)((TPMA_NV_WRITTEN) | 0);  /* check that TPMA_NV_WRITTEN is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_ADMINWITHPOLICY(unsigned long long *o)
{
  int n = (TPMA_OBJECT_ADMINWITHPOLICY) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_ADMINWITHPOLICY) | 0);  /* check that TPMA_OBJECT_ADMINWITHPOLICY is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_DECRYPT(unsigned long long *o)
{
  int n = (TPMA_OBJECT_DECRYPT) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_DECRYPT) | 0);  /* check that TPMA_OBJECT_DECRYPT is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_ENCRYPTEDDUPLICATION(unsigned long long *o)
{
  int n = (TPMA_OBJECT_ENCRYPTEDDUPLICATION) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_ENCRYPTEDDUPLICATION) | 0);  /* check that TPMA_OBJECT_ENCRYPTEDDUPLICATION is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_FIXEDPARENT(unsigned long long *o)
{
  int n = (TPMA_OBJECT_FIXEDPARENT) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_FIXEDPARENT) | 0);  /* check that TPMA_OBJECT_FIXEDPARENT is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_FIXEDTPM(unsigned long long *o)
{
  int n = (TPMA_OBJECT_FIXEDTPM) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_FIXEDTPM) | 0);  /* check that TPMA_OBJECT_FIXEDTPM is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_NODA(unsigned long long *o)
{
  int n = (TPMA_OBJECT_NODA) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_NODA) | 0);  /* check that TPMA_OBJECT_NODA is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_RESERVED1_MASK(unsigned long long *o)
{
  int n = (TPMA_OBJECT_RESERVED1_MASK) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_RESERVED1_MASK) | 0);  /* check that TPMA_OBJECT_RESERVED1_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_RESERVED2_MASK(unsigned long long *o)
{
  int n = (TPMA_OBJECT_RESERVED2_MASK) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_RESERVED2_MASK) | 0);  /* check that TPMA_OBJECT_RESERVED2_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_RESERVED3_MASK(unsigned long long *o)
{
  int n = (TPMA_OBJECT_RESERVED3_MASK) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_RESERVED3_MASK) | 0);  /* check that TPMA_OBJECT_RESERVED3_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_RESERVED4_MASK(unsigned long long *o)
{
  int n = (TPMA_OBJECT_RESERVED4_MASK) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_RESERVED4_MASK) | 0);  /* check that TPMA_OBJECT_RESERVED4_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_RESERVED5_MASK(unsigned long long *o)
{
  int n = (TPMA_OBJECT_RESERVED5_MASK) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_RESERVED5_MASK) | 0);  /* check that TPMA_OBJECT_RESERVED5_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_RESTRICTED(unsigned long long *o)
{
  int n = (TPMA_OBJECT_RESTRICTED) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_RESTRICTED) | 0);  /* check that TPMA_OBJECT_RESTRICTED is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_SENSITIVEDATAORIGIN(unsigned long long *o)
{
  int n = (TPMA_OBJECT_SENSITIVEDATAORIGIN) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_SENSITIVEDATAORIGIN) | 0);  /* check that TPMA_OBJECT_SENSITIVEDATAORIGIN is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_SIGN_ENCRYPT(unsigned long long *o)
{
  int n = (TPMA_OBJECT_SIGN_ENCRYPT) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_SIGN_ENCRYPT) | 0);  /* check that TPMA_OBJECT_SIGN_ENCRYPT is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_STCLEAR(unsigned long long *o)
{
  int n = (TPMA_OBJECT_STCLEAR) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_STCLEAR) | 0);  /* check that TPMA_OBJECT_STCLEAR is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_USERWITHAUTH(unsigned long long *o)
{
  int n = (TPMA_OBJECT_USERWITHAUTH) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_USERWITHAUTH) | 0);  /* check that TPMA_OBJECT_USERWITHAUTH is an integer */
  return n;
}

static int _cffi_const_TPMA_OBJECT_X509SIGN(unsigned long long *o)
{
  int n = (TPMA_OBJECT_X509SIGN) <= 0;
  *o = (unsigned long long)((TPMA_OBJECT_X509SIGN) | 0);  /* check that TPMA_OBJECT_X509SIGN is an integer */
  return n;
}

static int _cffi_const_TPMA_PERMANENT_DISABLECLEAR(unsigned long long *o)
{
  int n = (TPMA_PERMANENT_DISABLECLEAR) <= 0;
  *o = (unsigned long long)((TPMA_PERMANENT_DISABLECLEAR) | 0);  /* check that TPMA_PERMANENT_DISABLECLEAR is an integer */
  return n;
}

static int _cffi_const_TPMA_PERMANENT_ENDORSEMENTAUTHSET(unsigned long long *o)
{
  int n = (TPMA_PERMANENT_ENDORSEMENTAUTHSET) <= 0;
  *o = (unsigned long long)((TPMA_PERMANENT_ENDORSEMENTAUTHSET) | 0);  /* check that TPMA_PERMANENT_ENDORSEMENTAUTHSET is an integer */
  return n;
}

static int _cffi_const_TPMA_PERMANENT_INLOCKOUT(unsigned long long *o)
{
  int n = (TPMA_PERMANENT_INLOCKOUT) <= 0;
  *o = (unsigned long long)((TPMA_PERMANENT_INLOCKOUT) | 0);  /* check that TPMA_PERMANENT_INLOCKOUT is an integer */
  return n;
}

static int _cffi_const_TPMA_PERMANENT_LOCKOUTAUTHSET(unsigned long long *o)
{
  int n = (TPMA_PERMANENT_LOCKOUTAUTHSET) <= 0;
  *o = (unsigned long long)((TPMA_PERMANENT_LOCKOUTAUTHSET) | 0);  /* check that TPMA_PERMANENT_LOCKOUTAUTHSET is an integer */
  return n;
}

static int _cffi_const_TPMA_PERMANENT_OWNERAUTHSET(unsigned long long *o)
{
  int n = (TPMA_PERMANENT_OWNERAUTHSET) <= 0;
  *o = (unsigned long long)((TPMA_PERMANENT_OWNERAUTHSET) | 0);  /* check that TPMA_PERMANENT_OWNERAUTHSET is an integer */
  return n;
}

static int _cffi_const_TPMA_PERMANENT_RESERVED1_MASK(unsigned long long *o)
{
  int n = (TPMA_PERMANENT_RESERVED1_MASK) <= 0;
  *o = (unsigned long long)((TPMA_PERMANENT_RESERVED1_MASK) | 0);  /* check that TPMA_PERMANENT_RESERVED1_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_PERMANENT_RESERVED2_MASK(unsigned long long *o)
{
  int n = (TPMA_PERMANENT_RESERVED2_MASK) <= 0;
  *o = (unsigned long long)((TPMA_PERMANENT_RESERVED2_MASK) | 0);  /* check that TPMA_PERMANENT_RESERVED2_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_PERMANENT_TPMGENERATEDEPS(unsigned long long *o)
{
  int n = (TPMA_PERMANENT_TPMGENERATEDEPS) <= 0;
  *o = (unsigned long long)((TPMA_PERMANENT_TPMGENERATEDEPS) | 0);  /* check that TPMA_PERMANENT_TPMGENERATEDEPS is an integer */
  return n;
}

static int _cffi_const_TPMA_SESSION_AUDIT(unsigned long long *o)
{
  int n = (TPMA_SESSION_AUDIT) <= 0;
  *o = (unsigned long long)((TPMA_SESSION_AUDIT) | 0);  /* check that TPMA_SESSION_AUDIT is an integer */
  return n;
}

static int _cffi_const_TPMA_SESSION_AUDITEXCLUSIVE(unsigned long long *o)
{
  int n = (TPMA_SESSION_AUDITEXCLUSIVE) <= 0;
  *o = (unsigned long long)((TPMA_SESSION_AUDITEXCLUSIVE) | 0);  /* check that TPMA_SESSION_AUDITEXCLUSIVE is an integer */
  return n;
}

static int _cffi_const_TPMA_SESSION_AUDITRESET(unsigned long long *o)
{
  int n = (TPMA_SESSION_AUDITRESET) <= 0;
  *o = (unsigned long long)((TPMA_SESSION_AUDITRESET) | 0);  /* check that TPMA_SESSION_AUDITRESET is an integer */
  return n;
}

static int _cffi_const_TPMA_SESSION_CONTINUESESSION(unsigned long long *o)
{
  int n = (TPMA_SESSION_CONTINUESESSION) <= 0;
  *o = (unsigned long long)((TPMA_SESSION_CONTINUESESSION) | 0);  /* check that TPMA_SESSION_CONTINUESESSION is an integer */
  return n;
}

static int _cffi_const_TPMA_SESSION_DECRYPT(unsigned long long *o)
{
  int n = (TPMA_SESSION_DECRYPT) <= 0;
  *o = (unsigned long long)((TPMA_SESSION_DECRYPT) | 0);  /* check that TPMA_SESSION_DECRYPT is an integer */
  return n;
}

static int _cffi_const_TPMA_SESSION_ENCRYPT(unsigned long long *o)
{
  int n = (TPMA_SESSION_ENCRYPT) <= 0;
  *o = (unsigned long long)((TPMA_SESSION_ENCRYPT) | 0);  /* check that TPMA_SESSION_ENCRYPT is an integer */
  return n;
}

static int _cffi_const_TPMA_SESSION_RESERVED1_MASK(unsigned long long *o)
{
  int n = (TPMA_SESSION_RESERVED1_MASK) <= 0;
  *o = (unsigned long long)((TPMA_SESSION_RESERVED1_MASK) | 0);  /* check that TPMA_SESSION_RESERVED1_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_STARTUP_CLEAR_EHENABLE(unsigned long long *o)
{
  int n = (TPMA_STARTUP_CLEAR_EHENABLE) <= 0;
  *o = (unsigned long long)((TPMA_STARTUP_CLEAR_EHENABLE) | 0);  /* check that TPMA_STARTUP_CLEAR_EHENABLE is an integer */
  return n;
}

static int _cffi_const_TPMA_STARTUP_CLEAR_ORDERLY(unsigned long long *o)
{
  int n = (TPMA_STARTUP_CLEAR_ORDERLY) <= 0;
  *o = (unsigned long long)((TPMA_STARTUP_CLEAR_ORDERLY) | 0);  /* check that TPMA_STARTUP_CLEAR_ORDERLY is an integer */
  return n;
}

static int _cffi_const_TPMA_STARTUP_CLEAR_PHENABLE(unsigned long long *o)
{
  int n = (TPMA_STARTUP_CLEAR_PHENABLE) <= 0;
  *o = (unsigned long long)((TPMA_STARTUP_CLEAR_PHENABLE) | 0);  /* check that TPMA_STARTUP_CLEAR_PHENABLE is an integer */
  return n;
}

static int _cffi_const_TPMA_STARTUP_CLEAR_PHENABLENV(unsigned long long *o)
{
  int n = (TPMA_STARTUP_CLEAR_PHENABLENV) <= 0;
  *o = (unsigned long long)((TPMA_STARTUP_CLEAR_PHENABLENV) | 0);  /* check that TPMA_STARTUP_CLEAR_PHENABLENV is an integer */
  return n;
}

static int _cffi_const_TPMA_STARTUP_CLEAR_RESERVED1_MASK(unsigned long long *o)
{
  int n = (TPMA_STARTUP_CLEAR_RESERVED1_MASK) <= 0;
  *o = (unsigned long long)((TPMA_STARTUP_CLEAR_RESERVED1_MASK) | 0);  /* check that TPMA_STARTUP_CLEAR_RESERVED1_MASK is an integer */
  return n;
}

static int _cffi_const_TPMA_STARTUP_CLEAR_SHENABLE(unsigned long long *o)
{
  int n = (TPMA_STARTUP_CLEAR_SHENABLE) <= 0;
  *o = (unsigned long long)((TPMA_STARTUP_CLEAR_SHENABLE) | 0);  /* check that TPMA_STARTUP_CLEAR_SHENABLE is an integer */
  return n;
}

static int _cffi_const_TPMA_X509_KEY_USAGE_CRLSIGN(unsigned long long *o)
{
  int n = (TPMA_X509_KEY_USAGE_CRLSIGN) <= 0;
  *o = (unsigned long long)((TPMA_X509_KEY_USAGE_CRLSIGN) | 0);  /* check that TPMA_X509_KEY_USAGE_CRLSIGN is an integer */
  return n;
}

static int _cffi_const_TPMA_X509_KEY_USAGE_DATAENCIPHERMENT(unsigned long long *o)
{
  int n = (TPMA_X509_KEY_USAGE_DATAENCIPHERMENT) <= 0;
  *o = (unsigned long long)((TPMA_X509_KEY_USAGE_DATAENCIPHERMENT) | 0);  /* check that TPMA_X509_KEY_USAGE_DATAENCIPHERMENT is an integer */
  return n;
}

static int _cffi_const_TPMA_X509_KEY_USAGE_DECIPHER_ONLY(unsigned long long *o)
{
  int n = (TPMA_X509_KEY_USAGE_DECIPHER_ONLY) <= 0;
  *o = (unsigned long long)((TPMA_X509_KEY_USAGE_DECIPHER_ONLY) | 0);  /* check that TPMA_X509_KEY_USAGE_DECIPHER_ONLY is an integer */
  return n;
}

static int _cffi_const_TPMA_X509_KEY_USAGE_DIGITALSIGNATURE(unsigned long long *o)
{
  int n = (TPMA_X509_KEY_USAGE_DIGITALSIGNATURE) <= 0;
  *o = (unsigned long long)((TPMA_X509_KEY_USAGE_DIGITALSIGNATURE) | 0);  /* check that TPMA_X509_KEY_USAGE_DIGITALSIGNATURE is an integer */
  return n;
}

static int _cffi_const_TPMA_X509_KEY_USAGE_ENCIPHER_ONLY(unsigned long long *o)
{
  int n = (TPMA_X509_KEY_USAGE_ENCIPHER_ONLY) <= 0;
  *o = (unsigned long long)((TPMA_X509_KEY_USAGE_ENCIPHER_ONLY) | 0);  /* check that TPMA_X509_KEY_USAGE_ENCIPHER_ONLY is an integer */
  return n;
}

static int _cffi_const_TPMA_X509_KEY_USAGE_KEYAGREEMENT(unsigned long long *o)
{
  int n = (TPMA_X509_KEY_USAGE_KEYAGREEMENT) <= 0;
  *o = (unsigned long long)((TPMA_X509_KEY_USAGE_KEYAGREEMENT) | 0);  /* check that TPMA_X509_KEY_USAGE_KEYAGREEMENT is an integer */
  return n;
}

static int _cffi_const_TPMA_X509_KEY_USAGE_KEYCERTSIGN(unsigned long long *o)
{
  int n = (TPMA_X509_KEY_USAGE_KEYCERTSIGN) <= 0;
  *o = (unsigned long long)((TPMA_X509_KEY_USAGE_KEYCERTSIGN) | 0);  /* check that TPMA_X509_KEY_USAGE_KEYCERTSIGN is an integer */
  return n;
}

static int _cffi_const_TPMA_X509_KEY_USAGE_KEYENCIPHERMENT(unsigned long long *o)
{
  int n = (TPMA_X509_KEY_USAGE_KEYENCIPHERMENT) <= 0;
  *o = (unsigned long long)((TPMA_X509_KEY_USAGE_KEYENCIPHERMENT) | 0);  /* check that TPMA_X509_KEY_USAGE_KEYENCIPHERMENT is an integer */
  return n;
}

static int _cffi_const_TPMA_X509_KEY_USAGE_NONREPUDIATION(unsigned long long *o)
{
  int n = (TPMA_X509_KEY_USAGE_NONREPUDIATION) <= 0;
  *o = (unsigned long long)((TPMA_X509_KEY_USAGE_NONREPUDIATION) | 0);  /* check that TPMA_X509_KEY_USAGE_NONREPUDIATION is an integer */
  return n;
}

static int _cffi_const_TPMA_X509_KEY_USAGE_RESERVED_MASK(unsigned long long *o)
{
  int n = (TPMA_X509_KEY_USAGE_RESERVED_MASK) <= 0;
  *o = (unsigned long long)((TPMA_X509_KEY_USAGE_RESERVED_MASK) | 0);  /* check that TPMA_X509_KEY_USAGE_RESERVED_MASK is an integer */
  return n;
}

static int _cffi_const_TPMI_DH_SAVED_SEQUENCE(unsigned long long *o)
{
  int n = (TPMI_DH_SAVED_SEQUENCE) <= 0;
  *o = (unsigned long long)((TPMI_DH_SAVED_SEQUENCE) | 0);  /* check that TPMI_DH_SAVED_SEQUENCE is an integer */
  return n;
}

static int _cffi_const_TPMI_DH_SAVED_TRANSIENT(unsigned long long *o)
{
  int n = (TPMI_DH_SAVED_TRANSIENT) <= 0;
  *o = (unsigned long long)((TPMI_DH_SAVED_TRANSIENT) | 0);  /* check that TPMI_DH_SAVED_TRANSIENT is an integer */
  return n;
}

static int _cffi_const_TPMI_DH_SAVED_TRANSIENT_CLEAR(unsigned long long *o)
{
  int n = (TPMI_DH_SAVED_TRANSIENT_CLEAR) <= 0;
  *o = (unsigned long long)((TPMI_DH_SAVED_TRANSIENT_CLEAR) | 0);  /* check that TPMI_DH_SAVED_TRANSIENT_CLEAR is an integer */
  return n;
}

static int _cffi_const_TPM_AE_NONE(unsigned long long *o)
{
  int n = (TPM_AE_NONE) <= 0;
  *o = (unsigned long long)((TPM_AE_NONE) | 0);  /* check that TPM_AE_NONE is an integer */
  return n;
}

static int _cffi_const_TPM_AT_ANY(unsigned long long *o)
{
  int n = (TPM_AT_ANY) <= 0;
  *o = (unsigned long long)((TPM_AT_ANY) | 0);  /* check that TPM_AT_ANY is an integer */
  return n;
}

static int _cffi_const_TPM_AT_ERROR(unsigned long long *o)
{
  int n = (TPM_AT_ERROR) <= 0;
  *o = (unsigned long long)((TPM_AT_ERROR) | 0);  /* check that TPM_AT_ERROR is an integer */
  return n;
}

static int _cffi_const_TPM_AT_PV1(unsigned long long *o)
{
  int n = (TPM_AT_PV1) <= 0;
  *o = (unsigned long long)((TPM_AT_PV1) | 0);  /* check that TPM_AT_PV1 is an integer */
  return n;
}

static int _cffi_const_TPM_AT_VEND(unsigned long long *o)
{
  int n = (TPM_AT_VEND) <= 0;
  *o = (unsigned long long)((TPM_AT_VEND) | 0);  /* check that TPM_AT_VEND is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_ABI_MISMATCH(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_ABI_MISMATCH) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_ABI_MISMATCH) | 0);  /* check that TSS2_BASE_RC_ABI_MISMATCH is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_ALREADY_PROVISIONED(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_ALREADY_PROVISIONED) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_ALREADY_PROVISIONED) | 0);  /* check that TSS2_BASE_RC_ALREADY_PROVISIONED is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_AUTHORIZATION_FAILED(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_AUTHORIZATION_FAILED) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_AUTHORIZATION_FAILED) | 0);  /* check that TSS2_BASE_RC_AUTHORIZATION_FAILED is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_AUTHORIZATION_UNKNOWN(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_AUTHORIZATION_UNKNOWN) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_AUTHORIZATION_UNKNOWN) | 0);  /* check that TSS2_BASE_RC_AUTHORIZATION_UNKNOWN is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_BAD_CONTEXT(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_BAD_CONTEXT) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_BAD_CONTEXT) | 0);  /* check that TSS2_BASE_RC_BAD_CONTEXT is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_BAD_KEY(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_BAD_KEY) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_BAD_KEY) | 0);  /* check that TSS2_BASE_RC_BAD_KEY is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_BAD_PATH(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_BAD_PATH) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_BAD_PATH) | 0);  /* check that TSS2_BASE_RC_BAD_PATH is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_BAD_REFERENCE(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_BAD_REFERENCE) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_BAD_REFERENCE) | 0);  /* check that TSS2_BASE_RC_BAD_REFERENCE is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_BAD_SEQUENCE(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_BAD_SEQUENCE) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_BAD_SEQUENCE) | 0);  /* check that TSS2_BASE_RC_BAD_SEQUENCE is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_BAD_SIZE(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_BAD_SIZE) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_BAD_SIZE) | 0);  /* check that TSS2_BASE_RC_BAD_SIZE is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_BAD_TCTI_STRUCTURE(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_BAD_TCTI_STRUCTURE) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_BAD_TCTI_STRUCTURE) | 0);  /* check that TSS2_BASE_RC_BAD_TCTI_STRUCTURE is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_BAD_TEMPLATE(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_BAD_TEMPLATE) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_BAD_TEMPLATE) | 0);  /* check that TSS2_BASE_RC_BAD_TEMPLATE is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_BAD_TR(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_BAD_TR) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_BAD_TR) | 0);  /* check that TSS2_BASE_RC_BAD_TR is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_BAD_VALUE(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_BAD_VALUE) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_BAD_VALUE) | 0);  /* check that TSS2_BASE_RC_BAD_VALUE is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_CALLBACK_NULL(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_CALLBACK_NULL) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_CALLBACK_NULL) | 0);  /* check that TSS2_BASE_RC_CALLBACK_NULL is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_GENERAL_FAILURE(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_GENERAL_FAILURE) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_GENERAL_FAILURE) | 0);  /* check that TSS2_BASE_RC_GENERAL_FAILURE is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_HASH_MISMATCH(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_HASH_MISMATCH) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_HASH_MISMATCH) | 0);  /* check that TSS2_BASE_RC_HASH_MISMATCH is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_INCOMPATIBLE_TCTI(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_INCOMPATIBLE_TCTI) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_INCOMPATIBLE_TCTI) | 0);  /* check that TSS2_BASE_RC_INCOMPATIBLE_TCTI is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_INSUFFICIENT_BUFFER(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_INSUFFICIENT_BUFFER) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_INSUFFICIENT_BUFFER) | 0);  /* check that TSS2_BASE_RC_INSUFFICIENT_BUFFER is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_INSUFFICIENT_CONTEXT(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_INSUFFICIENT_CONTEXT) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_INSUFFICIENT_CONTEXT) | 0);  /* check that TSS2_BASE_RC_INSUFFICIENT_CONTEXT is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_INSUFFICIENT_RESPONSE(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_INSUFFICIENT_RESPONSE) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_INSUFFICIENT_RESPONSE) | 0);  /* check that TSS2_BASE_RC_INSUFFICIENT_RESPONSE is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_INVALID_SESSIONS(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_INVALID_SESSIONS) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_INVALID_SESSIONS) | 0);  /* check that TSS2_BASE_RC_INVALID_SESSIONS is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_IO_ERROR(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_IO_ERROR) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_IO_ERROR) | 0);  /* check that TSS2_BASE_RC_IO_ERROR is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_KEY_NOT_DUPLICABLE(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_KEY_NOT_DUPLICABLE) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_KEY_NOT_DUPLICABLE) | 0);  /* check that TSS2_BASE_RC_KEY_NOT_DUPLICABLE is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_KEY_NOT_FOUND(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_KEY_NOT_FOUND) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_KEY_NOT_FOUND) | 0);  /* check that TSS2_BASE_RC_KEY_NOT_FOUND is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_MALFORMED_RESPONSE(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_MALFORMED_RESPONSE) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_MALFORMED_RESPONSE) | 0);  /* check that TSS2_BASE_RC_MALFORMED_RESPONSE is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_MEMORY(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_MEMORY) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_MEMORY) | 0);  /* check that TSS2_BASE_RC_MEMORY is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_MULTIPLE_DECRYPT_SESSIONS(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_MULTIPLE_DECRYPT_SESSIONS) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_MULTIPLE_DECRYPT_SESSIONS) | 0);  /* check that TSS2_BASE_RC_MULTIPLE_DECRYPT_SESSIONS is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_MULTIPLE_ENCRYPT_SESSIONS(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_MULTIPLE_ENCRYPT_SESSIONS) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_MULTIPLE_ENCRYPT_SESSIONS) | 0);  /* check that TSS2_BASE_RC_MULTIPLE_ENCRYPT_SESSIONS is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NAME_ALREADY_EXISTS(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NAME_ALREADY_EXISTS) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NAME_ALREADY_EXISTS) | 0);  /* check that TSS2_BASE_RC_NAME_ALREADY_EXISTS is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NOT_DELETABLE(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NOT_DELETABLE) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NOT_DELETABLE) | 0);  /* check that TSS2_BASE_RC_NOT_DELETABLE is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NOT_IMPLEMENTED(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NOT_IMPLEMENTED) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NOT_IMPLEMENTED) | 0);  /* check that TSS2_BASE_RC_NOT_IMPLEMENTED is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NOT_PERMITTED(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NOT_PERMITTED) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NOT_PERMITTED) | 0);  /* check that TSS2_BASE_RC_NOT_PERMITTED is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NOT_PROVISIONED(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NOT_PROVISIONED) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NOT_PROVISIONED) | 0);  /* check that TSS2_BASE_RC_NOT_PROVISIONED is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NOT_SUPPORTED(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NOT_SUPPORTED) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NOT_SUPPORTED) | 0);  /* check that TSS2_BASE_RC_NOT_SUPPORTED is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NO_CERT(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NO_CERT) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NO_CERT) | 0);  /* check that TSS2_BASE_RC_NO_CERT is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NO_CONFIG(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NO_CONFIG) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NO_CONFIG) | 0);  /* check that TSS2_BASE_RC_NO_CONFIG is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NO_CONNECTION(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NO_CONNECTION) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NO_CONNECTION) | 0);  /* check that TSS2_BASE_RC_NO_CONNECTION is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NO_DECRYPT_PARAM(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NO_DECRYPT_PARAM) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NO_DECRYPT_PARAM) | 0);  /* check that TSS2_BASE_RC_NO_DECRYPT_PARAM is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NO_ENCRYPT_PARAM(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NO_ENCRYPT_PARAM) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NO_ENCRYPT_PARAM) | 0);  /* check that TSS2_BASE_RC_NO_ENCRYPT_PARAM is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NO_HANDLE(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NO_HANDLE) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NO_HANDLE) | 0);  /* check that TSS2_BASE_RC_NO_HANDLE is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NO_PCR(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NO_PCR) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NO_PCR) | 0);  /* check that TSS2_BASE_RC_NO_PCR is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NO_TPM(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NO_TPM) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NO_TPM) | 0);  /* check that TSS2_BASE_RC_NO_TPM is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NV_NOT_READABLE(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NV_NOT_READABLE) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NV_NOT_READABLE) | 0);  /* check that TSS2_BASE_RC_NV_NOT_READABLE is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NV_NOT_WRITEABLE(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NV_NOT_WRITEABLE) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NV_NOT_WRITEABLE) | 0);  /* check that TSS2_BASE_RC_NV_NOT_WRITEABLE is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NV_TOO_SMALL(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NV_TOO_SMALL) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NV_TOO_SMALL) | 0);  /* check that TSS2_BASE_RC_NV_TOO_SMALL is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_NV_WRONG_TYPE(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_NV_WRONG_TYPE) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_NV_WRONG_TYPE) | 0);  /* check that TSS2_BASE_RC_NV_WRONG_TYPE is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_PATH_ALREADY_EXISTS(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_PATH_ALREADY_EXISTS) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_PATH_ALREADY_EXISTS) | 0);  /* check that TSS2_BASE_RC_PATH_ALREADY_EXISTS is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_PATH_NOT_FOUND(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_PATH_NOT_FOUND) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_PATH_NOT_FOUND) | 0);  /* check that TSS2_BASE_RC_PATH_NOT_FOUND is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_PCR_NOT_RESETTABLE(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_PCR_NOT_RESETTABLE) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_PCR_NOT_RESETTABLE) | 0);  /* check that TSS2_BASE_RC_PCR_NOT_RESETTABLE is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_POLICY_UNKNOWN(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_POLICY_UNKNOWN) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_POLICY_UNKNOWN) | 0);  /* check that TSS2_BASE_RC_POLICY_UNKNOWN is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_RSP_AUTH_FAILED(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_RSP_AUTH_FAILED) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_RSP_AUTH_FAILED) | 0);  /* check that TSS2_BASE_RC_RSP_AUTH_FAILED is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_SIGNATURE_VERIFICATION_FAILED(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_SIGNATURE_VERIFICATION_FAILED) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_SIGNATURE_VERIFICATION_FAILED) | 0);  /* check that TSS2_BASE_RC_SIGNATURE_VERIFICATION_FAILED is an integer */
  return n;
}

static int _cffi_const_TSS2_BASE_RC_TRY_AGAIN(unsigned long long *o)
{
  int n = (TSS2_BASE_RC_TRY_AGAIN) <= 0;
  *o = (unsigned long long)((TSS2_BASE_RC_TRY_AGAIN) | 0);  /* check that TSS2_BASE_RC_TRY_AGAIN is an integer */
  return n;
}

static int _cffi_const_TSS2_ESAPI_RC_LAYER(unsigned long long *o)
{
  int n = (TSS2_ESAPI_RC_LAYER) <= 0;
  *o = (unsigned long long)((TSS2_ESAPI_RC_LAYER) | 0);  /* check that TSS2_ESAPI_RC_LAYER is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_ABI_MISMATCH(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_ABI_MISMATCH) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_ABI_MISMATCH) | 0);  /* check that TSS2_ESYS_RC_ABI_MISMATCH is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_BAD_REFERENCE(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_BAD_REFERENCE) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_BAD_REFERENCE) | 0);  /* check that TSS2_ESYS_RC_BAD_REFERENCE is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_BAD_SEQUENCE(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_BAD_SEQUENCE) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_BAD_SEQUENCE) | 0);  /* check that TSS2_ESYS_RC_BAD_SEQUENCE is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_BAD_SIZE(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_BAD_SIZE) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_BAD_SIZE) | 0);  /* check that TSS2_ESYS_RC_BAD_SIZE is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_BAD_TCTI_STRUCTURE(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_BAD_TCTI_STRUCTURE) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_BAD_TCTI_STRUCTURE) | 0);  /* check that TSS2_ESYS_RC_BAD_TCTI_STRUCTURE is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_BAD_TR(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_BAD_TR) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_BAD_TR) | 0);  /* check that TSS2_ESYS_RC_BAD_TR is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_BAD_VALUE(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_BAD_VALUE) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_BAD_VALUE) | 0);  /* check that TSS2_ESYS_RC_BAD_VALUE is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_CALLBACK_NULL(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_CALLBACK_NULL) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_CALLBACK_NULL) | 0);  /* check that TSS2_ESYS_RC_CALLBACK_NULL is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_GENERAL_FAILURE(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_GENERAL_FAILURE) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_GENERAL_FAILURE) | 0);  /* check that TSS2_ESYS_RC_GENERAL_FAILURE is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_INCOMPATIBLE_TCTI(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_INCOMPATIBLE_TCTI) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_INCOMPATIBLE_TCTI) | 0);  /* check that TSS2_ESYS_RC_INCOMPATIBLE_TCTI is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_INSUFFICIENT_BUFFER(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_INSUFFICIENT_BUFFER) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_INSUFFICIENT_BUFFER) | 0);  /* check that TSS2_ESYS_RC_INSUFFICIENT_BUFFER is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_INSUFFICIENT_CONTEXT(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_INSUFFICIENT_CONTEXT) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_INSUFFICIENT_CONTEXT) | 0);  /* check that TSS2_ESYS_RC_INSUFFICIENT_CONTEXT is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_INSUFFICIENT_RESPONSE(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_INSUFFICIENT_RESPONSE) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_INSUFFICIENT_RESPONSE) | 0);  /* check that TSS2_ESYS_RC_INSUFFICIENT_RESPONSE is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_INVALID_SESSIONS(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_INVALID_SESSIONS) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_INVALID_SESSIONS) | 0);  /* check that TSS2_ESYS_RC_INVALID_SESSIONS is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_IO_ERROR(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_IO_ERROR) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_IO_ERROR) | 0);  /* check that TSS2_ESYS_RC_IO_ERROR is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_MALFORMED_RESPONSE(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_MALFORMED_RESPONSE) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_MALFORMED_RESPONSE) | 0);  /* check that TSS2_ESYS_RC_MALFORMED_RESPONSE is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_MEMORY(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_MEMORY) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_MEMORY) | 0);  /* check that TSS2_ESYS_RC_MEMORY is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_MULTIPLE_DECRYPT_SESSIONS(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_MULTIPLE_DECRYPT_SESSIONS) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_MULTIPLE_DECRYPT_SESSIONS) | 0);  /* check that TSS2_ESYS_RC_MULTIPLE_DECRYPT_SESSIONS is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_MULTIPLE_ENCRYPT_SESSIONS(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_MULTIPLE_ENCRYPT_SESSIONS) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_MULTIPLE_ENCRYPT_SESSIONS) | 0);  /* check that TSS2_ESYS_RC_MULTIPLE_ENCRYPT_SESSIONS is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_NOT_IMPLEMENTED(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_NOT_IMPLEMENTED) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_NOT_IMPLEMENTED) | 0);  /* check that TSS2_ESYS_RC_NOT_IMPLEMENTED is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_NOT_SUPPORTED(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_NOT_SUPPORTED) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_NOT_SUPPORTED) | 0);  /* check that TSS2_ESYS_RC_NOT_SUPPORTED is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_NO_DECRYPT_PARAM(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_NO_DECRYPT_PARAM) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_NO_DECRYPT_PARAM) | 0);  /* check that TSS2_ESYS_RC_NO_DECRYPT_PARAM is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_NO_ENCRYPT_PARAM(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_NO_ENCRYPT_PARAM) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_NO_ENCRYPT_PARAM) | 0);  /* check that TSS2_ESYS_RC_NO_ENCRYPT_PARAM is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_RSP_AUTH_FAILED(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_RSP_AUTH_FAILED) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_RSP_AUTH_FAILED) | 0);  /* check that TSS2_ESYS_RC_RSP_AUTH_FAILED is an integer */
  return n;
}

static int _cffi_const_TSS2_ESYS_RC_TRY_AGAIN(unsigned long long *o)
{
  int n = (TSS2_ESYS_RC_TRY_AGAIN) <= 0;
  *o = (unsigned long long)((TSS2_ESYS_RC_TRY_AGAIN) | 0);  /* check that TSS2_ESYS_RC_TRY_AGAIN is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_ALREADY_PROVISIONED(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_ALREADY_PROVISIONED) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_ALREADY_PROVISIONED) | 0);  /* check that TSS2_FAPI_RC_ALREADY_PROVISIONED is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_AUTHORIZATION_FAILED(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_AUTHORIZATION_FAILED) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_AUTHORIZATION_FAILED) | 0);  /* check that TSS2_FAPI_RC_AUTHORIZATION_FAILED is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_AUTHORIZATION_UNKNOWN(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_AUTHORIZATION_UNKNOWN) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_AUTHORIZATION_UNKNOWN) | 0);  /* check that TSS2_FAPI_RC_AUTHORIZATION_UNKNOWN is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_BAD_CONTEXT(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_BAD_CONTEXT) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_BAD_CONTEXT) | 0);  /* check that TSS2_FAPI_RC_BAD_CONTEXT is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_BAD_KEY(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_BAD_KEY) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_BAD_KEY) | 0);  /* check that TSS2_FAPI_RC_BAD_KEY is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_BAD_PATH(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_BAD_PATH) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_BAD_PATH) | 0);  /* check that TSS2_FAPI_RC_BAD_PATH is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_BAD_REFERENCE(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_BAD_REFERENCE) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_BAD_REFERENCE) | 0);  /* check that TSS2_FAPI_RC_BAD_REFERENCE is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_BAD_SEQUENCE(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_BAD_SEQUENCE) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_BAD_SEQUENCE) | 0);  /* check that TSS2_FAPI_RC_BAD_SEQUENCE is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_BAD_TEMPLATE(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_BAD_TEMPLATE) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_BAD_TEMPLATE) | 0);  /* check that TSS2_FAPI_RC_BAD_TEMPLATE is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_BAD_VALUE(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_BAD_VALUE) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_BAD_VALUE) | 0);  /* check that TSS2_FAPI_RC_BAD_VALUE is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_GENERAL_FAILURE(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_GENERAL_FAILURE) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_GENERAL_FAILURE) | 0);  /* check that TSS2_FAPI_RC_GENERAL_FAILURE is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_HASH_MISMATCH(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_HASH_MISMATCH) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_HASH_MISMATCH) | 0);  /* check that TSS2_FAPI_RC_HASH_MISMATCH is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_IO_ERROR(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_IO_ERROR) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_IO_ERROR) | 0);  /* check that TSS2_FAPI_RC_IO_ERROR is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_KEY_NOT_DUPLICABLE(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_KEY_NOT_DUPLICABLE) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_KEY_NOT_DUPLICABLE) | 0);  /* check that TSS2_FAPI_RC_KEY_NOT_DUPLICABLE is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_KEY_NOT_FOUND(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_KEY_NOT_FOUND) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_KEY_NOT_FOUND) | 0);  /* check that TSS2_FAPI_RC_KEY_NOT_FOUND is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_MEMORY(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_MEMORY) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_MEMORY) | 0);  /* check that TSS2_FAPI_RC_MEMORY is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_NAME_ALREADY_EXISTS(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_NAME_ALREADY_EXISTS) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_NAME_ALREADY_EXISTS) | 0);  /* check that TSS2_FAPI_RC_NAME_ALREADY_EXISTS is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_NOT_DELETABLE(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_NOT_DELETABLE) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_NOT_DELETABLE) | 0);  /* check that TSS2_FAPI_RC_NOT_DELETABLE is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_NOT_IMPLEMENTED(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_NOT_IMPLEMENTED) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_NOT_IMPLEMENTED) | 0);  /* check that TSS2_FAPI_RC_NOT_IMPLEMENTED is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_NOT_PROVISIONED(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_NOT_PROVISIONED) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_NOT_PROVISIONED) | 0);  /* check that TSS2_FAPI_RC_NOT_PROVISIONED is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_NO_CERT(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_NO_CERT) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_NO_CERT) | 0);  /* check that TSS2_FAPI_RC_NO_CERT is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_NO_CONFIG(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_NO_CONFIG) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_NO_CONFIG) | 0);  /* check that TSS2_FAPI_RC_NO_CONFIG is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_NO_DECRYPT_PARAM(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_NO_DECRYPT_PARAM) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_NO_DECRYPT_PARAM) | 0);  /* check that TSS2_FAPI_RC_NO_DECRYPT_PARAM is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_NO_ENCRYPT_PARAM(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_NO_ENCRYPT_PARAM) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_NO_ENCRYPT_PARAM) | 0);  /* check that TSS2_FAPI_RC_NO_ENCRYPT_PARAM is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_NO_HANDLE(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_NO_HANDLE) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_NO_HANDLE) | 0);  /* check that TSS2_FAPI_RC_NO_HANDLE is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_NO_PCR(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_NO_PCR) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_NO_PCR) | 0);  /* check that TSS2_FAPI_RC_NO_PCR is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_NO_TPM(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_NO_TPM) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_NO_TPM) | 0);  /* check that TSS2_FAPI_RC_NO_TPM is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_NULL_CALLBACK(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_NULL_CALLBACK) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_NULL_CALLBACK) | 0);  /* check that TSS2_FAPI_RC_NULL_CALLBACK is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_NV_NOT_READABLE(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_NV_NOT_READABLE) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_NV_NOT_READABLE) | 0);  /* check that TSS2_FAPI_RC_NV_NOT_READABLE is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_NV_NOT_WRITEABLE(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_NV_NOT_WRITEABLE) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_NV_NOT_WRITEABLE) | 0);  /* check that TSS2_FAPI_RC_NV_NOT_WRITEABLE is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_NV_TOO_SMALL(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_NV_TOO_SMALL) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_NV_TOO_SMALL) | 0);  /* check that TSS2_FAPI_RC_NV_TOO_SMALL is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_NV_WRONG_TYPE(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_NV_WRONG_TYPE) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_NV_WRONG_TYPE) | 0);  /* check that TSS2_FAPI_RC_NV_WRONG_TYPE is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_PATH_ALREADY_EXISTS(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_PATH_ALREADY_EXISTS) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_PATH_ALREADY_EXISTS) | 0);  /* check that TSS2_FAPI_RC_PATH_ALREADY_EXISTS is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_PATH_NOT_FOUND(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_PATH_NOT_FOUND) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_PATH_NOT_FOUND) | 0);  /* check that TSS2_FAPI_RC_PATH_NOT_FOUND is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_PCR_NOT_RESETTABLE(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_PCR_NOT_RESETTABLE) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_PCR_NOT_RESETTABLE) | 0);  /* check that TSS2_FAPI_RC_PCR_NOT_RESETTABLE is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_POLICY_UNKNOWN(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_POLICY_UNKNOWN) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_POLICY_UNKNOWN) | 0);  /* check that TSS2_FAPI_RC_POLICY_UNKNOWN is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_SIGNATURE_VERIFICATION_FAILED(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_SIGNATURE_VERIFICATION_FAILED) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_SIGNATURE_VERIFICATION_FAILED) | 0);  /* check that TSS2_FAPI_RC_SIGNATURE_VERIFICATION_FAILED is an integer */
  return n;
}

static int _cffi_const_TSS2_FAPI_RC_TRY_AGAIN(unsigned long long *o)
{
  int n = (TSS2_FAPI_RC_TRY_AGAIN) <= 0;
  *o = (unsigned long long)((TSS2_FAPI_RC_TRY_AGAIN) | 0);  /* check that TSS2_FAPI_RC_TRY_AGAIN is an integer */
  return n;
}

static int _cffi_const_TSS2_FEATURE_RC_LAYER(unsigned long long *o)
{
  int n = (TSS2_FEATURE_RC_LAYER) <= 0;
  *o = (unsigned long long)((TSS2_FEATURE_RC_LAYER) | 0);  /* check that TSS2_FEATURE_RC_LAYER is an integer */
  return n;
}

static int _cffi_const_TSS2_LAYER_IMPLEMENTATION_SPECIFIC_OFFSET(unsigned long long *o)
{
  int n = (TSS2_LAYER_IMPLEMENTATION_SPECIFIC_OFFSET) <= 0;
  *o = (unsigned long long)((TSS2_LAYER_IMPLEMENTATION_SPECIFIC_OFFSET) | 0);  /* check that TSS2_LAYER_IMPLEMENTATION_SPECIFIC_OFFSET is an integer */
  return n;
}

static int _cffi_const_TSS2_LEVEL_IMPLEMENTATION_SPECIFIC_SHIFT(unsigned long long *o)
{
  int n = (TSS2_LEVEL_IMPLEMENTATION_SPECIFIC_SHIFT) <= 0;
  *o = (unsigned long long)((TSS2_LEVEL_IMPLEMENTATION_SPECIFIC_SHIFT) | 0);  /* check that TSS2_LEVEL_IMPLEMENTATION_SPECIFIC_SHIFT is an integer */
  return n;
}

static int _cffi_const_TSS2_MU_RC_BAD_REFERENCE(unsigned long long *o)
{
  int n = (TSS2_MU_RC_BAD_REFERENCE) <= 0;
  *o = (unsigned long long)((TSS2_MU_RC_BAD_REFERENCE) | 0);  /* check that TSS2_MU_RC_BAD_REFERENCE is an integer */
  return n;
}

static int _cffi_const_TSS2_MU_RC_BAD_SIZE(unsigned long long *o)
{
  int n = (TSS2_MU_RC_BAD_SIZE) <= 0;
  *o = (unsigned long long)((TSS2_MU_RC_BAD_SIZE) | 0);  /* check that TSS2_MU_RC_BAD_SIZE is an integer */
  return n;
}

static int _cffi_const_TSS2_MU_RC_BAD_VALUE(unsigned long long *o)
{
  int n = (TSS2_MU_RC_BAD_VALUE) <= 0;
  *o = (unsigned long long)((TSS2_MU_RC_BAD_VALUE) | 0);  /* check that TSS2_MU_RC_BAD_VALUE is an integer */
  return n;
}

static int _cffi_const_TSS2_MU_RC_GENERAL_FAILURE(unsigned long long *o)
{
  int n = (TSS2_MU_RC_GENERAL_FAILURE) <= 0;
  *o = (unsigned long long)((TSS2_MU_RC_GENERAL_FAILURE) | 0);  /* check that TSS2_MU_RC_GENERAL_FAILURE is an integer */
  return n;
}

static int _cffi_const_TSS2_MU_RC_INSUFFICIENT_BUFFER(unsigned long long *o)
{
  int n = (TSS2_MU_RC_INSUFFICIENT_BUFFER) <= 0;
  *o = (unsigned long long)((TSS2_MU_RC_INSUFFICIENT_BUFFER) | 0);  /* check that TSS2_MU_RC_INSUFFICIENT_BUFFER is an integer */
  return n;
}

static int _cffi_const_TSS2_MU_RC_LAYER(unsigned long long *o)
{
  int n = (TSS2_MU_RC_LAYER) <= 0;
  *o = (unsigned long long)((TSS2_MU_RC_LAYER) | 0);  /* check that TSS2_MU_RC_LAYER is an integer */
  return n;
}

static int _cffi_const_TSS2_RC_LAYER_MASK(unsigned long long *o)
{
  int n = (TSS2_RC_LAYER_MASK) <= 0;
  *o = (unsigned long long)((TSS2_RC_LAYER_MASK) | 0);  /* check that TSS2_RC_LAYER_MASK is an integer */
  return n;
}

static int _cffi_const_TSS2_RC_LAYER_SHIFT(unsigned long long *o)
{
  int n = (TSS2_RC_LAYER_SHIFT) <= 0;
  *o = (unsigned long long)((TSS2_RC_LAYER_SHIFT) | 0);  /* check that TSS2_RC_LAYER_SHIFT is an integer */
  return n;
}

static int _cffi_const_TSS2_RC_SUCCESS(unsigned long long *o)
{
  int n = (TSS2_RC_SUCCESS) <= 0;
  *o = (unsigned long long)((TSS2_RC_SUCCESS) | 0);  /* check that TSS2_RC_SUCCESS is an integer */
  return n;
}

static int _cffi_const_TSS2_RESMGR_RC_LAYER(unsigned long long *o)
{
  int n = (TSS2_RESMGR_RC_LAYER) <= 0;
  *o = (unsigned long long)((TSS2_RESMGR_RC_LAYER) | 0);  /* check that TSS2_RESMGR_RC_LAYER is an integer */
  return n;
}

static int _cffi_const_TSS2_RESMGR_TPM_RC_LAYER(unsigned long long *o)
{
  int n = (TSS2_RESMGR_TPM_RC_LAYER) <= 0;
  *o = (unsigned long long)((TSS2_RESMGR_TPM_RC_LAYER) | 0);  /* check that TSS2_RESMGR_TPM_RC_LAYER is an integer */
  return n;
}

static int _cffi_const_TSS2_SYS_RC_ABI_MISMATCH(unsigned long long *o)
{
  int n = (TSS2_SYS_RC_ABI_MISMATCH) <= 0;
  *o = (unsigned long long)((TSS2_SYS_RC_ABI_MISMATCH) | 0);  /* check that TSS2_SYS_RC_ABI_MISMATCH is an integer */
  return n;
}

static int _cffi_const_TSS2_SYS_RC_BAD_REFERENCE(unsigned long long *o)
{
  int n = (TSS2_SYS_RC_BAD_REFERENCE) <= 0;
  *o = (unsigned long long)((TSS2_SYS_RC_BAD_REFERENCE) | 0);  /* check that TSS2_SYS_RC_BAD_REFERENCE is an integer */
  return n;
}

static int _cffi_const_TSS2_SYS_RC_BAD_SEQUENCE(unsigned long long *o)
{
  int n = (TSS2_SYS_RC_BAD_SEQUENCE) <= 0;
  *o = (unsigned long long)((TSS2_SYS_RC_BAD_SEQUENCE) | 0);  /* check that TSS2_SYS_RC_BAD_SEQUENCE is an integer */
  return n;
}

static int _cffi_const_TSS2_SYS_RC_BAD_SIZE(unsigned long long *o)
{
  int n = (TSS2_SYS_RC_BAD_SIZE) <= 0;
  *o = (unsigned long long)((TSS2_SYS_RC_BAD_SIZE) | 0);  /* check that TSS2_SYS_RC_BAD_SIZE is an integer */
  return n;
}

static int _cffi_const_TSS2_SYS_RC_BAD_TCTI_STRUCTURE(unsigned long long *o)
{
  int n = (TSS2_SYS_RC_BAD_TCTI_STRUCTURE) <= 0;
  *o = (unsigned long long)((TSS2_SYS_RC_BAD_TCTI_STRUCTURE) | 0);  /* check that TSS2_SYS_RC_BAD_TCTI_STRUCTURE is an integer */
  return n;
}

static int _cffi_const_TSS2_SYS_RC_BAD_VALUE(unsigned long long *o)
{
  int n = (TSS2_SYS_RC_BAD_VALUE) <= 0;
  *o = (unsigned long long)((TSS2_SYS_RC_BAD_VALUE) | 0);  /* check that TSS2_SYS_RC_BAD_VALUE is an integer */
  return n;
}

static int _cffi_const_TSS2_SYS_RC_GENERAL_FAILURE(unsigned long long *o)
{
  int n = (TSS2_SYS_RC_GENERAL_FAILURE) <= 0;
  *o = (unsigned long long)((TSS2_SYS_RC_GENERAL_FAILURE) | 0);  /* check that TSS2_SYS_RC_GENERAL_FAILURE is an integer */
  return n;
}

static int _cffi_const_TSS2_SYS_RC_INCOMPATIBLE_TCTI(unsigned long long *o)
{
  int n = (TSS2_SYS_RC_INCOMPATIBLE_TCTI) <= 0;
  *o = (unsigned long long)((TSS2_SYS_RC_INCOMPATIBLE_TCTI) | 0);  /* check that TSS2_SYS_RC_INCOMPATIBLE_TCTI is an integer */
  return n;
}

static int _cffi_const_TSS2_SYS_RC_INSUFFICIENT_BUFFER(unsigned long long *o)
{
  int n = (TSS2_SYS_RC_INSUFFICIENT_BUFFER) <= 0;
  *o = (unsigned long long)((TSS2_SYS_RC_INSUFFICIENT_BUFFER) | 0);  /* check that TSS2_SYS_RC_INSUFFICIENT_BUFFER is an integer */
  return n;
}

static int _cffi_const_TSS2_SYS_RC_INSUFFICIENT_CONTEXT(unsigned long long *o)
{
  int n = (TSS2_SYS_RC_INSUFFICIENT_CONTEXT) <= 0;
  *o = (unsigned long long)((TSS2_SYS_RC_INSUFFICIENT_CONTEXT) | 0);  /* check that TSS2_SYS_RC_INSUFFICIENT_CONTEXT is an integer */
  return n;
}

static int _cffi_const_TSS2_SYS_RC_INSUFFICIENT_RESPONSE(unsigned long long *o)
{
  int n = (TSS2_SYS_RC_INSUFFICIENT_RESPONSE) <= 0;
  *o = (unsigned long long)((TSS2_SYS_RC_INSUFFICIENT_RESPONSE) | 0);  /* check that TSS2_SYS_RC_INSUFFICIENT_RESPONSE is an integer */
  return n;
}

static int _cffi_const_TSS2_SYS_RC_INVALID_SESSIONS(unsigned long long *o)
{
  int n = (TSS2_SYS_RC_INVALID_SESSIONS) <= 0;
  *o = (unsigned long long)((TSS2_SYS_RC_INVALID_SESSIONS) | 0);  /* check that TSS2_SYS_RC_INVALID_SESSIONS is an integer */
  return n;
}

static int _cffi_const_TSS2_SYS_RC_LAYER(unsigned long long *o)
{
  int n = (TSS2_SYS_RC_LAYER) <= 0;
  *o = (unsigned long long)((TSS2_SYS_RC_LAYER) | 0);  /* check that TSS2_SYS_RC_LAYER is an integer */
  return n;
}

static int _cffi_const_TSS2_SYS_RC_MALFORMED_RESPONSE(unsigned long long *o)
{
  int n = (TSS2_SYS_RC_MALFORMED_RESPONSE) <= 0;
  *o = (unsigned long long)((TSS2_SYS_RC_MALFORMED_RESPONSE) | 0);  /* check that TSS2_SYS_RC_MALFORMED_RESPONSE is an integer */
  return n;
}

static int _cffi_const_TSS2_SYS_RC_NO_DECRYPT_PARAM(unsigned long long *o)
{
  int n = (TSS2_SYS_RC_NO_DECRYPT_PARAM) <= 0;
  *o = (unsigned long long)((TSS2_SYS_RC_NO_DECRYPT_PARAM) | 0);  /* check that TSS2_SYS_RC_NO_DECRYPT_PARAM is an integer */
  return n;
}

static int _cffi_const_TSS2_SYS_RC_NO_ENCRYPT_PARAM(unsigned long long *o)
{
  int n = (TSS2_SYS_RC_NO_ENCRYPT_PARAM) <= 0;
  *o = (unsigned long long)((TSS2_SYS_RC_NO_ENCRYPT_PARAM) | 0);  /* check that TSS2_SYS_RC_NO_ENCRYPT_PARAM is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_RC_ABI_MISMATCH(unsigned long long *o)
{
  int n = (TSS2_TCTI_RC_ABI_MISMATCH) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_RC_ABI_MISMATCH) | 0);  /* check that TSS2_TCTI_RC_ABI_MISMATCH is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_RC_BAD_CONTEXT(unsigned long long *o)
{
  int n = (TSS2_TCTI_RC_BAD_CONTEXT) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_RC_BAD_CONTEXT) | 0);  /* check that TSS2_TCTI_RC_BAD_CONTEXT is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_RC_BAD_REFERENCE(unsigned long long *o)
{
  int n = (TSS2_TCTI_RC_BAD_REFERENCE) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_RC_BAD_REFERENCE) | 0);  /* check that TSS2_TCTI_RC_BAD_REFERENCE is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_RC_BAD_SEQUENCE(unsigned long long *o)
{
  int n = (TSS2_TCTI_RC_BAD_SEQUENCE) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_RC_BAD_SEQUENCE) | 0);  /* check that TSS2_TCTI_RC_BAD_SEQUENCE is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_RC_BAD_VALUE(unsigned long long *o)
{
  int n = (TSS2_TCTI_RC_BAD_VALUE) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_RC_BAD_VALUE) | 0);  /* check that TSS2_TCTI_RC_BAD_VALUE is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_RC_GENERAL_FAILURE(unsigned long long *o)
{
  int n = (TSS2_TCTI_RC_GENERAL_FAILURE) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_RC_GENERAL_FAILURE) | 0);  /* check that TSS2_TCTI_RC_GENERAL_FAILURE is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_RC_INSUFFICIENT_BUFFER(unsigned long long *o)
{
  int n = (TSS2_TCTI_RC_INSUFFICIENT_BUFFER) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_RC_INSUFFICIENT_BUFFER) | 0);  /* check that TSS2_TCTI_RC_INSUFFICIENT_BUFFER is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_RC_IO_ERROR(unsigned long long *o)
{
  int n = (TSS2_TCTI_RC_IO_ERROR) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_RC_IO_ERROR) | 0);  /* check that TSS2_TCTI_RC_IO_ERROR is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_RC_LAYER(unsigned long long *o)
{
  int n = (TSS2_TCTI_RC_LAYER) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_RC_LAYER) | 0);  /* check that TSS2_TCTI_RC_LAYER is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_RC_MALFORMED_RESPONSE(unsigned long long *o)
{
  int n = (TSS2_TCTI_RC_MALFORMED_RESPONSE) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_RC_MALFORMED_RESPONSE) | 0);  /* check that TSS2_TCTI_RC_MALFORMED_RESPONSE is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_RC_MEMORY(unsigned long long *o)
{
  int n = (TSS2_TCTI_RC_MEMORY) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_RC_MEMORY) | 0);  /* check that TSS2_TCTI_RC_MEMORY is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_RC_NOT_IMPLEMENTED(unsigned long long *o)
{
  int n = (TSS2_TCTI_RC_NOT_IMPLEMENTED) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_RC_NOT_IMPLEMENTED) | 0);  /* check that TSS2_TCTI_RC_NOT_IMPLEMENTED is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_RC_NOT_PERMITTED(unsigned long long *o)
{
  int n = (TSS2_TCTI_RC_NOT_PERMITTED) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_RC_NOT_PERMITTED) | 0);  /* check that TSS2_TCTI_RC_NOT_PERMITTED is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_RC_NOT_SUPPORTED(unsigned long long *o)
{
  int n = (TSS2_TCTI_RC_NOT_SUPPORTED) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_RC_NOT_SUPPORTED) | 0);  /* check that TSS2_TCTI_RC_NOT_SUPPORTED is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_RC_NO_CONNECTION(unsigned long long *o)
{
  int n = (TSS2_TCTI_RC_NO_CONNECTION) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_RC_NO_CONNECTION) | 0);  /* check that TSS2_TCTI_RC_NO_CONNECTION is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_RC_TRY_AGAIN(unsigned long long *o)
{
  int n = (TSS2_TCTI_RC_TRY_AGAIN) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_RC_TRY_AGAIN) | 0);  /* check that TSS2_TCTI_RC_TRY_AGAIN is an integer */
  return n;
}

static int _cffi_const_TSS2_TCTI_TIMEOUT_BLOCK(unsigned long long *o)
{
  int n = (TSS2_TCTI_TIMEOUT_BLOCK) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_TIMEOUT_BLOCK) | 0);  /* check that TSS2_TCTI_TIMEOUT_BLOCK is an integer */
  if (!_cffi_check_int(*o, n, -1))
    n |= 2;
  return n;
}

static int _cffi_const_TSS2_TCTI_TIMEOUT_NONE(unsigned long long *o)
{
  int n = (TSS2_TCTI_TIMEOUT_NONE) <= 0;
  *o = (unsigned long long)((TSS2_TCTI_TIMEOUT_NONE) | 0);  /* check that TSS2_TCTI_TIMEOUT_NONE is an integer */
  if (!_cffi_check_int(*o, n, 0))
    n |= 2;
  return n;
}

static int _cffi_const_TSS2_TPM_RC_LAYER(unsigned long long *o)
{
  int n = (TSS2_TPM_RC_LAYER) <= 0;
  *o = (unsigned long long)((TSS2_TPM_RC_LAYER) | 0);  /* check that TSS2_TPM_RC_LAYER is an integer */
  return n;
}

_CFFI_UNUSED_FN
static void _cffi_checkfld__ESYS_CRYPTO_CALLBACKS(ESYS_CRYPTO_CALLBACKS *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { uint32_t(* *tmp)(TPM2B_PUBLIC *, size_t, uint8_t *, size_t, uint8_t *, size_t *, char const *, void *) = &p->rsa_pk_encrypt; (void)tmp; }
  { uint32_t(* *tmp)(ESYS_CRYPTO_CONTEXT_BLOB * *, uint16_t, void *) = &p->hash_start; (void)tmp; }
  { uint32_t(* *tmp)(ESYS_CRYPTO_CONTEXT_BLOB *, uint8_t const *, size_t, void *) = &p->hash_update; (void)tmp; }
  { uint32_t(* *tmp)(ESYS_CRYPTO_CONTEXT_BLOB * *, uint8_t *, size_t *, void *) = &p->hash_finish; (void)tmp; }
  { void(* *tmp)(ESYS_CRYPTO_CONTEXT_BLOB * *, void *) = &p->hash_abort; (void)tmp; }
  { uint32_t(* *tmp)(ESYS_CRYPTO_CONTEXT_BLOB * *, uint16_t, uint8_t const *, size_t, void *) = &p->hmac_start; (void)tmp; }
  { uint32_t(* *tmp)(ESYS_CRYPTO_CONTEXT_BLOB *, uint8_t const *, size_t, void *) = &p->hmac_update; (void)tmp; }
  { uint32_t(* *tmp)(ESYS_CRYPTO_CONTEXT_BLOB * *, uint8_t *, size_t *, void *) = &p->hmac_finish; (void)tmp; }
  { void(* *tmp)(ESYS_CRYPTO_CONTEXT_BLOB * *, void *) = &p->hmac_abort; (void)tmp; }
  { uint32_t(* *tmp)(TPM2B_DIGEST *, size_t, void *) = &p->get_random2b; (void)tmp; }
  { uint32_t(* *tmp)(TPM2B_PUBLIC *, size_t, TPM2B_ECC_PARAMETER *, TPMS_ECC_POINT *, uint8_t *, size_t *, void *) = &p->get_ecdh_point; (void)tmp; }
  { uint32_t(* *tmp)(uint8_t *, uint16_t, uint16_t, uint16_t, uint8_t *, size_t, uint8_t *, void *) = &p->aes_encrypt; (void)tmp; }
  { uint32_t(* *tmp)(uint8_t *, uint16_t, uint16_t, uint16_t, uint8_t *, size_t, uint8_t *, void *) = &p->aes_decrypt; (void)tmp; }
  { uint32_t(* *tmp)(void *) = &p->init; (void)tmp; }
  { void * *tmp = &p->userdata; (void)tmp; }
}
struct _cffi_align__ESYS_CRYPTO_CALLBACKS { char x; ESYS_CRYPTO_CALLBACKS y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__PYTCTI_CONTEXT(PYTCTI_CONTEXT *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TSS2_TCTI_CONTEXT_COMMON_V2 *tmp = &p->common; (void)tmp; }
  { void * *tmp = &p->thiz; (void)tmp; }
}
struct _cffi_align__PYTCTI_CONTEXT { char x; PYTCTI_CONTEXT y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_ATTEST(TPM2B_ATTEST *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_ATTEST.size' is an integer */
  { uint8_t *tmp = &p->attestationData[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_ATTEST { char x; TPM2B_ATTEST y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_CONTEXT_DATA(TPM2B_CONTEXT_DATA *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_CONTEXT_DATA.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_CONTEXT_DATA { char x; TPM2B_CONTEXT_DATA y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_CONTEXT_SENSITIVE(TPM2B_CONTEXT_SENSITIVE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_CONTEXT_SENSITIVE.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_CONTEXT_SENSITIVE { char x; TPM2B_CONTEXT_SENSITIVE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_CREATION_DATA(TPM2B_CREATION_DATA *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_CREATION_DATA.size' is an integer */
  { TPMS_CREATION_DATA *tmp = &p->creationData; (void)tmp; }
}
struct _cffi_align__TPM2B_CREATION_DATA { char x; TPM2B_CREATION_DATA y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_DATA(TPM2B_DATA *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_DATA.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_DATA { char x; TPM2B_DATA y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_DERIVE(TPM2B_DERIVE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_DERIVE.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_DERIVE { char x; TPM2B_DERIVE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_DIGEST(TPM2B_DIGEST *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_DIGEST.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_DIGEST { char x; TPM2B_DIGEST y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_ECC_PARAMETER(TPM2B_ECC_PARAMETER *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_ECC_PARAMETER.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_ECC_PARAMETER { char x; TPM2B_ECC_PARAMETER y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_ECC_POINT(TPM2B_ECC_POINT *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_ECC_POINT.size' is an integer */
  { TPMS_ECC_POINT *tmp = &p->point; (void)tmp; }
}
struct _cffi_align__TPM2B_ECC_POINT { char x; TPM2B_ECC_POINT y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_ENCRYPTED_SECRET(TPM2B_ENCRYPTED_SECRET *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_ENCRYPTED_SECRET.size' is an integer */
  { uint8_t *tmp = &p->secret[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_ENCRYPTED_SECRET { char x; TPM2B_ENCRYPTED_SECRET y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_EVENT(TPM2B_EVENT *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_EVENT.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_EVENT { char x; TPM2B_EVENT y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_ID_OBJECT(TPM2B_ID_OBJECT *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_ID_OBJECT.size' is an integer */
  { uint8_t *tmp = &p->credential[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_ID_OBJECT { char x; TPM2B_ID_OBJECT y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_IV(TPM2B_IV *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_IV.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_IV { char x; TPM2B_IV y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_LABEL(TPM2B_LABEL *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_LABEL.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_LABEL { char x; TPM2B_LABEL y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_MAX_BUFFER(TPM2B_MAX_BUFFER *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_MAX_BUFFER.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_MAX_BUFFER { char x; TPM2B_MAX_BUFFER y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_MAX_CAP_BUFFER(TPM2B_MAX_CAP_BUFFER *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_MAX_CAP_BUFFER.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_MAX_CAP_BUFFER { char x; TPM2B_MAX_CAP_BUFFER y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_MAX_NV_BUFFER(TPM2B_MAX_NV_BUFFER *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_MAX_NV_BUFFER.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_MAX_NV_BUFFER { char x; TPM2B_MAX_NV_BUFFER y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_NAME(TPM2B_NAME *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_NAME.size' is an integer */
  { uint8_t *tmp = &p->name[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_NAME { char x; TPM2B_NAME y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_NV_PUBLIC(TPM2B_NV_PUBLIC *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_NV_PUBLIC.size' is an integer */
  { TPMS_NV_PUBLIC *tmp = &p->nvPublic; (void)tmp; }
}
struct _cffi_align__TPM2B_NV_PUBLIC { char x; TPM2B_NV_PUBLIC y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_PRIVATE(TPM2B_PRIVATE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_PRIVATE.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_PRIVATE { char x; TPM2B_PRIVATE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_PRIVATE_KEY_RSA(TPM2B_PRIVATE_KEY_RSA *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_PRIVATE_KEY_RSA.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_PRIVATE_KEY_RSA { char x; TPM2B_PRIVATE_KEY_RSA y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_PRIVATE_VENDOR_SPECIFIC(TPM2B_PRIVATE_VENDOR_SPECIFIC *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_PRIVATE_VENDOR_SPECIFIC.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_PRIVATE_VENDOR_SPECIFIC { char x; TPM2B_PRIVATE_VENDOR_SPECIFIC y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_PUBLIC(TPM2B_PUBLIC *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_PUBLIC.size' is an integer */
  { TPMT_PUBLIC *tmp = &p->publicArea; (void)tmp; }
}
struct _cffi_align__TPM2B_PUBLIC { char x; TPM2B_PUBLIC y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_PUBLIC_KEY_RSA(TPM2B_PUBLIC_KEY_RSA *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_PUBLIC_KEY_RSA.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_PUBLIC_KEY_RSA { char x; TPM2B_PUBLIC_KEY_RSA y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_SENSITIVE(TPM2B_SENSITIVE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_SENSITIVE.size' is an integer */
  { TPMT_SENSITIVE *tmp = &p->sensitiveArea; (void)tmp; }
}
struct _cffi_align__TPM2B_SENSITIVE { char x; TPM2B_SENSITIVE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_SENSITIVE_CREATE(TPM2B_SENSITIVE_CREATE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_SENSITIVE_CREATE.size' is an integer */
  { TPMS_SENSITIVE_CREATE *tmp = &p->sensitive; (void)tmp; }
}
struct _cffi_align__TPM2B_SENSITIVE_CREATE { char x; TPM2B_SENSITIVE_CREATE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_SENSITIVE_DATA(TPM2B_SENSITIVE_DATA *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_SENSITIVE_DATA.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_SENSITIVE_DATA { char x; TPM2B_SENSITIVE_DATA y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_SYM_KEY(TPM2B_SYM_KEY *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_SYM_KEY.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_SYM_KEY { char x; TPM2B_SYM_KEY y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPM2B_TEMPLATE(TPM2B_TEMPLATE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->size) | 0);  /* check that 'TPM2B_TEMPLATE.size' is an integer */
  { uint8_t *tmp = &p->buffer[0]; (void)tmp; }
}
struct _cffi_align__TPM2B_TEMPLATE { char x; TPM2B_TEMPLATE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPML_ACT_DATA(TPML_ACT_DATA *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->count) | 0);  /* check that 'TPML_ACT_DATA.count' is an integer */
  { TPMS_ACT_DATA *tmp = &p->actData[0]; (void)tmp; }
}
struct _cffi_align__TPML_ACT_DATA { char x; TPML_ACT_DATA y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPML_AC_CAPABILITIES(TPML_AC_CAPABILITIES *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->count) | 0);  /* check that 'TPML_AC_CAPABILITIES.count' is an integer */
  { TPMS_AC_OUTPUT *tmp = &p->acCapabilities[0]; (void)tmp; }
}
struct _cffi_align__TPML_AC_CAPABILITIES { char x; TPML_AC_CAPABILITIES y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPML_ALG(TPML_ALG *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->count) | 0);  /* check that 'TPML_ALG.count' is an integer */
  { uint16_t *tmp = &p->algorithms[0]; (void)tmp; }
}
struct _cffi_align__TPML_ALG { char x; TPML_ALG y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPML_ALG_PROPERTY(TPML_ALG_PROPERTY *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->count) | 0);  /* check that 'TPML_ALG_PROPERTY.count' is an integer */
  { TPMS_ALG_PROPERTY *tmp = &p->algProperties[0]; (void)tmp; }
}
struct _cffi_align__TPML_ALG_PROPERTY { char x; TPML_ALG_PROPERTY y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPML_CC(TPML_CC *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->count) | 0);  /* check that 'TPML_CC.count' is an integer */
  { uint32_t *tmp = &p->commandCodes[0]; (void)tmp; }
}
struct _cffi_align__TPML_CC { char x; TPML_CC y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPML_CCA(TPML_CCA *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->count) | 0);  /* check that 'TPML_CCA.count' is an integer */
  { uint32_t *tmp = &p->commandAttributes[0]; (void)tmp; }
}
struct _cffi_align__TPML_CCA { char x; TPML_CCA y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPML_DIGEST(TPML_DIGEST *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->count) | 0);  /* check that 'TPML_DIGEST.count' is an integer */
  { TPM2B_DIGEST *tmp = &p->digests[0]; (void)tmp; }
}
struct _cffi_align__TPML_DIGEST { char x; TPML_DIGEST y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPML_DIGEST_VALUES(TPML_DIGEST_VALUES *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->count) | 0);  /* check that 'TPML_DIGEST_VALUES.count' is an integer */
  { TPMT_HA *tmp = &p->digests[0]; (void)tmp; }
}
struct _cffi_align__TPML_DIGEST_VALUES { char x; TPML_DIGEST_VALUES y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPML_ECC_CURVE(TPML_ECC_CURVE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->count) | 0);  /* check that 'TPML_ECC_CURVE.count' is an integer */
  { uint16_t *tmp = &p->eccCurves[0]; (void)tmp; }
}
struct _cffi_align__TPML_ECC_CURVE { char x; TPML_ECC_CURVE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPML_HANDLE(TPML_HANDLE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->count) | 0);  /* check that 'TPML_HANDLE.count' is an integer */
  { uint32_t *tmp = &p->handle[0]; (void)tmp; }
}
struct _cffi_align__TPML_HANDLE { char x; TPML_HANDLE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPML_INTEL_PTT_PROPERTY(TPML_INTEL_PTT_PROPERTY *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->count) | 0);  /* check that 'TPML_INTEL_PTT_PROPERTY.count' is an integer */
  { uint32_t *tmp = &p->property[0]; (void)tmp; }
}
struct _cffi_align__TPML_INTEL_PTT_PROPERTY { char x; TPML_INTEL_PTT_PROPERTY y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPML_PCR_SELECTION(TPML_PCR_SELECTION *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->count) | 0);  /* check that 'TPML_PCR_SELECTION.count' is an integer */
  { TPMS_PCR_SELECTION *tmp = &p->pcrSelections[0]; (void)tmp; }
}
struct _cffi_align__TPML_PCR_SELECTION { char x; TPML_PCR_SELECTION y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPML_TAGGED_PCR_PROPERTY(TPML_TAGGED_PCR_PROPERTY *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->count) | 0);  /* check that 'TPML_TAGGED_PCR_PROPERTY.count' is an integer */
  { TPMS_TAGGED_PCR_SELECT *tmp = &p->pcrProperty[0]; (void)tmp; }
}
struct _cffi_align__TPML_TAGGED_PCR_PROPERTY { char x; TPML_TAGGED_PCR_PROPERTY y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPML_TAGGED_POLICY(TPML_TAGGED_POLICY *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->count) | 0);  /* check that 'TPML_TAGGED_POLICY.count' is an integer */
  { TPMS_TAGGED_POLICY *tmp = &p->policies[0]; (void)tmp; }
}
struct _cffi_align__TPML_TAGGED_POLICY { char x; TPML_TAGGED_POLICY y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPML_TAGGED_TPM_PROPERTY(TPML_TAGGED_TPM_PROPERTY *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->count) | 0);  /* check that 'TPML_TAGGED_TPM_PROPERTY.count' is an integer */
  { TPMS_TAGGED_PROPERTY *tmp = &p->tpmProperty[0]; (void)tmp; }
}
struct _cffi_align__TPML_TAGGED_TPM_PROPERTY { char x; TPML_TAGGED_TPM_PROPERTY y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_ACT_DATA(TPMS_ACT_DATA *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->handle) | 0);  /* check that 'TPMS_ACT_DATA.handle' is an integer */
  (void)((p->timeout) | 0);  /* check that 'TPMS_ACT_DATA.timeout' is an integer */
  (void)((p->attributes) | 0);  /* check that 'TPMS_ACT_DATA.attributes' is an integer */
}
struct _cffi_align__TPMS_ACT_DATA { char x; TPMS_ACT_DATA y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_AC_OUTPUT(TPMS_AC_OUTPUT *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->tag) | 0);  /* check that 'TPMS_AC_OUTPUT.tag' is an integer */
  (void)((p->data) | 0);  /* check that 'TPMS_AC_OUTPUT.data' is an integer */
}
struct _cffi_align__TPMS_AC_OUTPUT { char x; TPMS_AC_OUTPUT y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_ALGORITHM_DETAIL_ECC(TPMS_ALGORITHM_DETAIL_ECC *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->curveID) | 0);  /* check that 'TPMS_ALGORITHM_DETAIL_ECC.curveID' is an integer */
  (void)((p->keySize) | 0);  /* check that 'TPMS_ALGORITHM_DETAIL_ECC.keySize' is an integer */
  { TPMT_KDF_SCHEME *tmp = &p->kdf; (void)tmp; }
  { TPMT_ECC_SCHEME *tmp = &p->sign; (void)tmp; }
  { TPM2B_ECC_PARAMETER *tmp = &p->p; (void)tmp; }
  { TPM2B_ECC_PARAMETER *tmp = &p->a; (void)tmp; }
  { TPM2B_ECC_PARAMETER *tmp = &p->b; (void)tmp; }
  { TPM2B_ECC_PARAMETER *tmp = &p->gX; (void)tmp; }
  { TPM2B_ECC_PARAMETER *tmp = &p->gY; (void)tmp; }
  { TPM2B_ECC_PARAMETER *tmp = &p->n; (void)tmp; }
  { TPM2B_ECC_PARAMETER *tmp = &p->h; (void)tmp; }
}
struct _cffi_align__TPMS_ALGORITHM_DETAIL_ECC { char x; TPMS_ALGORITHM_DETAIL_ECC y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_ALG_PROPERTY(TPMS_ALG_PROPERTY *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->alg) | 0);  /* check that 'TPMS_ALG_PROPERTY.alg' is an integer */
  (void)((p->algProperties) | 0);  /* check that 'TPMS_ALG_PROPERTY.algProperties' is an integer */
}
struct _cffi_align__TPMS_ALG_PROPERTY { char x; TPMS_ALG_PROPERTY y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_ASYM_PARMS(TPMS_ASYM_PARMS *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPMT_SYM_DEF_OBJECT *tmp = &p->symmetric; (void)tmp; }
  { TPMT_ASYM_SCHEME *tmp = &p->scheme; (void)tmp; }
}
struct _cffi_align__TPMS_ASYM_PARMS { char x; TPMS_ASYM_PARMS y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_ATTEST(TPMS_ATTEST *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->magic) | 0);  /* check that 'TPMS_ATTEST.magic' is an integer */
  (void)((p->type) | 0);  /* check that 'TPMS_ATTEST.type' is an integer */
  { TPM2B_NAME *tmp = &p->qualifiedSigner; (void)tmp; }
  { TPM2B_DATA *tmp = &p->extraData; (void)tmp; }
  { TPMS_CLOCK_INFO *tmp = &p->clockInfo; (void)tmp; }
  (void)((p->firmwareVersion) | 0);  /* check that 'TPMS_ATTEST.firmwareVersion' is an integer */
  { TPMU_ATTEST *tmp = &p->attested; (void)tmp; }
}
struct _cffi_align__TPMS_ATTEST { char x; TPMS_ATTEST y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_AUTH_COMMAND(TPMS_AUTH_COMMAND *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->sessionHandle) | 0);  /* check that 'TPMS_AUTH_COMMAND.sessionHandle' is an integer */
  { TPM2B_DIGEST *tmp = &p->nonce; (void)tmp; }
  (void)((p->sessionAttributes) | 0);  /* check that 'TPMS_AUTH_COMMAND.sessionAttributes' is an integer */
  { TPM2B_DIGEST *tmp = &p->hmac; (void)tmp; }
}
struct _cffi_align__TPMS_AUTH_COMMAND { char x; TPMS_AUTH_COMMAND y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_AUTH_RESPONSE(TPMS_AUTH_RESPONSE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPM2B_DIGEST *tmp = &p->nonce; (void)tmp; }
  (void)((p->sessionAttributes) | 0);  /* check that 'TPMS_AUTH_RESPONSE.sessionAttributes' is an integer */
  { TPM2B_DIGEST *tmp = &p->hmac; (void)tmp; }
}
struct _cffi_align__TPMS_AUTH_RESPONSE { char x; TPMS_AUTH_RESPONSE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_CAPABILITY_DATA(TPMS_CAPABILITY_DATA *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->capability) | 0);  /* check that 'TPMS_CAPABILITY_DATA.capability' is an integer */
  { TPMU_CAPABILITIES *tmp = &p->data; (void)tmp; }
}
struct _cffi_align__TPMS_CAPABILITY_DATA { char x; TPMS_CAPABILITY_DATA y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_CERTIFY_INFO(TPMS_CERTIFY_INFO *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPM2B_NAME *tmp = &p->name; (void)tmp; }
  { TPM2B_NAME *tmp = &p->qualifiedName; (void)tmp; }
}
struct _cffi_align__TPMS_CERTIFY_INFO { char x; TPMS_CERTIFY_INFO y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_CLOCK_INFO(TPMS_CLOCK_INFO *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->clock) | 0);  /* check that 'TPMS_CLOCK_INFO.clock' is an integer */
  (void)((p->resetCount) | 0);  /* check that 'TPMS_CLOCK_INFO.resetCount' is an integer */
  (void)((p->restartCount) | 0);  /* check that 'TPMS_CLOCK_INFO.restartCount' is an integer */
  (void)((p->safe) | 0);  /* check that 'TPMS_CLOCK_INFO.safe' is an integer */
}
struct _cffi_align__TPMS_CLOCK_INFO { char x; TPMS_CLOCK_INFO y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_COMMAND_AUDIT_INFO(TPMS_COMMAND_AUDIT_INFO *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->auditCounter) | 0);  /* check that 'TPMS_COMMAND_AUDIT_INFO.auditCounter' is an integer */
  (void)((p->digestAlg) | 0);  /* check that 'TPMS_COMMAND_AUDIT_INFO.digestAlg' is an integer */
  { TPM2B_DIGEST *tmp = &p->auditDigest; (void)tmp; }
  { TPM2B_DIGEST *tmp = &p->commandDigest; (void)tmp; }
}
struct _cffi_align__TPMS_COMMAND_AUDIT_INFO { char x; TPMS_COMMAND_AUDIT_INFO y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_CONTEXT(TPMS_CONTEXT *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->sequence) | 0);  /* check that 'TPMS_CONTEXT.sequence' is an integer */
  (void)((p->savedHandle) | 0);  /* check that 'TPMS_CONTEXT.savedHandle' is an integer */
  (void)((p->hierarchy) | 0);  /* check that 'TPMS_CONTEXT.hierarchy' is an integer */
  { TPM2B_CONTEXT_DATA *tmp = &p->contextBlob; (void)tmp; }
}
struct _cffi_align__TPMS_CONTEXT { char x; TPMS_CONTEXT y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_CONTEXT_DATA(TPMS_CONTEXT_DATA *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPM2B_DIGEST *tmp = &p->integrity; (void)tmp; }
  { TPM2B_CONTEXT_SENSITIVE *tmp = &p->encrypted; (void)tmp; }
}
struct _cffi_align__TPMS_CONTEXT_DATA { char x; TPMS_CONTEXT_DATA y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_CREATION_DATA(TPMS_CREATION_DATA *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPML_PCR_SELECTION *tmp = &p->pcrSelect; (void)tmp; }
  { TPM2B_DIGEST *tmp = &p->pcrDigest; (void)tmp; }
  (void)((p->locality) | 0);  /* check that 'TPMS_CREATION_DATA.locality' is an integer */
  (void)((p->parentNameAlg) | 0);  /* check that 'TPMS_CREATION_DATA.parentNameAlg' is an integer */
  { TPM2B_NAME *tmp = &p->parentName; (void)tmp; }
  { TPM2B_NAME *tmp = &p->parentQualifiedName; (void)tmp; }
  { TPM2B_DATA *tmp = &p->outsideInfo; (void)tmp; }
}
struct _cffi_align__TPMS_CREATION_DATA { char x; TPMS_CREATION_DATA y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_CREATION_INFO(TPMS_CREATION_INFO *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPM2B_NAME *tmp = &p->objectName; (void)tmp; }
  { TPM2B_DIGEST *tmp = &p->creationHash; (void)tmp; }
}
struct _cffi_align__TPMS_CREATION_INFO { char x; TPMS_CREATION_INFO y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_DERIVE(TPMS_DERIVE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPM2B_LABEL *tmp = &p->label; (void)tmp; }
  { TPM2B_LABEL *tmp = &p->context; (void)tmp; }
}
struct _cffi_align__TPMS_DERIVE { char x; TPMS_DERIVE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_ECC_PARMS(TPMS_ECC_PARMS *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPMT_SYM_DEF_OBJECT *tmp = &p->symmetric; (void)tmp; }
  { TPMT_ECC_SCHEME *tmp = &p->scheme; (void)tmp; }
  (void)((p->curveID) | 0);  /* check that 'TPMS_ECC_PARMS.curveID' is an integer */
  { TPMT_KDF_SCHEME *tmp = &p->kdf; (void)tmp; }
}
struct _cffi_align__TPMS_ECC_PARMS { char x; TPMS_ECC_PARMS y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_ECC_POINT(TPMS_ECC_POINT *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPM2B_ECC_PARAMETER *tmp = &p->x; (void)tmp; }
  { TPM2B_ECC_PARAMETER *tmp = &p->y; (void)tmp; }
}
struct _cffi_align__TPMS_ECC_POINT { char x; TPMS_ECC_POINT y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_EMPTY(TPMS_EMPTY *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { uint8_t *tmp = &p->empty[0]; (void)tmp; }
}
struct _cffi_align__TPMS_EMPTY { char x; TPMS_EMPTY y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_ID_OBJECT(TPMS_ID_OBJECT *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPM2B_DIGEST *tmp = &p->integrityHMAC; (void)tmp; }
  { TPM2B_DIGEST *tmp = &p->encIdentity; (void)tmp; }
}
struct _cffi_align__TPMS_ID_OBJECT { char x; TPMS_ID_OBJECT y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_KEYEDHASH_PARMS(TPMS_KEYEDHASH_PARMS *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPMT_KEYEDHASH_SCHEME *tmp = &p->scheme; (void)tmp; }
}
struct _cffi_align__TPMS_KEYEDHASH_PARMS { char x; TPMS_KEYEDHASH_PARMS y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_NV_CERTIFY_INFO(TPMS_NV_CERTIFY_INFO *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPM2B_NAME *tmp = &p->indexName; (void)tmp; }
  (void)((p->offset) | 0);  /* check that 'TPMS_NV_CERTIFY_INFO.offset' is an integer */
  { TPM2B_MAX_NV_BUFFER *tmp = &p->nvContents; (void)tmp; }
}
struct _cffi_align__TPMS_NV_CERTIFY_INFO { char x; TPMS_NV_CERTIFY_INFO y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_NV_DIGEST_CERTIFY_INFO(TPMS_NV_DIGEST_CERTIFY_INFO *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPM2B_NAME *tmp = &p->indexName; (void)tmp; }
  { TPM2B_DIGEST *tmp = &p->nvDigest; (void)tmp; }
}
struct _cffi_align__TPMS_NV_DIGEST_CERTIFY_INFO { char x; TPMS_NV_DIGEST_CERTIFY_INFO y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_NV_PIN_COUNTER_PARAMETERS(TPMS_NV_PIN_COUNTER_PARAMETERS *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->pinCount) | 0);  /* check that 'TPMS_NV_PIN_COUNTER_PARAMETERS.pinCount' is an integer */
  (void)((p->pinLimit) | 0);  /* check that 'TPMS_NV_PIN_COUNTER_PARAMETERS.pinLimit' is an integer */
}
struct _cffi_align__TPMS_NV_PIN_COUNTER_PARAMETERS { char x; TPMS_NV_PIN_COUNTER_PARAMETERS y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_NV_PUBLIC(TPMS_NV_PUBLIC *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->nvIndex) | 0);  /* check that 'TPMS_NV_PUBLIC.nvIndex' is an integer */
  (void)((p->nameAlg) | 0);  /* check that 'TPMS_NV_PUBLIC.nameAlg' is an integer */
  (void)((p->attributes) | 0);  /* check that 'TPMS_NV_PUBLIC.attributes' is an integer */
  { TPM2B_DIGEST *tmp = &p->authPolicy; (void)tmp; }
  (void)((p->dataSize) | 0);  /* check that 'TPMS_NV_PUBLIC.dataSize' is an integer */
}
struct _cffi_align__TPMS_NV_PUBLIC { char x; TPMS_NV_PUBLIC y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_PCR_SELECT(TPMS_PCR_SELECT *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->sizeofSelect) | 0);  /* check that 'TPMS_PCR_SELECT.sizeofSelect' is an integer */
  { uint8_t *tmp = &p->pcrSelect[0]; (void)tmp; }
}
struct _cffi_align__TPMS_PCR_SELECT { char x; TPMS_PCR_SELECT y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_PCR_SELECTION(TPMS_PCR_SELECTION *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->hash) | 0);  /* check that 'TPMS_PCR_SELECTION.hash' is an integer */
  (void)((p->sizeofSelect) | 0);  /* check that 'TPMS_PCR_SELECTION.sizeofSelect' is an integer */
  { uint8_t *tmp = &p->pcrSelect[0]; (void)tmp; }
}
struct _cffi_align__TPMS_PCR_SELECTION { char x; TPMS_PCR_SELECTION y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_QUOTE_INFO(TPMS_QUOTE_INFO *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPML_PCR_SELECTION *tmp = &p->pcrSelect; (void)tmp; }
  { TPM2B_DIGEST *tmp = &p->pcrDigest; (void)tmp; }
}
struct _cffi_align__TPMS_QUOTE_INFO { char x; TPMS_QUOTE_INFO y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_RSA_PARMS(TPMS_RSA_PARMS *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPMT_SYM_DEF_OBJECT *tmp = &p->symmetric; (void)tmp; }
  { TPMT_RSA_SCHEME *tmp = &p->scheme; (void)tmp; }
  (void)((p->keyBits) | 0);  /* check that 'TPMS_RSA_PARMS.keyBits' is an integer */
  (void)((p->exponent) | 0);  /* check that 'TPMS_RSA_PARMS.exponent' is an integer */
}
struct _cffi_align__TPMS_RSA_PARMS { char x; TPMS_RSA_PARMS y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_SCHEME_ECDAA(TPMS_SCHEME_ECDAA *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->hashAlg) | 0);  /* check that 'TPMS_SCHEME_ECDAA.hashAlg' is an integer */
  (void)((p->count) | 0);  /* check that 'TPMS_SCHEME_ECDAA.count' is an integer */
}
struct _cffi_align__TPMS_SCHEME_ECDAA { char x; TPMS_SCHEME_ECDAA y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_SCHEME_HASH(TPMS_SCHEME_HASH *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->hashAlg) | 0);  /* check that 'TPMS_SCHEME_HASH.hashAlg' is an integer */
}
struct _cffi_align__TPMS_SCHEME_HASH { char x; TPMS_SCHEME_HASH y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_SCHEME_XOR(TPMS_SCHEME_XOR *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->hashAlg) | 0);  /* check that 'TPMS_SCHEME_XOR.hashAlg' is an integer */
  (void)((p->kdf) | 0);  /* check that 'TPMS_SCHEME_XOR.kdf' is an integer */
}
struct _cffi_align__TPMS_SCHEME_XOR { char x; TPMS_SCHEME_XOR y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_SENSITIVE_CREATE(TPMS_SENSITIVE_CREATE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPM2B_DIGEST *tmp = &p->userAuth; (void)tmp; }
  { TPM2B_SENSITIVE_DATA *tmp = &p->data; (void)tmp; }
}
struct _cffi_align__TPMS_SENSITIVE_CREATE { char x; TPMS_SENSITIVE_CREATE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_SESSION_AUDIT_INFO(TPMS_SESSION_AUDIT_INFO *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->exclusiveSession) | 0);  /* check that 'TPMS_SESSION_AUDIT_INFO.exclusiveSession' is an integer */
  { TPM2B_DIGEST *tmp = &p->sessionDigest; (void)tmp; }
}
struct _cffi_align__TPMS_SESSION_AUDIT_INFO { char x; TPMS_SESSION_AUDIT_INFO y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_SIGNATURE_ECC(TPMS_SIGNATURE_ECC *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->hash) | 0);  /* check that 'TPMS_SIGNATURE_ECC.hash' is an integer */
  { TPM2B_ECC_PARAMETER *tmp = &p->signatureR; (void)tmp; }
  { TPM2B_ECC_PARAMETER *tmp = &p->signatureS; (void)tmp; }
}
struct _cffi_align__TPMS_SIGNATURE_ECC { char x; TPMS_SIGNATURE_ECC y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_SIGNATURE_RSA(TPMS_SIGNATURE_RSA *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->hash) | 0);  /* check that 'TPMS_SIGNATURE_RSA.hash' is an integer */
  { TPM2B_PUBLIC_KEY_RSA *tmp = &p->sig; (void)tmp; }
}
struct _cffi_align__TPMS_SIGNATURE_RSA { char x; TPMS_SIGNATURE_RSA y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_SYMCIPHER_PARMS(TPMS_SYMCIPHER_PARMS *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPMT_SYM_DEF_OBJECT *tmp = &p->sym; (void)tmp; }
}
struct _cffi_align__TPMS_SYMCIPHER_PARMS { char x; TPMS_SYMCIPHER_PARMS y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_TAGGED_PCR_SELECT(TPMS_TAGGED_PCR_SELECT *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->tag) | 0);  /* check that 'TPMS_TAGGED_PCR_SELECT.tag' is an integer */
  (void)((p->sizeofSelect) | 0);  /* check that 'TPMS_TAGGED_PCR_SELECT.sizeofSelect' is an integer */
  { uint8_t *tmp = &p->pcrSelect[0]; (void)tmp; }
}
struct _cffi_align__TPMS_TAGGED_PCR_SELECT { char x; TPMS_TAGGED_PCR_SELECT y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_TAGGED_POLICY(TPMS_TAGGED_POLICY *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->handle) | 0);  /* check that 'TPMS_TAGGED_POLICY.handle' is an integer */
  { TPMT_HA *tmp = &p->policyHash; (void)tmp; }
}
struct _cffi_align__TPMS_TAGGED_POLICY { char x; TPMS_TAGGED_POLICY y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_TAGGED_PROPERTY(TPMS_TAGGED_PROPERTY *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->property) | 0);  /* check that 'TPMS_TAGGED_PROPERTY.property' is an integer */
  (void)((p->value) | 0);  /* check that 'TPMS_TAGGED_PROPERTY.value' is an integer */
}
struct _cffi_align__TPMS_TAGGED_PROPERTY { char x; TPMS_TAGGED_PROPERTY y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_TIME_ATTEST_INFO(TPMS_TIME_ATTEST_INFO *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPMS_TIME_INFO *tmp = &p->time; (void)tmp; }
  (void)((p->firmwareVersion) | 0);  /* check that 'TPMS_TIME_ATTEST_INFO.firmwareVersion' is an integer */
}
struct _cffi_align__TPMS_TIME_ATTEST_INFO { char x; TPMS_TIME_ATTEST_INFO y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMS_TIME_INFO(TPMS_TIME_INFO *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->time) | 0);  /* check that 'TPMS_TIME_INFO.time' is an integer */
  { TPMS_CLOCK_INFO *tmp = &p->clockInfo; (void)tmp; }
}
struct _cffi_align__TPMS_TIME_INFO { char x; TPMS_TIME_INFO y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_ASYM_SCHEME(TPMT_ASYM_SCHEME *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->scheme) | 0);  /* check that 'TPMT_ASYM_SCHEME.scheme' is an integer */
  { TPMU_ASYM_SCHEME *tmp = &p->details; (void)tmp; }
}
struct _cffi_align__TPMT_ASYM_SCHEME { char x; TPMT_ASYM_SCHEME y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_ECC_SCHEME(TPMT_ECC_SCHEME *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->scheme) | 0);  /* check that 'TPMT_ECC_SCHEME.scheme' is an integer */
  { TPMU_ASYM_SCHEME *tmp = &p->details; (void)tmp; }
}
struct _cffi_align__TPMT_ECC_SCHEME { char x; TPMT_ECC_SCHEME y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_HA(TPMT_HA *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->hashAlg) | 0);  /* check that 'TPMT_HA.hashAlg' is an integer */
  { TPMU_HA *tmp = &p->digest; (void)tmp; }
}
struct _cffi_align__TPMT_HA { char x; TPMT_HA y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_KDF_SCHEME(TPMT_KDF_SCHEME *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->scheme) | 0);  /* check that 'TPMT_KDF_SCHEME.scheme' is an integer */
  { TPMU_KDF_SCHEME *tmp = &p->details; (void)tmp; }
}
struct _cffi_align__TPMT_KDF_SCHEME { char x; TPMT_KDF_SCHEME y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_KEYEDHASH_SCHEME(TPMT_KEYEDHASH_SCHEME *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->scheme) | 0);  /* check that 'TPMT_KEYEDHASH_SCHEME.scheme' is an integer */
  { TPMU_SCHEME_KEYEDHASH *tmp = &p->details; (void)tmp; }
}
struct _cffi_align__TPMT_KEYEDHASH_SCHEME { char x; TPMT_KEYEDHASH_SCHEME y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_PUBLIC(TPMT_PUBLIC *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->type) | 0);  /* check that 'TPMT_PUBLIC.type' is an integer */
  (void)((p->nameAlg) | 0);  /* check that 'TPMT_PUBLIC.nameAlg' is an integer */
  (void)((p->objectAttributes) | 0);  /* check that 'TPMT_PUBLIC.objectAttributes' is an integer */
  { TPM2B_DIGEST *tmp = &p->authPolicy; (void)tmp; }
  { TPMU_PUBLIC_PARMS *tmp = &p->parameters; (void)tmp; }
  { TPMU_PUBLIC_ID *tmp = &p->unique; (void)tmp; }
}
struct _cffi_align__TPMT_PUBLIC { char x; TPMT_PUBLIC y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_PUBLIC_PARMS(TPMT_PUBLIC_PARMS *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->type) | 0);  /* check that 'TPMT_PUBLIC_PARMS.type' is an integer */
  { TPMU_PUBLIC_PARMS *tmp = &p->parameters; (void)tmp; }
}
struct _cffi_align__TPMT_PUBLIC_PARMS { char x; TPMT_PUBLIC_PARMS y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_RSA_DECRYPT(TPMT_RSA_DECRYPT *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->scheme) | 0);  /* check that 'TPMT_RSA_DECRYPT.scheme' is an integer */
  { TPMU_ASYM_SCHEME *tmp = &p->details; (void)tmp; }
}
struct _cffi_align__TPMT_RSA_DECRYPT { char x; TPMT_RSA_DECRYPT y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_RSA_SCHEME(TPMT_RSA_SCHEME *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->scheme) | 0);  /* check that 'TPMT_RSA_SCHEME.scheme' is an integer */
  { TPMU_ASYM_SCHEME *tmp = &p->details; (void)tmp; }
}
struct _cffi_align__TPMT_RSA_SCHEME { char x; TPMT_RSA_SCHEME y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_SENSITIVE(TPMT_SENSITIVE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->sensitiveType) | 0);  /* check that 'TPMT_SENSITIVE.sensitiveType' is an integer */
  { TPM2B_DIGEST *tmp = &p->authValue; (void)tmp; }
  { TPM2B_DIGEST *tmp = &p->seedValue; (void)tmp; }
  { TPMU_SENSITIVE_COMPOSITE *tmp = &p->sensitive; (void)tmp; }
}
struct _cffi_align__TPMT_SENSITIVE { char x; TPMT_SENSITIVE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_SIGNATURE(TPMT_SIGNATURE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->sigAlg) | 0);  /* check that 'TPMT_SIGNATURE.sigAlg' is an integer */
  { TPMU_SIGNATURE *tmp = &p->signature; (void)tmp; }
}
struct _cffi_align__TPMT_SIGNATURE { char x; TPMT_SIGNATURE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_SIG_SCHEME(TPMT_SIG_SCHEME *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->scheme) | 0);  /* check that 'TPMT_SIG_SCHEME.scheme' is an integer */
  { TPMU_SIG_SCHEME *tmp = &p->details; (void)tmp; }
}
struct _cffi_align__TPMT_SIG_SCHEME { char x; TPMT_SIG_SCHEME y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_SYM_DEF(TPMT_SYM_DEF *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->algorithm) | 0);  /* check that 'TPMT_SYM_DEF.algorithm' is an integer */
  { TPMU_SYM_KEY_BITS *tmp = &p->keyBits; (void)tmp; }
  { TPMU_SYM_MODE *tmp = &p->mode; (void)tmp; }
}
struct _cffi_align__TPMT_SYM_DEF { char x; TPMT_SYM_DEF y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_SYM_DEF_OBJECT(TPMT_SYM_DEF_OBJECT *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->algorithm) | 0);  /* check that 'TPMT_SYM_DEF_OBJECT.algorithm' is an integer */
  { TPMU_SYM_KEY_BITS *tmp = &p->keyBits; (void)tmp; }
  { TPMU_SYM_MODE *tmp = &p->mode; (void)tmp; }
}
struct _cffi_align__TPMT_SYM_DEF_OBJECT { char x; TPMT_SYM_DEF_OBJECT y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_TK_AUTH(TPMT_TK_AUTH *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->tag) | 0);  /* check that 'TPMT_TK_AUTH.tag' is an integer */
  (void)((p->hierarchy) | 0);  /* check that 'TPMT_TK_AUTH.hierarchy' is an integer */
  { TPM2B_DIGEST *tmp = &p->digest; (void)tmp; }
}
struct _cffi_align__TPMT_TK_AUTH { char x; TPMT_TK_AUTH y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_TK_CREATION(TPMT_TK_CREATION *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->tag) | 0);  /* check that 'TPMT_TK_CREATION.tag' is an integer */
  (void)((p->hierarchy) | 0);  /* check that 'TPMT_TK_CREATION.hierarchy' is an integer */
  { TPM2B_DIGEST *tmp = &p->digest; (void)tmp; }
}
struct _cffi_align__TPMT_TK_CREATION { char x; TPMT_TK_CREATION y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_TK_HASHCHECK(TPMT_TK_HASHCHECK *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->tag) | 0);  /* check that 'TPMT_TK_HASHCHECK.tag' is an integer */
  (void)((p->hierarchy) | 0);  /* check that 'TPMT_TK_HASHCHECK.hierarchy' is an integer */
  { TPM2B_DIGEST *tmp = &p->digest; (void)tmp; }
}
struct _cffi_align__TPMT_TK_HASHCHECK { char x; TPMT_TK_HASHCHECK y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMT_TK_VERIFIED(TPMT_TK_VERIFIED *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->tag) | 0);  /* check that 'TPMT_TK_VERIFIED.tag' is an integer */
  (void)((p->hierarchy) | 0);  /* check that 'TPMT_TK_VERIFIED.hierarchy' is an integer */
  { TPM2B_DIGEST *tmp = &p->digest; (void)tmp; }
}
struct _cffi_align__TPMT_TK_VERIFIED { char x; TPMT_TK_VERIFIED y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TSS2_ABI_VERSION(TSS2_ABI_VERSION *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->tssCreator) | 0);  /* check that 'TSS2_ABI_VERSION.tssCreator' is an integer */
  (void)((p->tssFamily) | 0);  /* check that 'TSS2_ABI_VERSION.tssFamily' is an integer */
  (void)((p->tssLevel) | 0);  /* check that 'TSS2_ABI_VERSION.tssLevel' is an integer */
  (void)((p->tssVersion) | 0);  /* check that 'TSS2_ABI_VERSION.tssVersion' is an integer */
}
struct _cffi_align__TSS2_ABI_VERSION { char x; TSS2_ABI_VERSION y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TSS2_RC_INFO(TSS2_RC_INFO *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->layer) | 0);  /* check that 'TSS2_RC_INFO.layer' is an integer */
  (void)((p->format) | 0);  /* check that 'TSS2_RC_INFO.format' is an integer */
  (void)((p->error) | 0);  /* check that 'TSS2_RC_INFO.error' is an integer */
  (void)((p->parameter) | 0);  /* check that 'TSS2_RC_INFO.parameter' is an integer */
  (void)((p->session) | 0);  /* check that 'TSS2_RC_INFO.session' is an integer */
  (void)((p->handle) | 0);  /* check that 'TSS2_RC_INFO.handle' is an integer */
}
struct _cffi_align__TSS2_RC_INFO { char x; TSS2_RC_INFO y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TSS2_TCTI_CONTEXT_COMMON_V1(TSS2_TCTI_CONTEXT_COMMON_V1 *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->magic) | 0);  /* check that 'TSS2_TCTI_CONTEXT_COMMON_V1.magic' is an integer */
  (void)((p->version) | 0);  /* check that 'TSS2_TCTI_CONTEXT_COMMON_V1.version' is an integer */
  { uint32_t(* *tmp)(TSS2_TCTI_CONTEXT *, size_t, uint8_t const *) = &p->transmit; (void)tmp; }
  { uint32_t(* *tmp)(TSS2_TCTI_CONTEXT *, size_t *, uint8_t *, int32_t) = &p->receive; (void)tmp; }
  { void(* *tmp)(TSS2_TCTI_CONTEXT *) = &p->finalize; (void)tmp; }
  { uint32_t(* *tmp)(TSS2_TCTI_CONTEXT *) = &p->cancel; (void)tmp; }
  { uint32_t(* *tmp)(TSS2_TCTI_CONTEXT *, TSS2_TCTI_POLL_HANDLE *, size_t *) = &p->getPollHandles; (void)tmp; }
  { uint32_t(* *tmp)(TSS2_TCTI_CONTEXT *, uint8_t) = &p->setLocality; (void)tmp; }
}
struct _cffi_align__TSS2_TCTI_CONTEXT_COMMON_V1 { char x; TSS2_TCTI_CONTEXT_COMMON_V1 y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TSS2_TCTI_CONTEXT_COMMON_V2(TSS2_TCTI_CONTEXT_COMMON_V2 *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TSS2_TCTI_CONTEXT_COMMON_V1 *tmp = &p->v1; (void)tmp; }
  { uint32_t(* *tmp)(TSS2_TCTI_CONTEXT *, uint32_t *, uint8_t) = &p->makeSticky; (void)tmp; }
}
struct _cffi_align__TSS2_TCTI_CONTEXT_COMMON_V2 { char x; TSS2_TCTI_CONTEXT_COMMON_V2 y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TSS2_TCTI_INFO(TSS2_TCTI_INFO *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->version) | 0);  /* check that 'TSS2_TCTI_INFO.version' is an integer */
  { char const * *tmp = &p->name; (void)tmp; }
  { char const * *tmp = &p->description; (void)tmp; }
  { char const * *tmp = &p->config_help; (void)tmp; }
  { uint32_t(* *tmp)(TSS2_TCTI_CONTEXT *, size_t *, char const *) = &p->init; (void)tmp; }
}
struct _cffi_align__TSS2_TCTI_INFO { char x; TSS2_TCTI_INFO y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TSS2_TCTI_SPI_HELPER_PLATFORM(TSS2_TCTI_SPI_HELPER_PLATFORM *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { void * *tmp = &p->user_data; (void)tmp; }
  { uint32_t(* *tmp)(void *, int) = &p->sleep_ms; (void)tmp; }
  { uint32_t(* *tmp)(void *, int) = &p->start_timeout; (void)tmp; }
  { uint32_t(* *tmp)(void *, _Bool *) = &p->timeout_expired; (void)tmp; }
  { uint32_t(* *tmp)(void *) = &p->spi_acquire; (void)tmp; }
  { uint32_t(* *tmp)(void *) = &p->spi_release; (void)tmp; }
  { uint32_t(* *tmp)(void *, void const *, void *, size_t) = &p->spi_transfer; (void)tmp; }
  { void(* *tmp)(void *) = &p->finalize; (void)tmp; }
}
struct _cffi_align__TSS2_TCTI_SPI_HELPER_PLATFORM { char x; TSS2_TCTI_SPI_HELPER_PLATFORM y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld___PRIVATE(_PRIVATE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPM2B_DIGEST *tmp = &p->integrityOuter; (void)tmp; }
  { TPM2B_DIGEST *tmp = &p->integrityInner; (void)tmp; }
  { TPM2B_SENSITIVE *tmp = &p->sensitive; (void)tmp; }
}
struct _cffi_align___PRIVATE { char x; _PRIVATE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TSS2_TCTI_POLL_HANDLE(TSS2_TCTI_POLL_HANDLE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->fd) | 0);  /* check that 'TSS2_TCTI_POLL_HANDLE.fd' is an integer */
  (void)((p->events) | 0);  /* check that 'TSS2_TCTI_POLL_HANDLE.events' is an integer */
  (void)((p->revents) | 0);  /* check that 'TSS2_TCTI_POLL_HANDLE.revents' is an integer */
}
struct _cffi_align__TSS2_TCTI_POLL_HANDLE { char x; TSS2_TCTI_POLL_HANDLE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMU_ASYM_SCHEME(TPMU_ASYM_SCHEME *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPMS_SCHEME_HASH *tmp = &p->ecdh; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->ecmqv; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->rsassa; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->rsapss; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->ecdsa; (void)tmp; }
  { TPMS_SCHEME_ECDAA *tmp = &p->ecdaa; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->sm2; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->ecschnorr; (void)tmp; }
  { TPMS_EMPTY *tmp = &p->rsaes; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->oaep; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->anySig; (void)tmp; }
  { TPMS_EMPTY *tmp = &p->null; (void)tmp; }
}
struct _cffi_align__TPMU_ASYM_SCHEME { char x; TPMU_ASYM_SCHEME y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMU_ATTEST(TPMU_ATTEST *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPMS_CERTIFY_INFO *tmp = &p->certify; (void)tmp; }
  { TPMS_CREATION_INFO *tmp = &p->creation; (void)tmp; }
  { TPMS_QUOTE_INFO *tmp = &p->quote; (void)tmp; }
  { TPMS_COMMAND_AUDIT_INFO *tmp = &p->commandAudit; (void)tmp; }
  { TPMS_SESSION_AUDIT_INFO *tmp = &p->sessionAudit; (void)tmp; }
  { TPMS_TIME_ATTEST_INFO *tmp = &p->time; (void)tmp; }
  { TPMS_NV_CERTIFY_INFO *tmp = &p->nv; (void)tmp; }
}
struct _cffi_align__TPMU_ATTEST { char x; TPMU_ATTEST y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMU_CAPABILITIES(TPMU_CAPABILITIES *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPML_ALG_PROPERTY *tmp = &p->algorithms; (void)tmp; }
  { TPML_HANDLE *tmp = &p->handles; (void)tmp; }
  { TPML_CCA *tmp = &p->command; (void)tmp; }
  { TPML_CC *tmp = &p->ppCommands; (void)tmp; }
  { TPML_CC *tmp = &p->auditCommands; (void)tmp; }
  { TPML_PCR_SELECTION *tmp = &p->assignedPCR; (void)tmp; }
  { TPML_TAGGED_TPM_PROPERTY *tmp = &p->tpmProperties; (void)tmp; }
  { TPML_TAGGED_PCR_PROPERTY *tmp = &p->pcrProperties; (void)tmp; }
  { TPML_ECC_CURVE *tmp = &p->eccCurves; (void)tmp; }
  { TPML_TAGGED_POLICY *tmp = &p->authPolicies; (void)tmp; }
  { TPML_ACT_DATA *tmp = &p->actData; (void)tmp; }
  { TPM2B_MAX_CAP_BUFFER *tmp = &p->vendor; (void)tmp; }
}
struct _cffi_align__TPMU_CAPABILITIES { char x; TPMU_CAPABILITIES y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMU_ENCRYPTED_SECRET(TPMU_ENCRYPTED_SECRET *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { uint8_t *tmp = &p->ecc[0]; (void)tmp; }
  { uint8_t *tmp = &p->rsa[0]; (void)tmp; }
  { uint8_t *tmp = &p->symmetric[0]; (void)tmp; }
  { uint8_t *tmp = &p->keyedHash[0]; (void)tmp; }
}
struct _cffi_align__TPMU_ENCRYPTED_SECRET { char x; TPMU_ENCRYPTED_SECRET y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMU_HA(TPMU_HA *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { uint8_t *tmp = &p->sha[0]; (void)tmp; }
  { uint8_t *tmp = &p->sha1[0]; (void)tmp; }
  { uint8_t *tmp = &p->sha256[0]; (void)tmp; }
  { uint8_t *tmp = &p->sha384[0]; (void)tmp; }
  { uint8_t *tmp = &p->sha512[0]; (void)tmp; }
  { uint8_t *tmp = &p->sm3_256[0]; (void)tmp; }
}
struct _cffi_align__TPMU_HA { char x; TPMU_HA y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMU_KDF_SCHEME(TPMU_KDF_SCHEME *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPMS_SCHEME_HASH *tmp = &p->mgf1; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->kdf1_sp800_56a; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->kdf2; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->kdf1_sp800_108; (void)tmp; }
  { TPMS_EMPTY *tmp = &p->null; (void)tmp; }
}
struct _cffi_align__TPMU_KDF_SCHEME { char x; TPMU_KDF_SCHEME y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMU_NAME(TPMU_NAME *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPMT_HA *tmp = &p->digest; (void)tmp; }
  (void)((p->handle) | 0);  /* check that 'TPMU_NAME.handle' is an integer */
}
struct _cffi_align__TPMU_NAME { char x; TPMU_NAME y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMU_PUBLIC_ID(TPMU_PUBLIC_ID *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPM2B_DIGEST *tmp = &p->keyedHash; (void)tmp; }
  { TPM2B_DIGEST *tmp = &p->sym; (void)tmp; }
  { TPM2B_PUBLIC_KEY_RSA *tmp = &p->rsa; (void)tmp; }
  { TPMS_ECC_POINT *tmp = &p->ecc; (void)tmp; }
  { TPMS_DERIVE *tmp = &p->derive; (void)tmp; }
}
struct _cffi_align__TPMU_PUBLIC_ID { char x; TPMU_PUBLIC_ID y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMU_PUBLIC_PARMS(TPMU_PUBLIC_PARMS *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPMS_KEYEDHASH_PARMS *tmp = &p->keyedHashDetail; (void)tmp; }
  { TPMS_SYMCIPHER_PARMS *tmp = &p->symDetail; (void)tmp; }
  { TPMS_RSA_PARMS *tmp = &p->rsaDetail; (void)tmp; }
  { TPMS_ECC_PARMS *tmp = &p->eccDetail; (void)tmp; }
  { TPMS_ASYM_PARMS *tmp = &p->asymDetail; (void)tmp; }
}
struct _cffi_align__TPMU_PUBLIC_PARMS { char x; TPMU_PUBLIC_PARMS y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMU_SCHEME_KEYEDHASH(TPMU_SCHEME_KEYEDHASH *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPMS_SCHEME_HASH *tmp = &p->hmac; (void)tmp; }
  { TPMS_SCHEME_XOR *tmp = &p->exclusiveOr; (void)tmp; }
  { TPMS_EMPTY *tmp = &p->null; (void)tmp; }
}
struct _cffi_align__TPMU_SCHEME_KEYEDHASH { char x; TPMU_SCHEME_KEYEDHASH y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMU_SENSITIVE_COMPOSITE(TPMU_SENSITIVE_COMPOSITE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPM2B_PRIVATE_KEY_RSA *tmp = &p->rsa; (void)tmp; }
  { TPM2B_ECC_PARAMETER *tmp = &p->ecc; (void)tmp; }
  { TPM2B_SENSITIVE_DATA *tmp = &p->bits; (void)tmp; }
  { TPM2B_SYM_KEY *tmp = &p->sym; (void)tmp; }
  { TPM2B_PRIVATE_VENDOR_SPECIFIC *tmp = &p->any; (void)tmp; }
}
struct _cffi_align__TPMU_SENSITIVE_COMPOSITE { char x; TPMU_SENSITIVE_COMPOSITE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMU_SENSITIVE_CREATE(TPMU_SENSITIVE_CREATE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { uint8_t *tmp = &p->create[0]; (void)tmp; }
  { TPMS_DERIVE *tmp = &p->derive; (void)tmp; }
}
struct _cffi_align__TPMU_SENSITIVE_CREATE { char x; TPMU_SENSITIVE_CREATE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMU_SIGNATURE(TPMU_SIGNATURE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPMS_SIGNATURE_RSA *tmp = &p->rsassa; (void)tmp; }
  { TPMS_SIGNATURE_RSA *tmp = &p->rsapss; (void)tmp; }
  { TPMS_SIGNATURE_ECC *tmp = &p->ecdsa; (void)tmp; }
  { TPMS_SIGNATURE_ECC *tmp = &p->ecdaa; (void)tmp; }
  { TPMS_SIGNATURE_ECC *tmp = &p->sm2; (void)tmp; }
  { TPMS_SIGNATURE_ECC *tmp = &p->ecschnorr; (void)tmp; }
  { TPMT_HA *tmp = &p->hmac; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->any; (void)tmp; }
  { TPMS_EMPTY *tmp = &p->null; (void)tmp; }
}
struct _cffi_align__TPMU_SIGNATURE { char x; TPMU_SIGNATURE y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMU_SIG_SCHEME(TPMU_SIG_SCHEME *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  { TPMS_SCHEME_HASH *tmp = &p->rsassa; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->rsapss; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->ecdsa; (void)tmp; }
  { TPMS_SCHEME_ECDAA *tmp = &p->ecdaa; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->sm2; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->ecschnorr; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->hmac; (void)tmp; }
  { TPMS_SCHEME_HASH *tmp = &p->any; (void)tmp; }
  { TPMS_EMPTY *tmp = &p->null; (void)tmp; }
}
struct _cffi_align__TPMU_SIG_SCHEME { char x; TPMU_SIG_SCHEME y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMU_SYM_KEY_BITS(TPMU_SYM_KEY_BITS *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->aes) | 0);  /* check that 'TPMU_SYM_KEY_BITS.aes' is an integer */
  (void)((p->sm4) | 0);  /* check that 'TPMU_SYM_KEY_BITS.sm4' is an integer */
  (void)((p->camellia) | 0);  /* check that 'TPMU_SYM_KEY_BITS.camellia' is an integer */
  (void)((p->sym) | 0);  /* check that 'TPMU_SYM_KEY_BITS.sym' is an integer */
  (void)((p->exclusiveOr) | 0);  /* check that 'TPMU_SYM_KEY_BITS.exclusiveOr' is an integer */
  { TPMS_EMPTY *tmp = &p->null; (void)tmp; }
}
struct _cffi_align__TPMU_SYM_KEY_BITS { char x; TPMU_SYM_KEY_BITS y; };

_CFFI_UNUSED_FN
static void _cffi_checkfld__TPMU_SYM_MODE(TPMU_SYM_MODE *p)
{
  /* only to generate compile-time warnings or errors */
  (void)p;
  (void)((p->aes) | 0);  /* check that 'TPMU_SYM_MODE.aes' is an integer */
  (void)((p->sm4) | 0);  /* check that 'TPMU_SYM_MODE.sm4' is an integer */
  (void)((p->camellia) | 0);  /* check that 'TPMU_SYM_MODE.camellia' is an integer */
  (void)((p->sym) | 0);  /* check that 'TPMU_SYM_MODE.sym' is an integer */
  { TPMS_EMPTY *tmp = &p->exclusiveOr; (void)tmp; }
  { TPMS_EMPTY *tmp = &p->null; (void)tmp; }
}
struct _cffi_align__TPMU_SYM_MODE { char x; TPMU_SYM_MODE y; };

static const struct _cffi_global_s _cffi_globals[] = {
  { "ESYS_TR_NONE", (void *)_cffi_const_ESYS_TR_NONE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PASSWORD", (void *)_cffi_const_ESYS_TR_PASSWORD, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR0", (void *)_cffi_const_ESYS_TR_PCR0, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR1", (void *)_cffi_const_ESYS_TR_PCR1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR10", (void *)_cffi_const_ESYS_TR_PCR10, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR11", (void *)_cffi_const_ESYS_TR_PCR11, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR12", (void *)_cffi_const_ESYS_TR_PCR12, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR13", (void *)_cffi_const_ESYS_TR_PCR13, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR14", (void *)_cffi_const_ESYS_TR_PCR14, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR15", (void *)_cffi_const_ESYS_TR_PCR15, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR16", (void *)_cffi_const_ESYS_TR_PCR16, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR17", (void *)_cffi_const_ESYS_TR_PCR17, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR18", (void *)_cffi_const_ESYS_TR_PCR18, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR19", (void *)_cffi_const_ESYS_TR_PCR19, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR2", (void *)_cffi_const_ESYS_TR_PCR2, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR20", (void *)_cffi_const_ESYS_TR_PCR20, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR21", (void *)_cffi_const_ESYS_TR_PCR21, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR22", (void *)_cffi_const_ESYS_TR_PCR22, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR23", (void *)_cffi_const_ESYS_TR_PCR23, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR24", (void *)_cffi_const_ESYS_TR_PCR24, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR25", (void *)_cffi_const_ESYS_TR_PCR25, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR26", (void *)_cffi_const_ESYS_TR_PCR26, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR27", (void *)_cffi_const_ESYS_TR_PCR27, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR28", (void *)_cffi_const_ESYS_TR_PCR28, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR29", (void *)_cffi_const_ESYS_TR_PCR29, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR3", (void *)_cffi_const_ESYS_TR_PCR3, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR30", (void *)_cffi_const_ESYS_TR_PCR30, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR31", (void *)_cffi_const_ESYS_TR_PCR31, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR4", (void *)_cffi_const_ESYS_TR_PCR4, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR5", (void *)_cffi_const_ESYS_TR_PCR5, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR6", (void *)_cffi_const_ESYS_TR_PCR6, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR7", (void *)_cffi_const_ESYS_TR_PCR7, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR8", (void *)_cffi_const_ESYS_TR_PCR8, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_PCR9", (void *)_cffi_const_ESYS_TR_PCR9, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_0", (void *)_cffi_const_ESYS_TR_RH_ACT_0, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_1", (void *)_cffi_const_ESYS_TR_RH_ACT_1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_2", (void *)_cffi_const_ESYS_TR_RH_ACT_2, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_3", (void *)_cffi_const_ESYS_TR_RH_ACT_3, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_4", (void *)_cffi_const_ESYS_TR_RH_ACT_4, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_5", (void *)_cffi_const_ESYS_TR_RH_ACT_5, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_6", (void *)_cffi_const_ESYS_TR_RH_ACT_6, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_7", (void *)_cffi_const_ESYS_TR_RH_ACT_7, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_8", (void *)_cffi_const_ESYS_TR_RH_ACT_8, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_9", (void *)_cffi_const_ESYS_TR_RH_ACT_9, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_A", (void *)_cffi_const_ESYS_TR_RH_ACT_A, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_B", (void *)_cffi_const_ESYS_TR_RH_ACT_B, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_C", (void *)_cffi_const_ESYS_TR_RH_ACT_C, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_D", (void *)_cffi_const_ESYS_TR_RH_ACT_D, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_E", (void *)_cffi_const_ESYS_TR_RH_ACT_E, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_F", (void *)_cffi_const_ESYS_TR_RH_ACT_F, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_FIRST", (void *)_cffi_const_ESYS_TR_RH_ACT_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ACT_LAST", (void *)_cffi_const_ESYS_TR_RH_ACT_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_AC_FIRST", (void *)_cffi_const_ESYS_TR_RH_AC_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_AC_LAST", (void *)_cffi_const_ESYS_TR_RH_AC_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_AUTH_FIRST", (void *)_cffi_const_ESYS_TR_RH_AUTH_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_ENDORSEMENT", (void *)_cffi_const_ESYS_TR_RH_ENDORSEMENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_LOCKOUT", (void *)_cffi_const_ESYS_TR_RH_LOCKOUT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_NULL", (void *)_cffi_const_ESYS_TR_RH_NULL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_OWNER", (void *)_cffi_const_ESYS_TR_RH_OWNER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_PLATFORM", (void *)_cffi_const_ESYS_TR_RH_PLATFORM, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "ESYS_TR_RH_PLATFORM_NV", (void *)_cffi_const_ESYS_TR_RH_PLATFORM_NV, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "Esys_ACT_SetTimeout", (void *)_cffi_f_Esys_ACT_SetTimeout, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1058), (void *)_cffi_d_Esys_ACT_SetTimeout },
  { "Esys_ACT_SetTimeout_Async", (void *)_cffi_f_Esys_ACT_SetTimeout_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1058), (void *)_cffi_d_Esys_ACT_SetTimeout_Async },
  { "Esys_ACT_SetTimeout_Finish", (void *)_cffi_f_Esys_ACT_SetTimeout_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_ACT_SetTimeout_Finish },
  { "Esys_AC_GetCapability", (void *)_cffi_f_Esys_AC_GetCapability, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1488), (void *)_cffi_d_Esys_AC_GetCapability },
  { "Esys_AC_GetCapability_Async", (void *)_cffi_f_Esys_AC_GetCapability_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1374), (void *)_cffi_d_Esys_AC_GetCapability_Async },
  { "Esys_AC_GetCapability_Finish", (void *)_cffi_f_Esys_AC_GetCapability_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1592), (void *)_cffi_d_Esys_AC_GetCapability_Finish },
  { "Esys_AC_Send", (void *)_cffi_f_Esys_AC_Send, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1457), (void *)_cffi_d_Esys_AC_Send },
  { "Esys_AC_Send_Async", (void *)_cffi_f_Esys_AC_Send_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1447), (void *)_cffi_d_Esys_AC_Send_Async },
  { "Esys_AC_Send_Finish", (void *)_cffi_f_Esys_AC_Send_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 148), (void *)_cffi_d_Esys_AC_Send_Finish },
  { "Esys_ActivateCredential", (void *)_cffi_f_Esys_ActivateCredential, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1280), (void *)_cffi_d_Esys_ActivateCredential },
  { "Esys_ActivateCredential_Async", (void *)_cffi_f_Esys_ActivateCredential_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1270), (void *)_cffi_d_Esys_ActivateCredential_Async },
  { "Esys_ActivateCredential_Finish", (void *)_cffi_f_Esys_ActivateCredential_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 40), (void *)_cffi_d_Esys_ActivateCredential_Finish },
  { "Esys_Certify", (void *)_cffi_f_Esys_Certify, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1102), (void *)_cffi_d_Esys_Certify },
  { "Esys_CertifyCreation", (void *)_cffi_f_Esys_CertifyCreation, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1078), (void *)_cffi_d_Esys_CertifyCreation },
  { "Esys_CertifyCreation_Async", (void *)_cffi_f_Esys_CertifyCreation_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1066), (void *)_cffi_d_Esys_CertifyCreation_Async },
  { "Esys_CertifyCreation_Finish", (void *)_cffi_f_Esys_CertifyCreation_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 25), (void *)_cffi_d_Esys_CertifyCreation_Finish },
  { "Esys_CertifyX509", (void *)_cffi_f_Esys_CertifyX509, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1125), (void *)_cffi_d_Esys_CertifyX509 },
  { "Esys_CertifyX509_Async", (void *)_cffi_f_Esys_CertifyX509_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1114), (void *)_cffi_d_Esys_CertifyX509_Async },
  { "Esys_CertifyX509_Finish", (void *)_cffi_f_Esys_CertifyX509_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 84), (void *)_cffi_d_Esys_CertifyX509_Finish },
  { "Esys_Certify_Async", (void *)_cffi_f_Esys_Certify_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1092), (void *)_cffi_d_Esys_Certify_Async },
  { "Esys_Certify_Finish", (void *)_cffi_f_Esys_Certify_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 25), (void *)_cffi_d_Esys_Certify_Finish },
  { "Esys_ChangeEPS", (void *)_cffi_f_Esys_ChangeEPS, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_ChangeEPS },
  { "Esys_ChangeEPS_Async", (void *)_cffi_f_Esys_ChangeEPS_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_ChangeEPS_Async },
  { "Esys_ChangeEPS_Finish", (void *)_cffi_f_Esys_ChangeEPS_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_ChangeEPS_Finish },
  { "Esys_ChangePPS", (void *)_cffi_f_Esys_ChangePPS, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_ChangePPS },
  { "Esys_ChangePPS_Async", (void *)_cffi_f_Esys_ChangePPS_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_ChangePPS_Async },
  { "Esys_ChangePPS_Finish", (void *)_cffi_f_Esys_ChangePPS_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_ChangePPS_Finish },
  { "Esys_Clear", (void *)_cffi_f_Esys_Clear, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_Clear },
  { "Esys_ClearControl", (void *)_cffi_f_Esys_ClearControl, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1536), (void *)_cffi_d_Esys_ClearControl },
  { "Esys_ClearControl_Async", (void *)_cffi_f_Esys_ClearControl_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1536), (void *)_cffi_d_Esys_ClearControl_Async },
  { "Esys_ClearControl_Finish", (void *)_cffi_f_Esys_ClearControl_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_ClearControl_Finish },
  { "Esys_Clear_Async", (void *)_cffi_f_Esys_Clear_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_Clear_Async },
  { "Esys_Clear_Finish", (void *)_cffi_f_Esys_Clear_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_Clear_Finish },
  { "Esys_ClockRateAdjust", (void *)_cffi_f_Esys_ClockRateAdjust, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1032), (void *)_cffi_d_Esys_ClockRateAdjust },
  { "Esys_ClockRateAdjust_Async", (void *)_cffi_f_Esys_ClockRateAdjust_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1032), (void *)_cffi_d_Esys_ClockRateAdjust_Async },
  { "Esys_ClockRateAdjust_Finish", (void *)_cffi_f_Esys_ClockRateAdjust_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_ClockRateAdjust_Finish },
  { "Esys_ClockSet", (void *)_cffi_f_Esys_ClockSet, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1528), (void *)_cffi_d_Esys_ClockSet },
  { "Esys_ClockSet_Async", (void *)_cffi_f_Esys_ClockSet_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1528), (void *)_cffi_d_Esys_ClockSet_Async },
  { "Esys_ClockSet_Finish", (void *)_cffi_f_Esys_ClockSet_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_ClockSet_Finish },
  { "Esys_Commit", (void *)_cffi_f_Esys_Commit, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 736), (void *)_cffi_d_Esys_Commit },
  { "Esys_Commit_Async", (void *)_cffi_f_Esys_Commit_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 726), (void *)_cffi_d_Esys_Commit_Async },
  { "Esys_Commit_Finish", (void *)_cffi_f_Esys_Commit_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 63), (void *)_cffi_d_Esys_Commit_Finish },
  { "Esys_ContextLoad", (void *)_cffi_f_Esys_ContextLoad, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 164), (void *)_cffi_d_Esys_ContextLoad },
  { "Esys_ContextLoad_Async", (void *)_cffi_f_Esys_ContextLoad_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 160), (void *)_cffi_d_Esys_ContextLoad_Async },
  { "Esys_ContextLoad_Finish", (void *)_cffi_f_Esys_ContextLoad_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 207), (void *)_cffi_d_Esys_ContextLoad_Finish },
  { "Esys_ContextSave", (void *)_cffi_f_Esys_ContextSave, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 250), (void *)_cffi_d_Esys_ContextSave },
  { "Esys_ContextSave_Async", (void *)_cffi_f_Esys_ContextSave_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 231), (void *)_cffi_d_Esys_ContextSave_Async },
  { "Esys_ContextSave_Finish", (void *)_cffi_f_Esys_ContextSave_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 156), (void *)_cffi_d_Esys_ContextSave_Finish },
  { "Esys_Create", (void *)_cffi_f_Esys_Create, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 926), (void *)_cffi_d_Esys_Create },
  { "Esys_CreateLoaded", (void *)_cffi_f_Esys_CreateLoaded, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 967), (void *)_cffi_d_Esys_CreateLoaded },
  { "Esys_CreateLoaded_Async", (void *)_cffi_f_Esys_CreateLoaded_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 958), (void *)_cffi_d_Esys_CreateLoaded_Async },
  { "Esys_CreateLoaded_Finish", (void *)_cffi_f_Esys_CreateLoaded_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 211), (void *)_cffi_d_Esys_CreateLoaded_Finish },
  { "Esys_CreatePrimary", (void *)_cffi_f_Esys_CreatePrimary, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 942), (void *)_cffi_d_Esys_CreatePrimary },
  { "Esys_CreatePrimary_Async", (void *)_cffi_f_Esys_CreatePrimary_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 915), (void *)_cffi_d_Esys_CreatePrimary_Async },
  { "Esys_CreatePrimary_Finish", (void *)_cffi_f_Esys_CreatePrimary_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 217), (void *)_cffi_d_Esys_CreatePrimary_Finish },
  { "Esys_Create_Async", (void *)_cffi_f_Esys_Create_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 915), (void *)_cffi_d_Esys_Create_Async },
  { "Esys_Create_Finish", (void *)_cffi_f_Esys_Create_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 118), (void *)_cffi_d_Esys_Create_Finish },
  { "Esys_DictionaryAttackLockReset", (void *)_cffi_f_Esys_DictionaryAttackLockReset, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_DictionaryAttackLockReset },
  { "Esys_DictionaryAttackLockReset_Async", (void *)_cffi_f_Esys_DictionaryAttackLockReset_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_DictionaryAttackLockReset_Async },
  { "Esys_DictionaryAttackLockReset_Finish", (void *)_cffi_f_Esys_DictionaryAttackLockReset_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_DictionaryAttackLockReset_Finish },
  { "Esys_DictionaryAttackParameters", (void *)_cffi_f_Esys_DictionaryAttackParameters, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1478), (void *)_cffi_d_Esys_DictionaryAttackParameters },
  { "Esys_DictionaryAttackParameters_Async", (void *)_cffi_f_Esys_DictionaryAttackParameters_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1478), (void *)_cffi_d_Esys_DictionaryAttackParameters_Async },
  { "Esys_DictionaryAttackParameters_Finish", (void *)_cffi_f_Esys_DictionaryAttackParameters_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_DictionaryAttackParameters_Finish },
  { "Esys_Duplicate", (void *)_cffi_f_Esys_Duplicate, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1149), (void *)_cffi_d_Esys_Duplicate },
  { "Esys_Duplicate_Async", (void *)_cffi_f_Esys_Duplicate_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1139), (void *)_cffi_d_Esys_Duplicate_Async },
  { "Esys_Duplicate_Finish", (void *)_cffi_f_Esys_Duplicate_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 34), (void *)_cffi_d_Esys_Duplicate_Finish },
  { "Esys_ECC_Parameters", (void *)_cffi_f_Esys_ECC_Parameters, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 448), (void *)_cffi_d_Esys_ECC_Parameters },
  { "Esys_ECC_Parameters_Async", (void *)_cffi_f_Esys_ECC_Parameters_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 424), (void *)_cffi_d_Esys_ECC_Parameters_Async },
  { "Esys_ECC_Parameters_Finish", (void *)_cffi_f_Esys_ECC_Parameters_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 152), (void *)_cffi_d_Esys_ECC_Parameters_Finish },
  { "Esys_ECDH_KeyGen", (void *)_cffi_f_Esys_ECDH_KeyGen, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 676), (void *)_cffi_d_Esys_ECDH_KeyGen },
  { "Esys_ECDH_KeyGen_Async", (void *)_cffi_f_Esys_ECDH_KeyGen_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_ECDH_KeyGen_Async },
  { "Esys_ECDH_KeyGen_Finish", (void *)_cffi_f_Esys_ECDH_KeyGen_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 58), (void *)_cffi_d_Esys_ECDH_KeyGen_Finish },
  { "Esys_ECDH_ZGen", (void *)_cffi_f_Esys_ECDH_ZGen, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 693), (void *)_cffi_d_Esys_ECDH_ZGen },
  { "Esys_ECDH_ZGen_Async", (void *)_cffi_f_Esys_ECDH_ZGen_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 685), (void *)_cffi_d_Esys_ECDH_ZGen_Async },
  { "Esys_ECDH_ZGen_Finish", (void *)_cffi_f_Esys_ECDH_ZGen_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 54), (void *)_cffi_d_Esys_ECDH_ZGen_Finish },
  { "Esys_EC_Ephemeral", (void *)_cffi_f_Esys_EC_Ephemeral, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 439), (void *)_cffi_d_Esys_EC_Ephemeral },
  { "Esys_EC_Ephemeral_Async", (void *)_cffi_f_Esys_EC_Ephemeral_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 424), (void *)_cffi_d_Esys_EC_Ephemeral_Async },
  { "Esys_EC_Ephemeral_Finish", (void *)_cffi_f_Esys_EC_Ephemeral_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 70), (void *)_cffi_d_Esys_EC_Ephemeral_Finish },
  { "Esys_EncryptDecrypt", (void *)_cffi_f_Esys_EncryptDecrypt, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1555), (void *)_cffi_d_Esys_EncryptDecrypt },
  { "Esys_EncryptDecrypt2", (void *)_cffi_f_Esys_EncryptDecrypt2, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 833), (void *)_cffi_d_Esys_EncryptDecrypt2 },
  { "Esys_EncryptDecrypt2_Async", (void *)_cffi_f_Esys_EncryptDecrypt2_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 822), (void *)_cffi_d_Esys_EncryptDecrypt2_Async },
  { "Esys_EncryptDecrypt2_Finish", (void *)_cffi_f_Esys_EncryptDecrypt2_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 90), (void *)_cffi_d_Esys_EncryptDecrypt2_Finish },
  { "Esys_EncryptDecrypt_Async", (void *)_cffi_f_Esys_EncryptDecrypt_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1544), (void *)_cffi_d_Esys_EncryptDecrypt_Async },
  { "Esys_EncryptDecrypt_Finish", (void *)_cffi_f_Esys_EncryptDecrypt_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 90), (void *)_cffi_d_Esys_EncryptDecrypt_Finish },
  { "Esys_EventSequenceComplete", (void *)_cffi_f_Esys_EventSequenceComplete, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1300), (void *)_cffi_d_Esys_EventSequenceComplete },
  { "Esys_EventSequenceComplete_Async", (void *)_cffi_f_Esys_EventSequenceComplete_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1291), (void *)_cffi_d_Esys_EventSequenceComplete_Async },
  { "Esys_EventSequenceComplete_Finish", (void *)_cffi_f_Esys_EventSequenceComplete_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 144), (void *)_cffi_d_Esys_EventSequenceComplete_Finish },
  { "Esys_EvictControl", (void *)_cffi_f_Esys_EvictControl, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1468), (void *)_cffi_d_Esys_EvictControl },
  { "Esys_EvictControl_Async", (void *)_cffi_f_Esys_EvictControl_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1374), (void *)_cffi_d_Esys_EvictControl_Async },
  { "Esys_EvictControl_Finish", (void *)_cffi_f_Esys_EvictControl_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 207), (void *)_cffi_d_Esys_EvictControl_Finish },
  { "Esys_FieldUpgradeData", (void *)_cffi_f_Esys_FieldUpgradeData, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 313), (void *)_cffi_d_Esys_FieldUpgradeData },
  { "Esys_FieldUpgradeData_Async", (void *)_cffi_f_Esys_FieldUpgradeData_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 306), (void *)_cffi_d_Esys_FieldUpgradeData_Async },
  { "Esys_FieldUpgradeData_Finish", (void *)_cffi_f_Esys_FieldUpgradeData_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 173), (void *)_cffi_d_Esys_FieldUpgradeData_Finish },
  { "Esys_FieldUpgradeStart", (void *)_cffi_f_Esys_FieldUpgradeStart, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1235), (void *)_cffi_d_Esys_FieldUpgradeStart },
  { "Esys_FieldUpgradeStart_Async", (void *)_cffi_f_Esys_FieldUpgradeStart_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1235), (void *)_cffi_d_Esys_FieldUpgradeStart_Async },
  { "Esys_FieldUpgradeStart_Finish", (void *)_cffi_f_Esys_FieldUpgradeStart_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_FieldUpgradeStart_Finish },
  { "Esys_Finalize", (void *)_cffi_f_Esys_Finalize, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 3251), (void *)_cffi_d_Esys_Finalize },
  { "Esys_FirmwareRead", (void *)_cffi_f_Esys_FirmwareRead, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 767), (void *)_cffi_d_Esys_FirmwareRead },
  { "Esys_FirmwareRead_Async", (void *)_cffi_f_Esys_FirmwareRead_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_FirmwareRead_Async },
  { "Esys_FirmwareRead_Finish", (void *)_cffi_f_Esys_FirmwareRead_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 80), (void *)_cffi_d_Esys_FirmwareRead_Finish },
  { "Esys_FlushContext", (void *)_cffi_f_Esys_FlushContext, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 231), (void *)_cffi_d_Esys_FlushContext },
  { "Esys_FlushContext_Async", (void *)_cffi_f_Esys_FlushContext_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 231), (void *)_cffi_d_Esys_FlushContext_Async },
  { "Esys_FlushContext_Finish", (void *)_cffi_f_Esys_FlushContext_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_FlushContext_Finish },
  { "Esys_Free", (void *)_cffi_f_Esys_Free, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 3267), (void *)_cffi_d_Esys_Free },
  { "Esys_GetCapability", (void *)_cffi_f_Esys_GetCapability, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1499), (void *)_cffi_d_Esys_GetCapability },
  { "Esys_GetCapability_Async", (void *)_cffi_f_Esys_GetCapability_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1374), (void *)_cffi_d_Esys_GetCapability_Async },
  { "Esys_GetCapability_Finish", (void *)_cffi_f_Esys_GetCapability_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1597), (void *)_cffi_d_Esys_GetCapability_Finish },
  { "Esys_GetCommandAuditDigest", (void *)_cffi_f_Esys_GetCommandAuditDigest, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1102), (void *)_cffi_d_Esys_GetCommandAuditDigest },
  { "Esys_GetCommandAuditDigest_Async", (void *)_cffi_f_Esys_GetCommandAuditDigest_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1092), (void *)_cffi_d_Esys_GetCommandAuditDigest_Async },
  { "Esys_GetCommandAuditDigest_Finish", (void *)_cffi_f_Esys_GetCommandAuditDigest_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 25), (void *)_cffi_d_Esys_GetCommandAuditDigest_Finish },
  { "Esys_GetPollHandles", (void *)_cffi_f_Esys_GetPollHandles, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 194), (void *)_cffi_d_Esys_GetPollHandles },
  { "Esys_GetRandom", (void *)_cffi_f_Esys_GetRandom, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 431), (void *)_cffi_d_Esys_GetRandom },
  { "Esys_GetRandom_Async", (void *)_cffi_f_Esys_GetRandom_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 424), (void *)_cffi_d_Esys_GetRandom_Async },
  { "Esys_GetRandom_Finish", (void *)_cffi_f_Esys_GetRandom_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 40), (void *)_cffi_d_Esys_GetRandom_Finish },
  { "Esys_GetSessionAuditDigest", (void *)_cffi_f_Esys_GetSessionAuditDigest, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1394), (void *)_cffi_d_Esys_GetSessionAuditDigest },
  { "Esys_GetSessionAuditDigest_Async", (void *)_cffi_f_Esys_GetSessionAuditDigest_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1383), (void *)_cffi_d_Esys_GetSessionAuditDigest_Async },
  { "Esys_GetSessionAuditDigest_Finish", (void *)_cffi_f_Esys_GetSessionAuditDigest_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 25), (void *)_cffi_d_Esys_GetSessionAuditDigest_Finish },
  { "Esys_GetSysContext", (void *)_cffi_f_Esys_GetSysContext, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 186), (void *)_cffi_d_Esys_GetSysContext },
  { "Esys_GetTcti", (void *)_cffi_f_Esys_GetTcti, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 190), (void *)_cffi_d_Esys_GetTcti },
  { "Esys_GetTestResult", (void *)_cffi_f_Esys_GetTestResult, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 298), (void *)_cffi_d_Esys_GetTestResult },
  { "Esys_GetTestResult_Async", (void *)_cffi_f_Esys_GetTestResult_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 260), (void *)_cffi_d_Esys_GetTestResult_Async },
  { "Esys_GetTestResult_Finish", (void *)_cffi_f_Esys_GetTestResult_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 95), (void *)_cffi_d_Esys_GetTestResult_Finish },
  { "Esys_GetTime", (void *)_cffi_f_Esys_GetTime, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1102), (void *)_cffi_d_Esys_GetTime },
  { "Esys_GetTime_Async", (void *)_cffi_f_Esys_GetTime_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1092), (void *)_cffi_d_Esys_GetTime_Async },
  { "Esys_GetTime_Finish", (void *)_cffi_f_Esys_GetTime_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 25), (void *)_cffi_d_Esys_GetTime_Finish },
  { "Esys_HMAC", (void *)_cffi_f_Esys_HMAC, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 792), (void *)_cffi_d_Esys_HMAC },
  { "Esys_HMAC_Async", (void *)_cffi_f_Esys_HMAC_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 783), (void *)_cffi_d_Esys_HMAC_Async },
  { "Esys_HMAC_Finish", (void *)_cffi_f_Esys_HMAC_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 40), (void *)_cffi_d_Esys_HMAC_Finish },
  { "Esys_HMAC_Start", (void *)_cffi_f_Esys_HMAC_Start, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 656), (void *)_cffi_d_Esys_HMAC_Start },
  { "Esys_HMAC_Start_Async", (void *)_cffi_f_Esys_HMAC_Start_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 637), (void *)_cffi_d_Esys_HMAC_Start_Async },
  { "Esys_HMAC_Start_Finish", (void *)_cffi_f_Esys_HMAC_Start_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 207), (void *)_cffi_d_Esys_HMAC_Start_Finish },
  { "Esys_Hash", (void *)_cffi_f_Esys_Hash, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 331), (void *)_cffi_d_Esys_Hash },
  { "Esys_HashSequenceStart", (void *)_cffi_f_Esys_HashSequenceStart, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 289), (void *)_cffi_d_Esys_HashSequenceStart },
  { "Esys_HashSequenceStart_Async", (void *)_cffi_f_Esys_HashSequenceStart_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 281), (void *)_cffi_d_Esys_HashSequenceStart_Async },
  { "Esys_HashSequenceStart_Finish", (void *)_cffi_f_Esys_HashSequenceStart_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 207), (void *)_cffi_d_Esys_HashSequenceStart_Finish },
  { "Esys_Hash_Async", (void *)_cffi_f_Esys_Hash_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 322), (void *)_cffi_d_Esys_Hash_Async },
  { "Esys_Hash_Finish", (void *)_cffi_f_Esys_Hash_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 49), (void *)_cffi_d_Esys_Hash_Finish },
  { "Esys_HierarchyChangeAuth", (void *)_cffi_f_Esys_HierarchyChangeAuth, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 518), (void *)_cffi_d_Esys_HierarchyChangeAuth },
  { "Esys_HierarchyChangeAuth_Async", (void *)_cffi_f_Esys_HierarchyChangeAuth_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 518), (void *)_cffi_d_Esys_HierarchyChangeAuth_Async },
  { "Esys_HierarchyChangeAuth_Finish", (void *)_cffi_f_Esys_HierarchyChangeAuth_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_HierarchyChangeAuth_Finish },
  { "Esys_HierarchyControl", (void *)_cffi_f_Esys_HierarchyControl, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1519), (void *)_cffi_d_Esys_HierarchyControl },
  { "Esys_HierarchyControl_Async", (void *)_cffi_f_Esys_HierarchyControl_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1519), (void *)_cffi_d_Esys_HierarchyControl_Async },
  { "Esys_HierarchyControl_Finish", (void *)_cffi_f_Esys_HierarchyControl_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_HierarchyControl_Finish },
  { "Esys_Import", (void *)_cffi_f_Esys_Import, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 475), (void *)_cffi_d_Esys_Import },
  { "Esys_Import_Async", (void *)_cffi_f_Esys_Import_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 463), (void *)_cffi_d_Esys_Import_Async },
  { "Esys_Import_Finish", (void *)_cffi_f_Esys_Import_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 109), (void *)_cffi_d_Esys_Import_Finish },
  { "Esys_IncrementalSelfTest", (void *)_cffi_f_Esys_IncrementalSelfTest, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 385), (void *)_cffi_d_Esys_IncrementalSelfTest },
  { "Esys_IncrementalSelfTest_Async", (void *)_cffi_f_Esys_IncrementalSelfTest_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 378), (void *)_cffi_d_Esys_IncrementalSelfTest_Async },
  { "Esys_IncrementalSelfTest_Finish", (void *)_cffi_f_Esys_IncrementalSelfTest_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 140), (void *)_cffi_d_Esys_IncrementalSelfTest_Finish },
  { "Esys_Initialize", (void *)_cffi_f_Esys_Initialize, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 13), (void *)_cffi_d_Esys_Initialize },
  { "Esys_Load", (void *)_cffi_f_Esys_Load, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 874), (void *)_cffi_d_Esys_Load },
  { "Esys_LoadExternal", (void *)_cffi_f_Esys_LoadExternal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 361), (void *)_cffi_d_Esys_LoadExternal },
  { "Esys_LoadExternal_Async", (void *)_cffi_f_Esys_LoadExternal_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 352), (void *)_cffi_d_Esys_LoadExternal_Async },
  { "Esys_LoadExternal_Finish", (void *)_cffi_f_Esys_LoadExternal_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 207), (void *)_cffi_d_Esys_LoadExternal_Finish },
  { "Esys_Load_Async", (void *)_cffi_f_Esys_Load_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 865), (void *)_cffi_d_Esys_Load_Async },
  { "Esys_Load_Finish", (void *)_cffi_f_Esys_Load_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 207), (void *)_cffi_d_Esys_Load_Finish },
  { "Esys_MAC", (void *)_cffi_f_Esys_MAC, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 792), (void *)_cffi_d_Esys_MAC },
  { "Esys_MAC_Async", (void *)_cffi_f_Esys_MAC_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 783), (void *)_cffi_d_Esys_MAC_Async },
  { "Esys_MAC_Finish", (void *)_cffi_f_Esys_MAC_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 40), (void *)_cffi_d_Esys_MAC_Finish },
  { "Esys_MAC_Start", (void *)_cffi_f_Esys_MAC_Start, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 656), (void *)_cffi_d_Esys_MAC_Start },
  { "Esys_MAC_Start_Async", (void *)_cffi_f_Esys_MAC_Start_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 637), (void *)_cffi_d_Esys_MAC_Start_Async },
  { "Esys_MAC_Start_Finish", (void *)_cffi_f_Esys_MAC_Start_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 207), (void *)_cffi_d_Esys_MAC_Start_Finish },
  { "Esys_MakeCredential", (void *)_cffi_f_Esys_MakeCredential, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 558), (void *)_cffi_d_Esys_MakeCredential },
  { "Esys_MakeCredential_Async", (void *)_cffi_f_Esys_MakeCredential_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 549), (void *)_cffi_d_Esys_MakeCredential_Async },
  { "Esys_MakeCredential_Finish", (void *)_cffi_f_Esys_MakeCredential_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 75), (void *)_cffi_d_Esys_MakeCredential_Finish },
  { "Esys_NV_Certify", (void *)_cffi_f_Esys_NV_Certify, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1420), (void *)_cffi_d_Esys_NV_Certify },
  { "Esys_NV_Certify_Async", (void *)_cffi_f_Esys_NV_Certify_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1407), (void *)_cffi_d_Esys_NV_Certify_Async },
  { "Esys_NV_Certify_Finish", (void *)_cffi_f_Esys_NV_Certify_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 25), (void *)_cffi_d_Esys_NV_Certify_Finish },
  { "Esys_NV_ChangeAuth", (void *)_cffi_f_Esys_NV_ChangeAuth, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 518), (void *)_cffi_d_Esys_NV_ChangeAuth },
  { "Esys_NV_ChangeAuth_Async", (void *)_cffi_f_Esys_NV_ChangeAuth_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 518), (void *)_cffi_d_Esys_NV_ChangeAuth_Async },
  { "Esys_NV_ChangeAuth_Finish", (void *)_cffi_f_Esys_NV_ChangeAuth_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_NV_ChangeAuth_Finish },
  { "Esys_NV_DefineSpace", (void *)_cffi_f_Esys_NV_DefineSpace, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 578), (void *)_cffi_d_Esys_NV_DefineSpace },
  { "Esys_NV_DefineSpace_Async", (void *)_cffi_f_Esys_NV_DefineSpace_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 569), (void *)_cffi_d_Esys_NV_DefineSpace_Async },
  { "Esys_NV_DefineSpace_Finish", (void *)_cffi_f_Esys_NV_DefineSpace_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 207), (void *)_cffi_d_Esys_NV_DefineSpace_Finish },
  { "Esys_NV_Extend", (void *)_cffi_f_Esys_NV_Extend, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1310), (void *)_cffi_d_Esys_NV_Extend },
  { "Esys_NV_Extend_Async", (void *)_cffi_f_Esys_NV_Extend_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1310), (void *)_cffi_d_Esys_NV_Extend_Async },
  { "Esys_NV_Extend_Finish", (void *)_cffi_f_Esys_NV_Extend_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_NV_Extend_Finish },
  { "Esys_NV_GlobalWriteLock", (void *)_cffi_f_Esys_NV_GlobalWriteLock, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_NV_GlobalWriteLock },
  { "Esys_NV_GlobalWriteLock_Async", (void *)_cffi_f_Esys_NV_GlobalWriteLock_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_NV_GlobalWriteLock_Async },
  { "Esys_NV_GlobalWriteLock_Finish", (void *)_cffi_f_Esys_NV_GlobalWriteLock_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_NV_GlobalWriteLock_Finish },
  { "Esys_NV_Increment", (void *)_cffi_f_Esys_NV_Increment, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1058), (void *)_cffi_d_Esys_NV_Increment },
  { "Esys_NV_Increment_Async", (void *)_cffi_f_Esys_NV_Increment_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1058), (void *)_cffi_d_Esys_NV_Increment_Async },
  { "Esys_NV_Increment_Finish", (void *)_cffi_f_Esys_NV_Increment_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_NV_Increment_Finish },
  { "Esys_NV_Read", (void *)_cffi_f_Esys_NV_Read, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1363), (void *)_cffi_d_Esys_NV_Read },
  { "Esys_NV_ReadLock", (void *)_cffi_f_Esys_NV_ReadLock, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1058), (void *)_cffi_d_Esys_NV_ReadLock },
  { "Esys_NV_ReadLock_Async", (void *)_cffi_f_Esys_NV_ReadLock_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1058), (void *)_cffi_d_Esys_NV_ReadLock_Async },
  { "Esys_NV_ReadLock_Finish", (void *)_cffi_f_Esys_NV_ReadLock_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_NV_ReadLock_Finish },
  { "Esys_NV_ReadPublic", (void *)_cffi_f_Esys_NV_ReadPublic, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 856), (void *)_cffi_d_Esys_NV_ReadPublic },
  { "Esys_NV_ReadPublic_Async", (void *)_cffi_f_Esys_NV_ReadPublic_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_NV_ReadPublic_Async },
  { "Esys_NV_ReadPublic_Finish", (void *)_cffi_f_Esys_NV_ReadPublic_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 104), (void *)_cffi_d_Esys_NV_ReadPublic_Finish },
  { "Esys_NV_Read_Async", (void *)_cffi_f_Esys_NV_Read_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1353), (void *)_cffi_d_Esys_NV_Read_Async },
  { "Esys_NV_Read_Finish", (void *)_cffi_f_Esys_NV_Read_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 100), (void *)_cffi_d_Esys_NV_Read_Finish },
  { "Esys_NV_SetBits", (void *)_cffi_f_Esys_NV_SetBits, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1510), (void *)_cffi_d_Esys_NV_SetBits },
  { "Esys_NV_SetBits_Async", (void *)_cffi_f_Esys_NV_SetBits_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1510), (void *)_cffi_d_Esys_NV_SetBits_Async },
  { "Esys_NV_SetBits_Finish", (void *)_cffi_f_Esys_NV_SetBits_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_NV_SetBits_Finish },
  { "Esys_NV_UndefineSpace", (void *)_cffi_f_Esys_NV_UndefineSpace, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1058), (void *)_cffi_d_Esys_NV_UndefineSpace },
  { "Esys_NV_UndefineSpaceSpecial", (void *)_cffi_f_Esys_NV_UndefineSpaceSpecial, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1058), (void *)_cffi_d_Esys_NV_UndefineSpaceSpecial },
  { "Esys_NV_UndefineSpaceSpecial_Async", (void *)_cffi_f_Esys_NV_UndefineSpaceSpecial_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1058), (void *)_cffi_d_Esys_NV_UndefineSpaceSpecial_Async },
  { "Esys_NV_UndefineSpaceSpecial_Finish", (void *)_cffi_f_Esys_NV_UndefineSpaceSpecial_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_NV_UndefineSpaceSpecial_Finish },
  { "Esys_NV_UndefineSpace_Async", (void *)_cffi_f_Esys_NV_UndefineSpace_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1058), (void *)_cffi_d_Esys_NV_UndefineSpace_Async },
  { "Esys_NV_UndefineSpace_Finish", (void *)_cffi_f_Esys_NV_UndefineSpace_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_NV_UndefineSpace_Finish },
  { "Esys_NV_Write", (void *)_cffi_f_Esys_NV_Write, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1319), (void *)_cffi_d_Esys_NV_Write },
  { "Esys_NV_WriteLock", (void *)_cffi_f_Esys_NV_WriteLock, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1058), (void *)_cffi_d_Esys_NV_WriteLock },
  { "Esys_NV_WriteLock_Async", (void *)_cffi_f_Esys_NV_WriteLock_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1058), (void *)_cffi_d_Esys_NV_WriteLock_Async },
  { "Esys_NV_WriteLock_Finish", (void *)_cffi_f_Esys_NV_WriteLock_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_NV_WriteLock_Finish },
  { "Esys_NV_Write_Async", (void *)_cffi_f_Esys_NV_Write_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1319), (void *)_cffi_d_Esys_NV_Write_Async },
  { "Esys_NV_Write_Finish", (void *)_cffi_f_Esys_NV_Write_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_NV_Write_Finish },
  { "Esys_ObjectChangeAuth", (void *)_cffi_f_Esys_ObjectChangeAuth, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1225), (void *)_cffi_d_Esys_ObjectChangeAuth },
  { "Esys_ObjectChangeAuth_Async", (void *)_cffi_f_Esys_ObjectChangeAuth_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1162), (void *)_cffi_d_Esys_ObjectChangeAuth_Async },
  { "Esys_ObjectChangeAuth_Finish", (void *)_cffi_f_Esys_ObjectChangeAuth_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 109), (void *)_cffi_d_Esys_ObjectChangeAuth_Finish },
  { "Esys_PCR_Allocate", (void *)_cffi_f_Esys_PCR_Allocate, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1020), (void *)_cffi_d_Esys_PCR_Allocate },
  { "Esys_PCR_Allocate_Async", (void *)_cffi_f_Esys_PCR_Allocate_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1012), (void *)_cffi_d_Esys_PCR_Allocate_Async },
  { "Esys_PCR_Allocate_Finish", (void *)_cffi_f_Esys_PCR_Allocate_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1602), (void *)_cffi_d_Esys_PCR_Allocate_Finish },
  { "Esys_PCR_Event", (void *)_cffi_f_Esys_PCR_Event, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 758), (void *)_cffi_d_Esys_PCR_Event },
  { "Esys_PCR_Event_Async", (void *)_cffi_f_Esys_PCR_Event_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 750), (void *)_cffi_d_Esys_PCR_Event_Async },
  { "Esys_PCR_Event_Finish", (void *)_cffi_f_Esys_PCR_Event_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 144), (void *)_cffi_d_Esys_PCR_Event_Finish },
  { "Esys_PCR_Extend", (void *)_cffi_f_Esys_PCR_Extend, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1004), (void *)_cffi_d_Esys_PCR_Extend },
  { "Esys_PCR_Extend_Async", (void *)_cffi_f_Esys_PCR_Extend_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1004), (void *)_cffi_d_Esys_PCR_Extend_Async },
  { "Esys_PCR_Extend_Finish", (void *)_cffi_f_Esys_PCR_Extend_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PCR_Extend_Finish },
  { "Esys_PCR_Read", (void *)_cffi_f_Esys_PCR_Read, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 400), (void *)_cffi_d_Esys_PCR_Read },
  { "Esys_PCR_Read_Async", (void *)_cffi_f_Esys_PCR_Read_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 393), (void *)_cffi_d_Esys_PCR_Read_Async },
  { "Esys_PCR_Read_Finish", (void *)_cffi_f_Esys_PCR_Read_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 225), (void *)_cffi_d_Esys_PCR_Read_Finish },
  { "Esys_PCR_Reset", (void *)_cffi_f_Esys_PCR_Reset, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_PCR_Reset },
  { "Esys_PCR_Reset_Async", (void *)_cffi_f_Esys_PCR_Reset_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_PCR_Reset_Async },
  { "Esys_PCR_Reset_Finish", (void *)_cffi_f_Esys_PCR_Reset_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PCR_Reset_Finish },
  { "Esys_PCR_SetAuthPolicy", (void *)_cffi_f_Esys_PCR_SetAuthPolicy, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 666), (void *)_cffi_d_Esys_PCR_SetAuthPolicy },
  { "Esys_PCR_SetAuthPolicy_Async", (void *)_cffi_f_Esys_PCR_SetAuthPolicy_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 666), (void *)_cffi_d_Esys_PCR_SetAuthPolicy_Async },
  { "Esys_PCR_SetAuthPolicy_Finish", (void *)_cffi_f_Esys_PCR_SetAuthPolicy_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PCR_SetAuthPolicy_Finish },
  { "Esys_PCR_SetAuthValue", (void *)_cffi_f_Esys_PCR_SetAuthValue, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 518), (void *)_cffi_d_Esys_PCR_SetAuthValue },
  { "Esys_PCR_SetAuthValue_Async", (void *)_cffi_f_Esys_PCR_SetAuthValue_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 518), (void *)_cffi_d_Esys_PCR_SetAuthValue_Async },
  { "Esys_PCR_SetAuthValue_Finish", (void *)_cffi_f_Esys_PCR_SetAuthValue_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PCR_SetAuthValue_Finish },
  { "Esys_PP_Commands", (void *)_cffi_f_Esys_PP_Commands, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 987), (void *)_cffi_d_Esys_PP_Commands },
  { "Esys_PP_Commands_Async", (void *)_cffi_f_Esys_PP_Commands_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 987), (void *)_cffi_d_Esys_PP_Commands_Async },
  { "Esys_PP_Commands_Finish", (void *)_cffi_f_Esys_PP_Commands_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PP_Commands_Finish },
  { "Esys_PolicyAuthValue", (void *)_cffi_f_Esys_PolicyAuthValue, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_PolicyAuthValue },
  { "Esys_PolicyAuthValue_Async", (void *)_cffi_f_Esys_PolicyAuthValue_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_PolicyAuthValue_Async },
  { "Esys_PolicyAuthValue_Finish", (void *)_cffi_f_Esys_PolicyAuthValue_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyAuthValue_Finish },
  { "Esys_PolicyAuthorize", (void *)_cffi_f_Esys_PolicyAuthorize, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 538), (void *)_cffi_d_Esys_PolicyAuthorize },
  { "Esys_PolicyAuthorizeNV", (void *)_cffi_f_Esys_PolicyAuthorizeNV, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1374), (void *)_cffi_d_Esys_PolicyAuthorizeNV },
  { "Esys_PolicyAuthorizeNV_Async", (void *)_cffi_f_Esys_PolicyAuthorizeNV_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1374), (void *)_cffi_d_Esys_PolicyAuthorizeNV_Async },
  { "Esys_PolicyAuthorizeNV_Finish", (void *)_cffi_f_Esys_PolicyAuthorizeNV_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyAuthorizeNV_Finish },
  { "Esys_PolicyAuthorize_Async", (void *)_cffi_f_Esys_PolicyAuthorize_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 538), (void *)_cffi_d_Esys_PolicyAuthorize_Async },
  { "Esys_PolicyAuthorize_Finish", (void *)_cffi_f_Esys_PolicyAuthorize_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyAuthorize_Finish },
  { "Esys_PolicyCommandCode", (void *)_cffi_f_Esys_PolicyCommandCode, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1058), (void *)_cffi_d_Esys_PolicyCommandCode },
  { "Esys_PolicyCommandCode_Async", (void *)_cffi_f_Esys_PolicyCommandCode_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1058), (void *)_cffi_d_Esys_PolicyCommandCode_Async },
  { "Esys_PolicyCommandCode_Finish", (void *)_cffi_f_Esys_PolicyCommandCode_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyCommandCode_Finish },
  { "Esys_PolicyCounterTimer", (void *)_cffi_f_Esys_PolicyCounterTimer, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 646), (void *)_cffi_d_Esys_PolicyCounterTimer },
  { "Esys_PolicyCounterTimer_Async", (void *)_cffi_f_Esys_PolicyCounterTimer_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 646), (void *)_cffi_d_Esys_PolicyCounterTimer_Async },
  { "Esys_PolicyCounterTimer_Finish", (void *)_cffi_f_Esys_PolicyCounterTimer_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyCounterTimer_Finish },
  { "Esys_PolicyCpHash", (void *)_cffi_f_Esys_PolicyCpHash, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 518), (void *)_cffi_d_Esys_PolicyCpHash },
  { "Esys_PolicyCpHash_Async", (void *)_cffi_f_Esys_PolicyCpHash_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 518), (void *)_cffi_d_Esys_PolicyCpHash_Async },
  { "Esys_PolicyCpHash_Finish", (void *)_cffi_f_Esys_PolicyCpHash_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyCpHash_Finish },
  { "Esys_PolicyDuplicationSelect", (void *)_cffi_f_Esys_PolicyDuplicationSelect, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 846), (void *)_cffi_d_Esys_PolicyDuplicationSelect },
  { "Esys_PolicyDuplicationSelect_Async", (void *)_cffi_f_Esys_PolicyDuplicationSelect_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 846), (void *)_cffi_d_Esys_PolicyDuplicationSelect_Async },
  { "Esys_PolicyDuplicationSelect_Finish", (void *)_cffi_f_Esys_PolicyDuplicationSelect_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyDuplicationSelect_Finish },
  { "Esys_PolicyGetDigest", (void *)_cffi_f_Esys_PolicyGetDigest, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 510), (void *)_cffi_d_Esys_PolicyGetDigest },
  { "Esys_PolicyGetDigest_Async", (void *)_cffi_f_Esys_PolicyGetDigest_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_PolicyGetDigest_Async },
  { "Esys_PolicyGetDigest_Finish", (void *)_cffi_f_Esys_PolicyGetDigest_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 40), (void *)_cffi_d_Esys_PolicyGetDigest_Finish },
  { "Esys_PolicyLocality", (void *)_cffi_f_Esys_PolicyLocality, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1536), (void *)_cffi_d_Esys_PolicyLocality },
  { "Esys_PolicyLocality_Async", (void *)_cffi_f_Esys_PolicyLocality_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1536), (void *)_cffi_d_Esys_PolicyLocality_Async },
  { "Esys_PolicyLocality_Finish", (void *)_cffi_f_Esys_PolicyLocality_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyLocality_Finish },
  { "Esys_PolicyNV", (void *)_cffi_f_Esys_PolicyNV, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1435), (void *)_cffi_d_Esys_PolicyNV },
  { "Esys_PolicyNV_Async", (void *)_cffi_f_Esys_PolicyNV_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1435), (void *)_cffi_d_Esys_PolicyNV_Async },
  { "Esys_PolicyNV_Finish", (void *)_cffi_f_Esys_PolicyNV_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyNV_Finish },
  { "Esys_PolicyNameHash", (void *)_cffi_f_Esys_PolicyNameHash, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 518), (void *)_cffi_d_Esys_PolicyNameHash },
  { "Esys_PolicyNameHash_Async", (void *)_cffi_f_Esys_PolicyNameHash_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 518), (void *)_cffi_d_Esys_PolicyNameHash_Async },
  { "Esys_PolicyNameHash_Finish", (void *)_cffi_f_Esys_PolicyNameHash_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyNameHash_Finish },
  { "Esys_PolicyNvWritten", (void *)_cffi_f_Esys_PolicyNvWritten, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1536), (void *)_cffi_d_Esys_PolicyNvWritten },
  { "Esys_PolicyNvWritten_Async", (void *)_cffi_f_Esys_PolicyNvWritten_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1536), (void *)_cffi_d_Esys_PolicyNvWritten_Async },
  { "Esys_PolicyNvWritten_Finish", (void *)_cffi_f_Esys_PolicyNvWritten_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyNvWritten_Finish },
  { "Esys_PolicyOR", (void *)_cffi_f_Esys_PolicyOR, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 996), (void *)_cffi_d_Esys_PolicyOR },
  { "Esys_PolicyOR_Async", (void *)_cffi_f_Esys_PolicyOR_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 996), (void *)_cffi_d_Esys_PolicyOR_Async },
  { "Esys_PolicyOR_Finish", (void *)_cffi_f_Esys_PolicyOR_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyOR_Finish },
  { "Esys_PolicyPCR", (void *)_cffi_f_Esys_PolicyPCR, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 588), (void *)_cffi_d_Esys_PolicyPCR },
  { "Esys_PolicyPCR_Async", (void *)_cffi_f_Esys_PolicyPCR_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 588), (void *)_cffi_d_Esys_PolicyPCR_Async },
  { "Esys_PolicyPCR_Finish", (void *)_cffi_f_Esys_PolicyPCR_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyPCR_Finish },
  { "Esys_PolicyPassword", (void *)_cffi_f_Esys_PolicyPassword, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_PolicyPassword },
  { "Esys_PolicyPassword_Async", (void *)_cffi_f_Esys_PolicyPassword_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_PolicyPassword_Async },
  { "Esys_PolicyPassword_Finish", (void *)_cffi_f_Esys_PolicyPassword_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyPassword_Finish },
  { "Esys_PolicyPhysicalPresence", (void *)_cffi_f_Esys_PolicyPhysicalPresence, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_PolicyPhysicalPresence },
  { "Esys_PolicyPhysicalPresence_Async", (void *)_cffi_f_Esys_PolicyPhysicalPresence_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_PolicyPhysicalPresence_Async },
  { "Esys_PolicyPhysicalPresence_Finish", (void *)_cffi_f_Esys_PolicyPhysicalPresence_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyPhysicalPresence_Finish },
  { "Esys_PolicyRestart", (void *)_cffi_f_Esys_PolicyRestart, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_PolicyRestart },
  { "Esys_PolicyRestart_Async", (void *)_cffi_f_Esys_PolicyRestart_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_PolicyRestart_Async },
  { "Esys_PolicyRestart_Finish", (void *)_cffi_f_Esys_PolicyRestart_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyRestart_Finish },
  { "Esys_PolicySecret", (void *)_cffi_f_Esys_PolicySecret, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1183), (void *)_cffi_d_Esys_PolicySecret },
  { "Esys_PolicySecret_Async", (void *)_cffi_f_Esys_PolicySecret_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1171), (void *)_cffi_d_Esys_PolicySecret_Async },
  { "Esys_PolicySecret_Finish", (void *)_cffi_f_Esys_PolicySecret_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 44), (void *)_cffi_d_Esys_PolicySecret_Finish },
  { "Esys_PolicySigned", (void *)_cffi_f_Esys_PolicySigned, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1210), (void *)_cffi_d_Esys_PolicySigned },
  { "Esys_PolicySigned_Async", (void *)_cffi_f_Esys_PolicySigned_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1197), (void *)_cffi_d_Esys_PolicySigned_Async },
  { "Esys_PolicySigned_Finish", (void *)_cffi_f_Esys_PolicySigned_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 44), (void *)_cffi_d_Esys_PolicySigned_Finish },
  { "Esys_PolicyTemplate", (void *)_cffi_f_Esys_PolicyTemplate, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 518), (void *)_cffi_d_Esys_PolicyTemplate },
  { "Esys_PolicyTemplate_Async", (void *)_cffi_f_Esys_PolicyTemplate_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 518), (void *)_cffi_d_Esys_PolicyTemplate_Async },
  { "Esys_PolicyTemplate_Finish", (void *)_cffi_f_Esys_PolicyTemplate_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyTemplate_Finish },
  { "Esys_PolicyTicket", (void *)_cffi_f_Esys_PolicyTicket, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 526), (void *)_cffi_d_Esys_PolicyTicket },
  { "Esys_PolicyTicket_Async", (void *)_cffi_f_Esys_PolicyTicket_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 526), (void *)_cffi_d_Esys_PolicyTicket_Async },
  { "Esys_PolicyTicket_Finish", (void *)_cffi_f_Esys_PolicyTicket_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_PolicyTicket_Finish },
  { "Esys_Policy_AC_SendSelect", (void *)_cffi_f_Esys_Policy_AC_SendSelect, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 342), (void *)_cffi_d_Esys_Policy_AC_SendSelect },
  { "Esys_Policy_AC_SendSelect_Async", (void *)_cffi_f_Esys_Policy_AC_SendSelect_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 342), (void *)_cffi_d_Esys_Policy_AC_SendSelect_Async },
  { "Esys_Policy_AC_SendSelect_Finish", (void *)_cffi_f_Esys_Policy_AC_SendSelect_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_Policy_AC_SendSelect_Finish },
  { "Esys_Quote", (void *)_cffi_f_Esys_Quote, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 498), (void *)_cffi_d_Esys_Quote },
  { "Esys_Quote_Async", (void *)_cffi_f_Esys_Quote_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 488), (void *)_cffi_d_Esys_Quote_Async },
  { "Esys_Quote_Finish", (void *)_cffi_f_Esys_Quote_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 25), (void *)_cffi_d_Esys_Quote_Finish },
  { "Esys_RSA_Decrypt", (void *)_cffi_f_Esys_RSA_Decrypt, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 904), (void *)_cffi_d_Esys_RSA_Decrypt },
  { "Esys_RSA_Decrypt_Async", (void *)_cffi_f_Esys_RSA_Decrypt_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 894), (void *)_cffi_d_Esys_RSA_Decrypt_Async },
  { "Esys_RSA_Decrypt_Finish", (void *)_cffi_f_Esys_RSA_Decrypt_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 132), (void *)_cffi_d_Esys_RSA_Decrypt_Finish },
  { "Esys_RSA_Encrypt", (void *)_cffi_f_Esys_RSA_Encrypt, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 904), (void *)_cffi_d_Esys_RSA_Encrypt },
  { "Esys_RSA_Encrypt_Async", (void *)_cffi_f_Esys_RSA_Encrypt_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 894), (void *)_cffi_d_Esys_RSA_Encrypt_Async },
  { "Esys_RSA_Encrypt_Finish", (void *)_cffi_f_Esys_RSA_Encrypt_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 132), (void *)_cffi_d_Esys_RSA_Encrypt_Finish },
  { "Esys_ReadClock", (void *)_cffi_f_Esys_ReadClock, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 410), (void *)_cffi_d_Esys_ReadClock },
  { "Esys_ReadClock_Async", (void *)_cffi_f_Esys_ReadClock_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 260), (void *)_cffi_d_Esys_ReadClock_Async },
  { "Esys_ReadClock_Finish", (void *)_cffi_f_Esys_ReadClock_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 169), (void *)_cffi_d_Esys_ReadClock_Finish },
  { "Esys_ReadPublic", (void *)_cffi_f_Esys_ReadPublic, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 884), (void *)_cffi_d_Esys_ReadPublic },
  { "Esys_ReadPublic_Async", (void *)_cffi_f_Esys_ReadPublic_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_ReadPublic_Async },
  { "Esys_ReadPublic_Finish", (void *)_cffi_f_Esys_ReadPublic_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 126), (void *)_cffi_d_Esys_ReadPublic_Finish },
  { "Esys_Rewrap", (void *)_cffi_f_Esys_Rewrap, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1340), (void *)_cffi_d_Esys_Rewrap },
  { "Esys_Rewrap_Async", (void *)_cffi_f_Esys_Rewrap_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1329), (void *)_cffi_d_Esys_Rewrap_Async },
  { "Esys_Rewrap_Finish", (void *)_cffi_f_Esys_Rewrap_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 113), (void *)_cffi_d_Esys_Rewrap_Finish },
  { "Esys_SelfTest", (void *)_cffi_f_Esys_SelfTest, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1568), (void *)_cffi_d_Esys_SelfTest },
  { "Esys_SelfTest_Async", (void *)_cffi_f_Esys_SelfTest_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1568), (void *)_cffi_d_Esys_SelfTest_Async },
  { "Esys_SelfTest_Finish", (void *)_cffi_f_Esys_SelfTest_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_SelfTest_Finish },
  { "Esys_SequenceComplete", (void *)_cffi_f_Esys_SequenceComplete, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 811), (void *)_cffi_d_Esys_SequenceComplete },
  { "Esys_SequenceComplete_Async", (void *)_cffi_f_Esys_SequenceComplete_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 802), (void *)_cffi_d_Esys_SequenceComplete_Async },
  { "Esys_SequenceComplete_Finish", (void *)_cffi_f_Esys_SequenceComplete_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 49), (void *)_cffi_d_Esys_SequenceComplete_Finish },
  { "Esys_SequenceUpdate", (void *)_cffi_f_Esys_SequenceUpdate, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 775), (void *)_cffi_d_Esys_SequenceUpdate },
  { "Esys_SequenceUpdate_Async", (void *)_cffi_f_Esys_SequenceUpdate_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 775), (void *)_cffi_d_Esys_SequenceUpdate_Async },
  { "Esys_SequenceUpdate_Finish", (void *)_cffi_f_Esys_SequenceUpdate_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_SequenceUpdate_Finish },
  { "Esys_SetAlgorithmSet", (void *)_cffi_f_Esys_SetAlgorithmSet, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1058), (void *)_cffi_d_Esys_SetAlgorithmSet },
  { "Esys_SetAlgorithmSet_Async", (void *)_cffi_f_Esys_SetAlgorithmSet_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1058), (void *)_cffi_d_Esys_SetAlgorithmSet_Async },
  { "Esys_SetAlgorithmSet_Finish", (void *)_cffi_f_Esys_SetAlgorithmSet_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_SetAlgorithmSet_Finish },
  { "Esys_SetCommandCodeAuditStatus", (void *)_cffi_f_Esys_SetCommandCodeAuditStatus, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1040), (void *)_cffi_d_Esys_SetCommandCodeAuditStatus },
  { "Esys_SetCommandCodeAuditStatus_Async", (void *)_cffi_f_Esys_SetCommandCodeAuditStatus_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1040), (void *)_cffi_d_Esys_SetCommandCodeAuditStatus_Async },
  { "Esys_SetCommandCodeAuditStatus_Finish", (void *)_cffi_f_Esys_SetCommandCodeAuditStatus_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_SetCommandCodeAuditStatus_Finish },
  { "Esys_SetCryptoCallbacks", (void *)_cffi_f_Esys_SetCryptoCallbacks, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 21), (void *)_cffi_d_Esys_SetCryptoCallbacks },
  { "Esys_SetPrimaryPolicy", (void *)_cffi_f_Esys_SetPrimaryPolicy, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 637), (void *)_cffi_d_Esys_SetPrimaryPolicy },
  { "Esys_SetPrimaryPolicy_Async", (void *)_cffi_f_Esys_SetPrimaryPolicy_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 637), (void *)_cffi_d_Esys_SetPrimaryPolicy_Async },
  { "Esys_SetPrimaryPolicy_Finish", (void *)_cffi_f_Esys_SetPrimaryPolicy_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_SetPrimaryPolicy_Finish },
  { "Esys_SetTimeout", (void *)_cffi_f_Esys_SetTimeout, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 199), (void *)_cffi_d_Esys_SetTimeout },
  { "Esys_Shutdown", (void *)_cffi_f_Esys_Shutdown, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 424), (void *)_cffi_d_Esys_Shutdown },
  { "Esys_Shutdown_Async", (void *)_cffi_f_Esys_Shutdown_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 424), (void *)_cffi_d_Esys_Shutdown_Async },
  { "Esys_Shutdown_Finish", (void *)_cffi_f_Esys_Shutdown_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_Shutdown_Finish },
  { "Esys_Sign", (void *)_cffi_f_Esys_Sign, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 626), (void *)_cffi_d_Esys_Sign },
  { "Esys_Sign_Async", (void *)_cffi_f_Esys_Sign_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 616), (void *)_cffi_d_Esys_Sign_Async },
  { "Esys_Sign_Finish", (void *)_cffi_f_Esys_Sign_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 178), (void *)_cffi_d_Esys_Sign_Finish },
  { "Esys_StartAuthSession", (void *)_cffi_f_Esys_StartAuthSession, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1257), (void *)_cffi_d_Esys_StartAuthSession },
  { "Esys_StartAuthSession_Async", (void *)_cffi_f_Esys_StartAuthSession_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1245), (void *)_cffi_d_Esys_StartAuthSession_Async },
  { "Esys_StartAuthSession_Finish", (void *)_cffi_f_Esys_StartAuthSession_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 207), (void *)_cffi_d_Esys_StartAuthSession_Finish },
  { "Esys_Startup", (void *)_cffi_f_Esys_Startup, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 203), (void *)_cffi_d_Esys_Startup },
  { "Esys_Startup_Async", (void *)_cffi_f_Esys_Startup_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 203), (void *)_cffi_d_Esys_Startup_Async },
  { "Esys_Startup_Finish", (void *)_cffi_f_Esys_Startup_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_Startup_Finish },
  { "Esys_StirRandom", (void *)_cffi_f_Esys_StirRandom, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 371), (void *)_cffi_d_Esys_StirRandom },
  { "Esys_StirRandom_Async", (void *)_cffi_f_Esys_StirRandom_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 371), (void *)_cffi_d_Esys_StirRandom_Async },
  { "Esys_StirRandom_Finish", (void *)_cffi_f_Esys_StirRandom_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_StirRandom_Finish },
  { "Esys_TRSess_GetAttributes", (void *)_cffi_f_Esys_TRSess_GetAttributes, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1581), (void *)_cffi_d_Esys_TRSess_GetAttributes },
  { "Esys_TRSess_GetAuthRequired", (void *)_cffi_f_Esys_TRSess_GetAuthRequired, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1581), (void *)_cffi_d_Esys_TRSess_GetAuthRequired },
  { "Esys_TRSess_GetNonceTPM", (void *)_cffi_f_Esys_TRSess_GetNonceTPM, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 235), (void *)_cffi_d_Esys_TRSess_GetNonceTPM },
  { "Esys_TRSess_SetAttributes", (void *)_cffi_f_Esys_TRSess_SetAttributes, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1586), (void *)_cffi_d_Esys_TRSess_SetAttributes },
  { "Esys_TR_Close", (void *)_cffi_f_Esys_TR_Close, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 207), (void *)_cffi_d_Esys_TR_Close },
  { "Esys_TR_Deserialize", (void *)_cffi_f_Esys_TR_Deserialize, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1609), (void *)_cffi_d_Esys_TR_Deserialize },
  { "Esys_TR_FromTPMPublic", (void *)_cffi_f_Esys_TR_FromTPMPublic, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1050), (void *)_cffi_d_Esys_TR_FromTPMPublic },
  { "Esys_TR_FromTPMPublic_Async", (void *)_cffi_f_Esys_TR_FromTPMPublic_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_TR_FromTPMPublic_Async },
  { "Esys_TR_FromTPMPublic_Finish", (void *)_cffi_f_Esys_TR_FromTPMPublic_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 207), (void *)_cffi_d_Esys_TR_FromTPMPublic_Finish },
  { "Esys_TR_GetName", (void *)_cffi_f_Esys_TR_GetName, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 245), (void *)_cffi_d_Esys_TR_GetName },
  { "Esys_TR_GetTpmHandle", (void *)_cffi_f_Esys_TR_GetTpmHandle, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 255), (void *)_cffi_d_Esys_TR_GetTpmHandle },
  { "Esys_TR_Serialize", (void *)_cffi_f_Esys_TR_Serialize, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1575), (void *)_cffi_d_Esys_TR_Serialize },
  { "Esys_TR_SetAuth", (void *)_cffi_f_Esys_TR_SetAuth, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 240), (void *)_cffi_d_Esys_TR_SetAuth },
  { "Esys_TestParms", (void *)_cffi_f_Esys_TestParms, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 417), (void *)_cffi_d_Esys_TestParms },
  { "Esys_TestParms_Async", (void *)_cffi_f_Esys_TestParms_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 417), (void *)_cffi_d_Esys_TestParms_Async },
  { "Esys_TestParms_Finish", (void *)_cffi_f_Esys_TestParms_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 18), (void *)_cffi_d_Esys_TestParms_Finish },
  { "Esys_Unseal", (void *)_cffi_f_Esys_Unseal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 979), (void *)_cffi_d_Esys_Unseal },
  { "Esys_Unseal_Async", (void *)_cffi_f_Esys_Unseal_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 456), (void *)_cffi_d_Esys_Unseal_Async },
  { "Esys_Unseal_Finish", (void *)_cffi_f_Esys_Unseal_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 136), (void *)_cffi_d_Esys_Unseal_Finish },
  { "Esys_Vendor_TCG_Test", (void *)_cffi_f_Esys_Vendor_TCG_Test, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 273), (void *)_cffi_d_Esys_Vendor_TCG_Test },
  { "Esys_Vendor_TCG_Test_Async", (void *)_cffi_f_Esys_Vendor_TCG_Test_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 266), (void *)_cffi_d_Esys_Vendor_TCG_Test_Async },
  { "Esys_Vendor_TCG_Test_Finish", (void *)_cffi_f_Esys_Vendor_TCG_Test_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 30), (void *)_cffi_d_Esys_Vendor_TCG_Test_Finish },
  { "Esys_VerifySignature", (void *)_cffi_f_Esys_VerifySignature, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 606), (void *)_cffi_d_Esys_VerifySignature },
  { "Esys_VerifySignature_Async", (void *)_cffi_f_Esys_VerifySignature_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 597), (void *)_cffi_d_Esys_VerifySignature_Async },
  { "Esys_VerifySignature_Finish", (void *)_cffi_f_Esys_VerifySignature_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 182), (void *)_cffi_d_Esys_VerifySignature_Finish },
  { "Esys_ZGen_2Phase", (void *)_cffi_f_Esys_ZGen_2Phase, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 713), (void *)_cffi_d_Esys_ZGen_2Phase },
  { "Esys_ZGen_2Phase_Async", (void *)_cffi_f_Esys_ZGen_2Phase_Async, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 702), (void *)_cffi_d_Esys_ZGen_2Phase_Async },
  { "Esys_ZGen_2Phase_Finish", (void *)_cffi_f_Esys_ZGen_2Phase_Finish, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 58), (void *)_cffi_d_Esys_ZGen_2Phase_Finish },
  { "TPM2_ACTIVE_SESSION_FIRST", (void *)_cffi_const_TPM2_ACTIVE_SESSION_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ACTIVE_SESSION_LAST", (void *)_cffi_const_TPM2_ACTIVE_SESSION_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_AES", (void *)_cffi_const_TPM2_ALG_AES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_CAMELLIA", (void *)_cffi_const_TPM2_ALG_CAMELLIA, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_CBC", (void *)_cffi_const_TPM2_ALG_CBC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_CFB", (void *)_cffi_const_TPM2_ALG_CFB, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_CMAC", (void *)_cffi_const_TPM2_ALG_CMAC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_CTR", (void *)_cffi_const_TPM2_ALG_CTR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_ECB", (void *)_cffi_const_TPM2_ALG_ECB, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_ECC", (void *)_cffi_const_TPM2_ALG_ECC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_ECDAA", (void *)_cffi_const_TPM2_ALG_ECDAA, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_ECDH", (void *)_cffi_const_TPM2_ALG_ECDH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_ECDSA", (void *)_cffi_const_TPM2_ALG_ECDSA, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_ECMQV", (void *)_cffi_const_TPM2_ALG_ECMQV, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_ECSCHNORR", (void *)_cffi_const_TPM2_ALG_ECSCHNORR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_ERROR", (void *)_cffi_const_TPM2_ALG_ERROR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_FIRST", (void *)_cffi_const_TPM2_ALG_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_HMAC", (void *)_cffi_const_TPM2_ALG_HMAC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_KDF1_SP800_108", (void *)_cffi_const_TPM2_ALG_KDF1_SP800_108, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_KDF1_SP800_56A", (void *)_cffi_const_TPM2_ALG_KDF1_SP800_56A, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_KDF2", (void *)_cffi_const_TPM2_ALG_KDF2, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_KEYEDHASH", (void *)_cffi_const_TPM2_ALG_KEYEDHASH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_LAST", (void *)_cffi_const_TPM2_ALG_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_MGF1", (void *)_cffi_const_TPM2_ALG_MGF1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_NULL", (void *)_cffi_const_TPM2_ALG_NULL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_OAEP", (void *)_cffi_const_TPM2_ALG_OAEP, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_OFB", (void *)_cffi_const_TPM2_ALG_OFB, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_RSA", (void *)_cffi_const_TPM2_ALG_RSA, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_RSAES", (void *)_cffi_const_TPM2_ALG_RSAES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_RSAPSS", (void *)_cffi_const_TPM2_ALG_RSAPSS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_RSASSA", (void *)_cffi_const_TPM2_ALG_RSASSA, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_SHA", (void *)_cffi_const_TPM2_ALG_SHA, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_SHA1", (void *)_cffi_const_TPM2_ALG_SHA1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_SHA256", (void *)_cffi_const_TPM2_ALG_SHA256, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_SHA384", (void *)_cffi_const_TPM2_ALG_SHA384, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_SHA3_256", (void *)_cffi_const_TPM2_ALG_SHA3_256, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_SHA3_384", (void *)_cffi_const_TPM2_ALG_SHA3_384, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_SHA3_512", (void *)_cffi_const_TPM2_ALG_SHA3_512, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_SHA512", (void *)_cffi_const_TPM2_ALG_SHA512, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_SM2", (void *)_cffi_const_TPM2_ALG_SM2, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_SM3_256", (void *)_cffi_const_TPM2_ALG_SM3_256, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_SM4", (void *)_cffi_const_TPM2_ALG_SM4, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_SYMCIPHER", (void *)_cffi_const_TPM2_ALG_SYMCIPHER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_TDES", (void *)_cffi_const_TPM2_ALG_TDES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ALG_XOR", (void *)_cffi_const_TPM2_ALG_XOR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CAP_ACT", (void *)_cffi_const_TPM2_CAP_ACT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CAP_ALGS", (void *)_cffi_const_TPM2_CAP_ALGS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CAP_AUDIT_COMMANDS", (void *)_cffi_const_TPM2_CAP_AUDIT_COMMANDS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CAP_AUTH_POLICIES", (void *)_cffi_const_TPM2_CAP_AUTH_POLICIES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CAP_COMMANDS", (void *)_cffi_const_TPM2_CAP_COMMANDS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CAP_ECC_CURVES", (void *)_cffi_const_TPM2_CAP_ECC_CURVES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CAP_FIRST", (void *)_cffi_const_TPM2_CAP_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CAP_HANDLES", (void *)_cffi_const_TPM2_CAP_HANDLES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CAP_LAST", (void *)_cffi_const_TPM2_CAP_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CAP_PCRS", (void *)_cffi_const_TPM2_CAP_PCRS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CAP_PCR_PROPERTIES", (void *)_cffi_const_TPM2_CAP_PCR_PROPERTIES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CAP_PP_COMMANDS", (void *)_cffi_const_TPM2_CAP_PP_COMMANDS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CAP_TPM_PROPERTIES", (void *)_cffi_const_TPM2_CAP_TPM_PROPERTIES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CAP_VENDOR_PROPERTY", (void *)_cffi_const_TPM2_CAP_VENDOR_PROPERTY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_ACT_SetTimeout", (void *)_cffi_const_TPM2_CC_ACT_SetTimeout, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_AC_GetCapability", (void *)_cffi_const_TPM2_CC_AC_GetCapability, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_AC_Send", (void *)_cffi_const_TPM2_CC_AC_Send, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_ActivateCredential", (void *)_cffi_const_TPM2_CC_ActivateCredential, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_Certify", (void *)_cffi_const_TPM2_CC_Certify, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_CertifyCreation", (void *)_cffi_const_TPM2_CC_CertifyCreation, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_CertifyX509", (void *)_cffi_const_TPM2_CC_CertifyX509, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_ChangeEPS", (void *)_cffi_const_TPM2_CC_ChangeEPS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_ChangePPS", (void *)_cffi_const_TPM2_CC_ChangePPS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_Clear", (void *)_cffi_const_TPM2_CC_Clear, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_ClearControl", (void *)_cffi_const_TPM2_CC_ClearControl, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_ClockRateAdjust", (void *)_cffi_const_TPM2_CC_ClockRateAdjust, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_ClockSet", (void *)_cffi_const_TPM2_CC_ClockSet, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_Commit", (void *)_cffi_const_TPM2_CC_Commit, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_ContextLoad", (void *)_cffi_const_TPM2_CC_ContextLoad, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_ContextSave", (void *)_cffi_const_TPM2_CC_ContextSave, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_Create", (void *)_cffi_const_TPM2_CC_Create, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_CreateLoaded", (void *)_cffi_const_TPM2_CC_CreateLoaded, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_CreatePrimary", (void *)_cffi_const_TPM2_CC_CreatePrimary, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_DictionaryAttackLockReset", (void *)_cffi_const_TPM2_CC_DictionaryAttackLockReset, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_DictionaryAttackParameters", (void *)_cffi_const_TPM2_CC_DictionaryAttackParameters, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_Duplicate", (void *)_cffi_const_TPM2_CC_Duplicate, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_ECC_Parameters", (void *)_cffi_const_TPM2_CC_ECC_Parameters, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_ECDH_KeyGen", (void *)_cffi_const_TPM2_CC_ECDH_KeyGen, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_ECDH_ZGen", (void *)_cffi_const_TPM2_CC_ECDH_ZGen, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_EC_Ephemeral", (void *)_cffi_const_TPM2_CC_EC_Ephemeral, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_EncryptDecrypt", (void *)_cffi_const_TPM2_CC_EncryptDecrypt, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_EncryptDecrypt2", (void *)_cffi_const_TPM2_CC_EncryptDecrypt2, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_EventSequenceComplete", (void *)_cffi_const_TPM2_CC_EventSequenceComplete, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_EvictControl", (void *)_cffi_const_TPM2_CC_EvictControl, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_FIRST", (void *)_cffi_const_TPM2_CC_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_FieldUpgradeData", (void *)_cffi_const_TPM2_CC_FieldUpgradeData, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_FieldUpgradeStart", (void *)_cffi_const_TPM2_CC_FieldUpgradeStart, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_FirmwareRead", (void *)_cffi_const_TPM2_CC_FirmwareRead, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_FlushContext", (void *)_cffi_const_TPM2_CC_FlushContext, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_GetCapability", (void *)_cffi_const_TPM2_CC_GetCapability, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_GetCommandAuditDigest", (void *)_cffi_const_TPM2_CC_GetCommandAuditDigest, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_GetRandom", (void *)_cffi_const_TPM2_CC_GetRandom, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_GetSessionAuditDigest", (void *)_cffi_const_TPM2_CC_GetSessionAuditDigest, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_GetTestResult", (void *)_cffi_const_TPM2_CC_GetTestResult, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_GetTime", (void *)_cffi_const_TPM2_CC_GetTime, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_HMAC", (void *)_cffi_const_TPM2_CC_HMAC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_HMAC_Start", (void *)_cffi_const_TPM2_CC_HMAC_Start, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_Hash", (void *)_cffi_const_TPM2_CC_Hash, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_HashSequenceStart", (void *)_cffi_const_TPM2_CC_HashSequenceStart, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_HierarchyChangeAuth", (void *)_cffi_const_TPM2_CC_HierarchyChangeAuth, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_HierarchyControl", (void *)_cffi_const_TPM2_CC_HierarchyControl, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_Import", (void *)_cffi_const_TPM2_CC_Import, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_IncrementalSelfTest", (void *)_cffi_const_TPM2_CC_IncrementalSelfTest, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_LAST", (void *)_cffi_const_TPM2_CC_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_Load", (void *)_cffi_const_TPM2_CC_Load, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_LoadExternal", (void *)_cffi_const_TPM2_CC_LoadExternal, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_MAC", (void *)_cffi_const_TPM2_CC_MAC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_MAC_Start", (void *)_cffi_const_TPM2_CC_MAC_Start, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_MakeCredential", (void *)_cffi_const_TPM2_CC_MakeCredential, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_NV_Certify", (void *)_cffi_const_TPM2_CC_NV_Certify, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_NV_ChangeAuth", (void *)_cffi_const_TPM2_CC_NV_ChangeAuth, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_NV_DefineSpace", (void *)_cffi_const_TPM2_CC_NV_DefineSpace, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_NV_Extend", (void *)_cffi_const_TPM2_CC_NV_Extend, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_NV_GlobalWriteLock", (void *)_cffi_const_TPM2_CC_NV_GlobalWriteLock, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_NV_Increment", (void *)_cffi_const_TPM2_CC_NV_Increment, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_NV_Read", (void *)_cffi_const_TPM2_CC_NV_Read, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_NV_ReadLock", (void *)_cffi_const_TPM2_CC_NV_ReadLock, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_NV_ReadPublic", (void *)_cffi_const_TPM2_CC_NV_ReadPublic, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_NV_SetBits", (void *)_cffi_const_TPM2_CC_NV_SetBits, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_NV_UndefineSpace", (void *)_cffi_const_TPM2_CC_NV_UndefineSpace, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_NV_UndefineSpaceSpecial", (void *)_cffi_const_TPM2_CC_NV_UndefineSpaceSpecial, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_NV_Write", (void *)_cffi_const_TPM2_CC_NV_Write, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_NV_WriteLock", (void *)_cffi_const_TPM2_CC_NV_WriteLock, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_ObjectChangeAuth", (void *)_cffi_const_TPM2_CC_ObjectChangeAuth, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PCR_Allocate", (void *)_cffi_const_TPM2_CC_PCR_Allocate, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PCR_Event", (void *)_cffi_const_TPM2_CC_PCR_Event, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PCR_Extend", (void *)_cffi_const_TPM2_CC_PCR_Extend, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PCR_Read", (void *)_cffi_const_TPM2_CC_PCR_Read, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PCR_Reset", (void *)_cffi_const_TPM2_CC_PCR_Reset, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PCR_SetAuthPolicy", (void *)_cffi_const_TPM2_CC_PCR_SetAuthPolicy, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PCR_SetAuthValue", (void *)_cffi_const_TPM2_CC_PCR_SetAuthValue, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PP_Commands", (void *)_cffi_const_TPM2_CC_PP_Commands, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyAuthValue", (void *)_cffi_const_TPM2_CC_PolicyAuthValue, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyAuthorize", (void *)_cffi_const_TPM2_CC_PolicyAuthorize, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyAuthorizeNV", (void *)_cffi_const_TPM2_CC_PolicyAuthorizeNV, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyCommandCode", (void *)_cffi_const_TPM2_CC_PolicyCommandCode, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyCounterTimer", (void *)_cffi_const_TPM2_CC_PolicyCounterTimer, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyCpHash", (void *)_cffi_const_TPM2_CC_PolicyCpHash, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyDuplicationSelect", (void *)_cffi_const_TPM2_CC_PolicyDuplicationSelect, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyGetDigest", (void *)_cffi_const_TPM2_CC_PolicyGetDigest, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyLocality", (void *)_cffi_const_TPM2_CC_PolicyLocality, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyNV", (void *)_cffi_const_TPM2_CC_PolicyNV, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyNameHash", (void *)_cffi_const_TPM2_CC_PolicyNameHash, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyNvWritten", (void *)_cffi_const_TPM2_CC_PolicyNvWritten, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyOR", (void *)_cffi_const_TPM2_CC_PolicyOR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyPCR", (void *)_cffi_const_TPM2_CC_PolicyPCR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyPassword", (void *)_cffi_const_TPM2_CC_PolicyPassword, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyPhysicalPresence", (void *)_cffi_const_TPM2_CC_PolicyPhysicalPresence, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyRestart", (void *)_cffi_const_TPM2_CC_PolicyRestart, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicySecret", (void *)_cffi_const_TPM2_CC_PolicySecret, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicySigned", (void *)_cffi_const_TPM2_CC_PolicySigned, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyTemplate", (void *)_cffi_const_TPM2_CC_PolicyTemplate, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_PolicyTicket", (void *)_cffi_const_TPM2_CC_PolicyTicket, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_Policy_AC_SendSelect", (void *)_cffi_const_TPM2_CC_Policy_AC_SendSelect, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_Quote", (void *)_cffi_const_TPM2_CC_Quote, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_RSA_Decrypt", (void *)_cffi_const_TPM2_CC_RSA_Decrypt, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_RSA_Encrypt", (void *)_cffi_const_TPM2_CC_RSA_Encrypt, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_ReadClock", (void *)_cffi_const_TPM2_CC_ReadClock, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_ReadPublic", (void *)_cffi_const_TPM2_CC_ReadPublic, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_Rewrap", (void *)_cffi_const_TPM2_CC_Rewrap, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_SelfTest", (void *)_cffi_const_TPM2_CC_SelfTest, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_SequenceComplete", (void *)_cffi_const_TPM2_CC_SequenceComplete, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_SequenceUpdate", (void *)_cffi_const_TPM2_CC_SequenceUpdate, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_SetAlgorithmSet", (void *)_cffi_const_TPM2_CC_SetAlgorithmSet, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_SetCommandCodeAuditStatus", (void *)_cffi_const_TPM2_CC_SetCommandCodeAuditStatus, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_SetPrimaryPolicy", (void *)_cffi_const_TPM2_CC_SetPrimaryPolicy, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_Shutdown", (void *)_cffi_const_TPM2_CC_Shutdown, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_Sign", (void *)_cffi_const_TPM2_CC_Sign, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_StartAuthSession", (void *)_cffi_const_TPM2_CC_StartAuthSession, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_Startup", (void *)_cffi_const_TPM2_CC_Startup, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_StirRandom", (void *)_cffi_const_TPM2_CC_StirRandom, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_TestParms", (void *)_cffi_const_TPM2_CC_TestParms, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_Unseal", (void *)_cffi_const_TPM2_CC_Unseal, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_Vendor_TCG_Test", (void *)_cffi_const_TPM2_CC_Vendor_TCG_Test, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_VerifySignature", (void *)_cffi_const_TPM2_CC_VerifySignature, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CC_ZGen_2Phase", (void *)_cffi_const_TPM2_CC_ZGen_2Phase, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CLOCK_COARSE_FASTER", (void *)_cffi_const_TPM2_CLOCK_COARSE_FASTER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CLOCK_COARSE_SLOWER", (void *)_cffi_const_TPM2_CLOCK_COARSE_SLOWER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CLOCK_FINE_FASTER", (void *)_cffi_const_TPM2_CLOCK_FINE_FASTER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CLOCK_FINE_SLOWER", (void *)_cffi_const_TPM2_CLOCK_FINE_SLOWER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CLOCK_MEDIUM_FASTER", (void *)_cffi_const_TPM2_CLOCK_MEDIUM_FASTER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CLOCK_MEDIUM_SLOWER", (void *)_cffi_const_TPM2_CLOCK_MEDIUM_SLOWER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_CLOCK_NO_CHANGE", (void *)_cffi_const_TPM2_CLOCK_NO_CHANGE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ECC_BN_P256", (void *)_cffi_const_TPM2_ECC_BN_P256, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ECC_BN_P638", (void *)_cffi_const_TPM2_ECC_BN_P638, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ECC_NIST_P192", (void *)_cffi_const_TPM2_ECC_NIST_P192, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ECC_NIST_P224", (void *)_cffi_const_TPM2_ECC_NIST_P224, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ECC_NIST_P256", (void *)_cffi_const_TPM2_ECC_NIST_P256, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ECC_NIST_P384", (void *)_cffi_const_TPM2_ECC_NIST_P384, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ECC_NIST_P521", (void *)_cffi_const_TPM2_ECC_NIST_P521, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ECC_NONE", (void *)_cffi_const_TPM2_ECC_NONE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ECC_SM2_P256", (void *)_cffi_const_TPM2_ECC_SM2_P256, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_EO_BITCLEAR", (void *)_cffi_const_TPM2_EO_BITCLEAR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_EO_BITSET", (void *)_cffi_const_TPM2_EO_BITSET, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_EO_EQ", (void *)_cffi_const_TPM2_EO_EQ, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_EO_NEQ", (void *)_cffi_const_TPM2_EO_NEQ, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_EO_SIGNED_GE", (void *)_cffi_const_TPM2_EO_SIGNED_GE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_EO_SIGNED_GT", (void *)_cffi_const_TPM2_EO_SIGNED_GT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_EO_SIGNED_LE", (void *)_cffi_const_TPM2_EO_SIGNED_LE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_EO_SIGNED_LT", (void *)_cffi_const_TPM2_EO_SIGNED_LT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_EO_UNSIGNED_GE", (void *)_cffi_const_TPM2_EO_UNSIGNED_GE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_EO_UNSIGNED_GT", (void *)_cffi_const_TPM2_EO_UNSIGNED_GT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_EO_UNSIGNED_LE", (void *)_cffi_const_TPM2_EO_UNSIGNED_LE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_EO_UNSIGNED_LT", (void *)_cffi_const_TPM2_EO_UNSIGNED_LT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_GENERATED_VALUE", (void *)_cffi_const_TPM2_GENERATED_VALUE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HMAC_SESSION_FIRST", (void *)_cffi_const_TPM2_HMAC_SESSION_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HMAC_SESSION_LAST", (void *)_cffi_const_TPM2_HMAC_SESSION_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HR_HANDLE_MASK", (void *)_cffi_const_TPM2_HR_HANDLE_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HR_HMAC_SESSION", (void *)_cffi_const_TPM2_HR_HMAC_SESSION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HR_NV_AC", (void *)_cffi_const_TPM2_HR_NV_AC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HR_NV_INDEX", (void *)_cffi_const_TPM2_HR_NV_INDEX, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HR_PCR", (void *)_cffi_const_TPM2_HR_PCR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HR_PERMANENT", (void *)_cffi_const_TPM2_HR_PERMANENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HR_PERSISTENT", (void *)_cffi_const_TPM2_HR_PERSISTENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HR_POLICY_SESSION", (void *)_cffi_const_TPM2_HR_POLICY_SESSION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HR_RANGE_MASK", (void *)_cffi_const_TPM2_HR_RANGE_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HR_SHIFT", (void *)_cffi_const_TPM2_HR_SHIFT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HR_TRANSIENT", (void *)_cffi_const_TPM2_HR_TRANSIENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HT_HMAC_SESSION", (void *)_cffi_const_TPM2_HT_HMAC_SESSION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HT_LOADED_SESSION", (void *)_cffi_const_TPM2_HT_LOADED_SESSION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HT_NV_INDEX", (void *)_cffi_const_TPM2_HT_NV_INDEX, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HT_PCR", (void *)_cffi_const_TPM2_HT_PCR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HT_PERMANENT", (void *)_cffi_const_TPM2_HT_PERMANENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HT_PERSISTENT", (void *)_cffi_const_TPM2_HT_PERSISTENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HT_POLICY_SESSION", (void *)_cffi_const_TPM2_HT_POLICY_SESSION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HT_SAVED_SESSION", (void *)_cffi_const_TPM2_HT_SAVED_SESSION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_HT_TRANSIENT", (void *)_cffi_const_TPM2_HT_TRANSIENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_LABEL_MAX_BUFFER", (void *)_cffi_const_TPM2_LABEL_MAX_BUFFER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_LOADED_SESSION_FIRST", (void *)_cffi_const_TPM2_LOADED_SESSION_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_LOADED_SESSION_LAST", (void *)_cffi_const_TPM2_LOADED_SESSION_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_ACT_DATA", (void *)_cffi_const_TPM2_MAX_ACT_DATA, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_AC_CAPABILITIES", (void *)_cffi_const_TPM2_MAX_AC_CAPABILITIES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_ALG_LIST_SIZE", (void *)_cffi_const_TPM2_MAX_ALG_LIST_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_CAP_ALGS", (void *)_cffi_const_TPM2_MAX_CAP_ALGS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_CAP_BUFFER", (void *)_cffi_const_TPM2_MAX_CAP_BUFFER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_CAP_CC", (void *)_cffi_const_TPM2_MAX_CAP_CC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_CAP_HANDLES", (void *)_cffi_const_TPM2_MAX_CAP_HANDLES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_COMMAND_SIZE", (void *)_cffi_const_TPM2_MAX_COMMAND_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_CONTEXT_SIZE", (void *)_cffi_const_TPM2_MAX_CONTEXT_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_DIGEST_BUFFER", (void *)_cffi_const_TPM2_MAX_DIGEST_BUFFER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_ECC_CURVES", (void *)_cffi_const_TPM2_MAX_ECC_CURVES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_ECC_KEY_BYTES", (void *)_cffi_const_TPM2_MAX_ECC_KEY_BYTES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_NV_BUFFER_SIZE", (void *)_cffi_const_TPM2_MAX_NV_BUFFER_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_PCRS", (void *)_cffi_const_TPM2_MAX_PCRS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_PCR_PROPERTIES", (void *)_cffi_const_TPM2_MAX_PCR_PROPERTIES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_PTT_PROPERTIES", (void *)_cffi_const_TPM2_MAX_PTT_PROPERTIES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_RESPONSE_SIZE", (void *)_cffi_const_TPM2_MAX_RESPONSE_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_RSA_KEY_BYTES", (void *)_cffi_const_TPM2_MAX_RSA_KEY_BYTES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_SYM_BLOCK_SIZE", (void *)_cffi_const_TPM2_MAX_SYM_BLOCK_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_SYM_DATA", (void *)_cffi_const_TPM2_MAX_SYM_DATA, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_SYM_KEY_BYTES", (void *)_cffi_const_TPM2_MAX_SYM_KEY_BYTES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_MAX_TPM_PROPERTIES", (void *)_cffi_const_TPM2_MAX_TPM_PROPERTIES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_NO", (void *)_cffi_const_TPM2_NO, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_NT_BITS", (void *)_cffi_const_TPM2_NT_BITS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_NT_COUNTER", (void *)_cffi_const_TPM2_NT_COUNTER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_NT_EXTEND", (void *)_cffi_const_TPM2_NT_EXTEND, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_NT_ORDINARY", (void *)_cffi_const_TPM2_NT_ORDINARY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_NT_PIN_FAIL", (void *)_cffi_const_TPM2_NT_PIN_FAIL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_NT_PIN_PASS", (void *)_cffi_const_TPM2_NT_PIN_PASS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_NUM_PCR_BANKS", (void *)_cffi_const_TPM2_NUM_PCR_BANKS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_NV_AC_FIRST", (void *)_cffi_const_TPM2_NV_AC_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_NV_AC_LAST", (void *)_cffi_const_TPM2_NV_AC_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_NV_INDEX_FIRST", (void *)_cffi_const_TPM2_NV_INDEX_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_NV_INDEX_INDEX_MASK", (void *)_cffi_const_TPM2_NV_INDEX_INDEX_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_NV_INDEX_INDEX_SHIFT", (void *)_cffi_const_TPM2_NV_INDEX_INDEX_SHIFT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_NV_INDEX_LAST", (void *)_cffi_const_TPM2_NV_INDEX_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_NV_INDEX_RH_NV_MASK", (void *)_cffi_const_TPM2_NV_INDEX_RH_NV_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_NV_INDEX_RH_NV_SHIFT", (void *)_cffi_const_TPM2_NV_INDEX_RH_NV_SHIFT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PCR_FIRST", (void *)_cffi_const_TPM2_PCR_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PCR_LAST", (void *)_cffi_const_TPM2_PCR_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PCR_SELECT_MAX", (void *)_cffi_const_TPM2_PCR_SELECT_MAX, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PERMANENT_FIRST", (void *)_cffi_const_TPM2_PERMANENT_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PERMANENT_LAST", (void *)_cffi_const_TPM2_PERMANENT_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PERSISTENT_FIRST", (void *)_cffi_const_TPM2_PERSISTENT_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PERSISTENT_LAST", (void *)_cffi_const_TPM2_PERSISTENT_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PLATFORM_PERSISTENT", (void *)_cffi_const_TPM2_PLATFORM_PERSISTENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_POLICY_SESSION_FIRST", (void *)_cffi_const_TPM2_POLICY_SESSION_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_POLICY_SESSION_LAST", (void *)_cffi_const_TPM2_POLICY_SESSION_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PRIVATE_VENDOR_SPECIFIC_BYTES", (void *)_cffi_const_TPM2_PRIVATE_VENDOR_SPECIFIC_BYTES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PS_AUTHENTICATION", (void *)_cffi_const_TPM2_PS_AUTHENTICATION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PS_CELL_PHONE", (void *)_cffi_const_TPM2_PS_CELL_PHONE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PS_EMBEDDED", (void *)_cffi_const_TPM2_PS_EMBEDDED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PS_HARDCOPY", (void *)_cffi_const_TPM2_PS_HARDCOPY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PS_INFRASTRUCTURE", (void *)_cffi_const_TPM2_PS_INFRASTRUCTURE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PS_MAIN", (void *)_cffi_const_TPM2_PS_MAIN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PS_MULTI_TENANT", (void *)_cffi_const_TPM2_PS_MULTI_TENANT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PS_PC", (void *)_cffi_const_TPM2_PS_PC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PS_PDA", (void *)_cffi_const_TPM2_PS_PDA, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PS_PERIPHERAL", (void *)_cffi_const_TPM2_PS_PERIPHERAL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PS_SERVER", (void *)_cffi_const_TPM2_PS_SERVER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PS_STORAGE", (void *)_cffi_const_TPM2_PS_STORAGE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PS_TC", (void *)_cffi_const_TPM2_PS_TC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PS_TNC", (void *)_cffi_const_TPM2_PS_TNC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PS_TSS", (void *)_cffi_const_TPM2_PS_TSS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PS_VIRTUALIZATION", (void *)_cffi_const_TPM2_PS_VIRTUALIZATION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_ACTIVE_SESSIONS_MAX", (void *)_cffi_const_TPM2_PT_ACTIVE_SESSIONS_MAX, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_ALGORITHM_SET", (void *)_cffi_const_TPM2_PT_ALGORITHM_SET, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_AUDIT_COUNTER_0", (void *)_cffi_const_TPM2_PT_AUDIT_COUNTER_0, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_AUDIT_COUNTER_1", (void *)_cffi_const_TPM2_PT_AUDIT_COUNTER_1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_CLOCK_UPDATE", (void *)_cffi_const_TPM2_PT_CLOCK_UPDATE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_CONTEXT_GAP_MAX", (void *)_cffi_const_TPM2_PT_CONTEXT_GAP_MAX, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_CONTEXT_HASH", (void *)_cffi_const_TPM2_PT_CONTEXT_HASH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_CONTEXT_SYM", (void *)_cffi_const_TPM2_PT_CONTEXT_SYM, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_CONTEXT_SYM_SIZE", (void *)_cffi_const_TPM2_PT_CONTEXT_SYM_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_DAY_OF_YEAR", (void *)_cffi_const_TPM2_PT_DAY_OF_YEAR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_FAMILY_INDICATOR", (void *)_cffi_const_TPM2_PT_FAMILY_INDICATOR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_FIRMWARE_VERSION_1", (void *)_cffi_const_TPM2_PT_FIRMWARE_VERSION_1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_FIRMWARE_VERSION_2", (void *)_cffi_const_TPM2_PT_FIRMWARE_VERSION_2, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_FIXED", (void *)_cffi_const_TPM2_PT_FIXED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_GROUP", (void *)_cffi_const_TPM2_PT_GROUP, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_HR_ACTIVE", (void *)_cffi_const_TPM2_PT_HR_ACTIVE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_HR_ACTIVE_AVAIL", (void *)_cffi_const_TPM2_PT_HR_ACTIVE_AVAIL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_HR_LOADED", (void *)_cffi_const_TPM2_PT_HR_LOADED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_HR_LOADED_AVAIL", (void *)_cffi_const_TPM2_PT_HR_LOADED_AVAIL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_HR_LOADED_MIN", (void *)_cffi_const_TPM2_PT_HR_LOADED_MIN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_HR_NV_INDEX", (void *)_cffi_const_TPM2_PT_HR_NV_INDEX, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_HR_PERSISTENT", (void *)_cffi_const_TPM2_PT_HR_PERSISTENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_HR_PERSISTENT_AVAIL", (void *)_cffi_const_TPM2_PT_HR_PERSISTENT_AVAIL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_HR_PERSISTENT_MIN", (void *)_cffi_const_TPM2_PT_HR_PERSISTENT_MIN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_HR_TRANSIENT_AVAIL", (void *)_cffi_const_TPM2_PT_HR_TRANSIENT_AVAIL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_HR_TRANSIENT_MIN", (void *)_cffi_const_TPM2_PT_HR_TRANSIENT_MIN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_INPUT_BUFFER", (void *)_cffi_const_TPM2_PT_INPUT_BUFFER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_LEVEL", (void *)_cffi_const_TPM2_PT_LEVEL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_LIBRARY_COMMANDS", (void *)_cffi_const_TPM2_PT_LIBRARY_COMMANDS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_LOADED_CURVES", (void *)_cffi_const_TPM2_PT_LOADED_CURVES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_LOCKOUT_COUNTER", (void *)_cffi_const_TPM2_PT_LOCKOUT_COUNTER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_LOCKOUT_INTERVAL", (void *)_cffi_const_TPM2_PT_LOCKOUT_INTERVAL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_LOCKOUT_RECOVERY", (void *)_cffi_const_TPM2_PT_LOCKOUT_RECOVERY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_MANUFACTURER", (void *)_cffi_const_TPM2_PT_MANUFACTURER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_MAX_AUTH_FAIL", (void *)_cffi_const_TPM2_PT_MAX_AUTH_FAIL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_MAX_CAP_BUFFER", (void *)_cffi_const_TPM2_PT_MAX_CAP_BUFFER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_MAX_COMMAND_SIZE", (void *)_cffi_const_TPM2_PT_MAX_COMMAND_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_MAX_DIGEST", (void *)_cffi_const_TPM2_PT_MAX_DIGEST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_MAX_OBJECT_CONTEXT", (void *)_cffi_const_TPM2_PT_MAX_OBJECT_CONTEXT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_MAX_RESPONSE_SIZE", (void *)_cffi_const_TPM2_PT_MAX_RESPONSE_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_MAX_SESSION_CONTEXT", (void *)_cffi_const_TPM2_PT_MAX_SESSION_CONTEXT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_MEMORY", (void *)_cffi_const_TPM2_PT_MEMORY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_MODES", (void *)_cffi_const_TPM2_PT_MODES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_NONE", (void *)_cffi_const_TPM2_PT_NONE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_NV_BUFFER_MAX", (void *)_cffi_const_TPM2_PT_NV_BUFFER_MAX, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_NV_COUNTERS", (void *)_cffi_const_TPM2_PT_NV_COUNTERS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_NV_COUNTERS_AVAIL", (void *)_cffi_const_TPM2_PT_NV_COUNTERS_AVAIL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_NV_COUNTERS_MAX", (void *)_cffi_const_TPM2_PT_NV_COUNTERS_MAX, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_NV_INDEX_MAX", (void *)_cffi_const_TPM2_PT_NV_INDEX_MAX, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_NV_WRITE_RECOVERY", (void *)_cffi_const_TPM2_PT_NV_WRITE_RECOVERY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_ORDERLY_COUNT", (void *)_cffi_const_TPM2_PT_ORDERLY_COUNT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_AUTH", (void *)_cffi_const_TPM2_PT_PCR_AUTH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_COUNT", (void *)_cffi_const_TPM2_PT_PCR_COUNT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_DRTM_RESET", (void *)_cffi_const_TPM2_PT_PCR_DRTM_RESET, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_EXTEND_L0", (void *)_cffi_const_TPM2_PT_PCR_EXTEND_L0, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_EXTEND_L1", (void *)_cffi_const_TPM2_PT_PCR_EXTEND_L1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_EXTEND_L2", (void *)_cffi_const_TPM2_PT_PCR_EXTEND_L2, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_EXTEND_L3", (void *)_cffi_const_TPM2_PT_PCR_EXTEND_L3, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_EXTEND_L4", (void *)_cffi_const_TPM2_PT_PCR_EXTEND_L4, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_NO_INCREMENT", (void *)_cffi_const_TPM2_PT_PCR_NO_INCREMENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_POLICY", (void *)_cffi_const_TPM2_PT_PCR_POLICY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_RESET_L0", (void *)_cffi_const_TPM2_PT_PCR_RESET_L0, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_RESET_L1", (void *)_cffi_const_TPM2_PT_PCR_RESET_L1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_RESET_L2", (void *)_cffi_const_TPM2_PT_PCR_RESET_L2, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_RESET_L3", (void *)_cffi_const_TPM2_PT_PCR_RESET_L3, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_RESET_L4", (void *)_cffi_const_TPM2_PT_PCR_RESET_L4, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_SAVE", (void *)_cffi_const_TPM2_PT_PCR_SAVE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PCR_SELECT_MIN", (void *)_cffi_const_TPM2_PT_PCR_SELECT_MIN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PERMANENT", (void *)_cffi_const_TPM2_PT_PERMANENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PS_DAY_OF_YEAR", (void *)_cffi_const_TPM2_PT_PS_DAY_OF_YEAR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PS_FAMILY_INDICATOR", (void *)_cffi_const_TPM2_PT_PS_FAMILY_INDICATOR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PS_LEVEL", (void *)_cffi_const_TPM2_PT_PS_LEVEL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PS_REVISION", (void *)_cffi_const_TPM2_PT_PS_REVISION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_PS_YEAR", (void *)_cffi_const_TPM2_PT_PS_YEAR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_REVISION", (void *)_cffi_const_TPM2_PT_REVISION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_SPLIT_MAX", (void *)_cffi_const_TPM2_PT_SPLIT_MAX, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_STARTUP_CLEAR", (void *)_cffi_const_TPM2_PT_STARTUP_CLEAR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_TOTAL_COMMANDS", (void *)_cffi_const_TPM2_PT_TOTAL_COMMANDS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_TPM2_PCR_FIRST", (void *)_cffi_const_TPM2_PT_TPM2_PCR_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_TPM2_PCR_LAST", (void *)_cffi_const_TPM2_PT_TPM2_PCR_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_VAR", (void *)_cffi_const_TPM2_PT_VAR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_VENDOR_COMMANDS", (void *)_cffi_const_TPM2_PT_VENDOR_COMMANDS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_VENDOR_STRING_1", (void *)_cffi_const_TPM2_PT_VENDOR_STRING_1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_VENDOR_STRING_2", (void *)_cffi_const_TPM2_PT_VENDOR_STRING_2, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_VENDOR_STRING_3", (void *)_cffi_const_TPM2_PT_VENDOR_STRING_3, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_VENDOR_STRING_4", (void *)_cffi_const_TPM2_PT_VENDOR_STRING_4, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_VENDOR_TPM_TYPE", (void *)_cffi_const_TPM2_PT_VENDOR_TPM_TYPE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_PT_YEAR", (void *)_cffi_const_TPM2_PT_YEAR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_1", (void *)_cffi_const_TPM2_RC_1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_2", (void *)_cffi_const_TPM2_RC_2, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_3", (void *)_cffi_const_TPM2_RC_3, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_4", (void *)_cffi_const_TPM2_RC_4, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_5", (void *)_cffi_const_TPM2_RC_5, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_6", (void *)_cffi_const_TPM2_RC_6, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_7", (void *)_cffi_const_TPM2_RC_7, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_8", (void *)_cffi_const_TPM2_RC_8, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_9", (void *)_cffi_const_TPM2_RC_9, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_A", (void *)_cffi_const_TPM2_RC_A, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_ASYMMETRIC", (void *)_cffi_const_TPM2_RC_ASYMMETRIC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_ATTRIBUTES", (void *)_cffi_const_TPM2_RC_ATTRIBUTES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_AUTHSIZE", (void *)_cffi_const_TPM2_RC_AUTHSIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_AUTH_CONTEXT", (void *)_cffi_const_TPM2_RC_AUTH_CONTEXT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_AUTH_FAIL", (void *)_cffi_const_TPM2_RC_AUTH_FAIL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_AUTH_MISSING", (void *)_cffi_const_TPM2_RC_AUTH_MISSING, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_AUTH_TYPE", (void *)_cffi_const_TPM2_RC_AUTH_TYPE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_AUTH_UNAVAILABLE", (void *)_cffi_const_TPM2_RC_AUTH_UNAVAILABLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_B", (void *)_cffi_const_TPM2_RC_B, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_BAD_AUTH", (void *)_cffi_const_TPM2_RC_BAD_AUTH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_BAD_CONTEXT", (void *)_cffi_const_TPM2_RC_BAD_CONTEXT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_BAD_TAG", (void *)_cffi_const_TPM2_RC_BAD_TAG, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_BINDING", (void *)_cffi_const_TPM2_RC_BINDING, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_C", (void *)_cffi_const_TPM2_RC_C, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_CANCELED", (void *)_cffi_const_TPM2_RC_CANCELED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_COMMAND_CODE", (void *)_cffi_const_TPM2_RC_COMMAND_CODE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_COMMAND_SIZE", (void *)_cffi_const_TPM2_RC_COMMAND_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_CONTEXT_GAP", (void *)_cffi_const_TPM2_RC_CONTEXT_GAP, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_CPHASH", (void *)_cffi_const_TPM2_RC_CPHASH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_CURVE", (void *)_cffi_const_TPM2_RC_CURVE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_D", (void *)_cffi_const_TPM2_RC_D, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_DISABLED", (void *)_cffi_const_TPM2_RC_DISABLED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_E", (void *)_cffi_const_TPM2_RC_E, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_ECC_POINT", (void *)_cffi_const_TPM2_RC_ECC_POINT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_EXCLUSIVE", (void *)_cffi_const_TPM2_RC_EXCLUSIVE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_EXPIRED", (void *)_cffi_const_TPM2_RC_EXPIRED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_F", (void *)_cffi_const_TPM2_RC_F, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_FAILURE", (void *)_cffi_const_TPM2_RC_FAILURE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_FMT1", (void *)_cffi_const_TPM2_RC_FMT1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_H", (void *)_cffi_const_TPM2_RC_H, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_HANDLE", (void *)_cffi_const_TPM2_RC_HANDLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_HASH", (void *)_cffi_const_TPM2_RC_HASH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_HIERARCHY", (void *)_cffi_const_TPM2_RC_HIERARCHY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_HMAC", (void *)_cffi_const_TPM2_RC_HMAC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_INITIALIZE", (void *)_cffi_const_TPM2_RC_INITIALIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_INSUFFICIENT", (void *)_cffi_const_TPM2_RC_INSUFFICIENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_INTEGRITY", (void *)_cffi_const_TPM2_RC_INTEGRITY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_KDF", (void *)_cffi_const_TPM2_RC_KDF, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_KEY", (void *)_cffi_const_TPM2_RC_KEY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_KEY_SIZE", (void *)_cffi_const_TPM2_RC_KEY_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_LOCALITY", (void *)_cffi_const_TPM2_RC_LOCALITY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_LOCKOUT", (void *)_cffi_const_TPM2_RC_LOCKOUT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_MAX_FM0", (void *)_cffi_const_TPM2_RC_MAX_FM0, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_MEMORY", (void *)_cffi_const_TPM2_RC_MEMORY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_MGF", (void *)_cffi_const_TPM2_RC_MGF, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_MODE", (void *)_cffi_const_TPM2_RC_MODE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_NEEDS_TEST", (void *)_cffi_const_TPM2_RC_NEEDS_TEST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_NONCE", (void *)_cffi_const_TPM2_RC_NONCE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_NOT_USED", (void *)_cffi_const_TPM2_RC_NOT_USED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_NO_RESULT", (void *)_cffi_const_TPM2_RC_NO_RESULT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_NV_AUTHORIZATION", (void *)_cffi_const_TPM2_RC_NV_AUTHORIZATION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_NV_DEFINED", (void *)_cffi_const_TPM2_RC_NV_DEFINED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_NV_LOCKED", (void *)_cffi_const_TPM2_RC_NV_LOCKED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_NV_RANGE", (void *)_cffi_const_TPM2_RC_NV_RANGE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_NV_RATE", (void *)_cffi_const_TPM2_RC_NV_RATE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_NV_SIZE", (void *)_cffi_const_TPM2_RC_NV_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_NV_SPACE", (void *)_cffi_const_TPM2_RC_NV_SPACE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_NV_UNAVAILABLE", (void *)_cffi_const_TPM2_RC_NV_UNAVAILABLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_NV_UNINITIALIZED", (void *)_cffi_const_TPM2_RC_NV_UNINITIALIZED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_N_MASK", (void *)_cffi_const_TPM2_RC_N_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_OBJECT_HANDLES", (void *)_cffi_const_TPM2_RC_OBJECT_HANDLES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_OBJECT_MEMORY", (void *)_cffi_const_TPM2_RC_OBJECT_MEMORY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_P", (void *)_cffi_const_TPM2_RC_P, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_PARENT", (void *)_cffi_const_TPM2_RC_PARENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_PCR", (void *)_cffi_const_TPM2_RC_PCR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_PCR_CHANGED", (void *)_cffi_const_TPM2_RC_PCR_CHANGED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_POLICY", (void *)_cffi_const_TPM2_RC_POLICY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_POLICY_CC", (void *)_cffi_const_TPM2_RC_POLICY_CC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_POLICY_FAIL", (void *)_cffi_const_TPM2_RC_POLICY_FAIL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_PP", (void *)_cffi_const_TPM2_RC_PP, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_PRIVATE", (void *)_cffi_const_TPM2_RC_PRIVATE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_RANGE", (void *)_cffi_const_TPM2_RC_RANGE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_REBOOT", (void *)_cffi_const_TPM2_RC_REBOOT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_REFERENCE_H0", (void *)_cffi_const_TPM2_RC_REFERENCE_H0, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_REFERENCE_H1", (void *)_cffi_const_TPM2_RC_REFERENCE_H1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_REFERENCE_H2", (void *)_cffi_const_TPM2_RC_REFERENCE_H2, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_REFERENCE_H3", (void *)_cffi_const_TPM2_RC_REFERENCE_H3, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_REFERENCE_H4", (void *)_cffi_const_TPM2_RC_REFERENCE_H4, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_REFERENCE_H5", (void *)_cffi_const_TPM2_RC_REFERENCE_H5, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_REFERENCE_H6", (void *)_cffi_const_TPM2_RC_REFERENCE_H6, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_REFERENCE_S0", (void *)_cffi_const_TPM2_RC_REFERENCE_S0, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_REFERENCE_S1", (void *)_cffi_const_TPM2_RC_REFERENCE_S1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_REFERENCE_S2", (void *)_cffi_const_TPM2_RC_REFERENCE_S2, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_REFERENCE_S3", (void *)_cffi_const_TPM2_RC_REFERENCE_S3, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_REFERENCE_S4", (void *)_cffi_const_TPM2_RC_REFERENCE_S4, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_REFERENCE_S5", (void *)_cffi_const_TPM2_RC_REFERENCE_S5, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_REFERENCE_S6", (void *)_cffi_const_TPM2_RC_REFERENCE_S6, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_RESERVED_BITS", (void *)_cffi_const_TPM2_RC_RESERVED_BITS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_RETRY", (void *)_cffi_const_TPM2_RC_RETRY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_S", (void *)_cffi_const_TPM2_RC_S, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_SCHEME", (void *)_cffi_const_TPM2_RC_SCHEME, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_SELECTOR", (void *)_cffi_const_TPM2_RC_SELECTOR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_SENSITIVE", (void *)_cffi_const_TPM2_RC_SENSITIVE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_SEQUENCE", (void *)_cffi_const_TPM2_RC_SEQUENCE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_SESSION_HANDLES", (void *)_cffi_const_TPM2_RC_SESSION_HANDLES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_SESSION_MEMORY", (void *)_cffi_const_TPM2_RC_SESSION_MEMORY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_SIGNATURE", (void *)_cffi_const_TPM2_RC_SIGNATURE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_SIZE", (void *)_cffi_const_TPM2_RC_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_SUCCESS", (void *)_cffi_const_TPM2_RC_SUCCESS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_SYMMETRIC", (void *)_cffi_const_TPM2_RC_SYMMETRIC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_TAG", (void *)_cffi_const_TPM2_RC_TAG, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_TESTING", (void *)_cffi_const_TPM2_RC_TESTING, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_TICKET", (void *)_cffi_const_TPM2_RC_TICKET, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_TOO_MANY_CONTEXTS", (void *)_cffi_const_TPM2_RC_TOO_MANY_CONTEXTS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_TYPE", (void *)_cffi_const_TPM2_RC_TYPE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_UNBALANCED", (void *)_cffi_const_TPM2_RC_UNBALANCED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_UPGRADE", (void *)_cffi_const_TPM2_RC_UPGRADE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_VALUE", (void *)_cffi_const_TPM2_RC_VALUE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_VER1", (void *)_cffi_const_TPM2_RC_VER1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_WARN", (void *)_cffi_const_TPM2_RC_WARN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RC_YIELDED", (void *)_cffi_const_TPM2_RC_YIELDED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ACT_0", (void *)_cffi_const_TPM2_RH_ACT_0, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ACT_1", (void *)_cffi_const_TPM2_RH_ACT_1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ACT_2", (void *)_cffi_const_TPM2_RH_ACT_2, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ACT_3", (void *)_cffi_const_TPM2_RH_ACT_3, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ACT_4", (void *)_cffi_const_TPM2_RH_ACT_4, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ACT_5", (void *)_cffi_const_TPM2_RH_ACT_5, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ACT_6", (void *)_cffi_const_TPM2_RH_ACT_6, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ACT_7", (void *)_cffi_const_TPM2_RH_ACT_7, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ACT_8", (void *)_cffi_const_TPM2_RH_ACT_8, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ACT_9", (void *)_cffi_const_TPM2_RH_ACT_9, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ACT_A", (void *)_cffi_const_TPM2_RH_ACT_A, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ACT_B", (void *)_cffi_const_TPM2_RH_ACT_B, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ACT_C", (void *)_cffi_const_TPM2_RH_ACT_C, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ACT_D", (void *)_cffi_const_TPM2_RH_ACT_D, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ACT_E", (void *)_cffi_const_TPM2_RH_ACT_E, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ACT_F", (void *)_cffi_const_TPM2_RH_ACT_F, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ADMIN", (void *)_cffi_const_TPM2_RH_ADMIN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_AUTH_00", (void *)_cffi_const_TPM2_RH_AUTH_00, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_AUTH_FF", (void *)_cffi_const_TPM2_RH_AUTH_FF, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_EK", (void *)_cffi_const_TPM2_RH_EK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_ENDORSEMENT", (void *)_cffi_const_TPM2_RH_ENDORSEMENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_FIRST", (void *)_cffi_const_TPM2_RH_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_LAST", (void *)_cffi_const_TPM2_RH_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_LOCKOUT", (void *)_cffi_const_TPM2_RH_LOCKOUT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_NULL", (void *)_cffi_const_TPM2_RH_NULL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_OPERATOR", (void *)_cffi_const_TPM2_RH_OPERATOR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_OWNER", (void *)_cffi_const_TPM2_RH_OWNER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_PLATFORM", (void *)_cffi_const_TPM2_RH_PLATFORM, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_PLATFORM_NV", (void *)_cffi_const_TPM2_RH_PLATFORM_NV, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_PW", (void *)_cffi_const_TPM2_RH_PW, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_REVOKE", (void *)_cffi_const_TPM2_RH_REVOKE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_SRK", (void *)_cffi_const_TPM2_RH_SRK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_TRANSPORT", (void *)_cffi_const_TPM2_RH_TRANSPORT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RH_UNASSIGNED", (void *)_cffi_const_TPM2_RH_UNASSIGNED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_RS_PW", (void *)_cffi_const_TPM2_RS_PW, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_SE_HMAC", (void *)_cffi_const_TPM2_SE_HMAC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_SE_POLICY", (void *)_cffi_const_TPM2_SE_POLICY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_SE_TRIAL", (void *)_cffi_const_TPM2_SE_TRIAL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_SHA1_DIGEST_SIZE", (void *)_cffi_const_TPM2_SHA1_DIGEST_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_SHA256_DIGEST_SIZE", (void *)_cffi_const_TPM2_SHA256_DIGEST_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_SHA384_DIGEST_SIZE", (void *)_cffi_const_TPM2_SHA384_DIGEST_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_SHA512_DIGEST_SIZE", (void *)_cffi_const_TPM2_SHA512_DIGEST_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_SHA_DIGEST_SIZE", (void *)_cffi_const_TPM2_SHA_DIGEST_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_SM3_256_DIGEST_SIZE", (void *)_cffi_const_TPM2_SM3_256_DIGEST_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_SPEC_DAY_OF_YEAR", (void *)_cffi_const_TPM2_SPEC_DAY_OF_YEAR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_SPEC_FAMILY", (void *)_cffi_const_TPM2_SPEC_FAMILY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_SPEC_LEVEL", (void *)_cffi_const_TPM2_SPEC_LEVEL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_SPEC_VERSION", (void *)_cffi_const_TPM2_SPEC_VERSION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_SPEC_YEAR", (void *)_cffi_const_TPM2_SPEC_YEAR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_ATTEST_CERTIFY", (void *)_cffi_const_TPM2_ST_ATTEST_CERTIFY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_ATTEST_COMMAND_AUDIT", (void *)_cffi_const_TPM2_ST_ATTEST_COMMAND_AUDIT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_ATTEST_CREATION", (void *)_cffi_const_TPM2_ST_ATTEST_CREATION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_ATTEST_NV", (void *)_cffi_const_TPM2_ST_ATTEST_NV, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_ATTEST_QUOTE", (void *)_cffi_const_TPM2_ST_ATTEST_QUOTE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_ATTEST_SESSION_AUDIT", (void *)_cffi_const_TPM2_ST_ATTEST_SESSION_AUDIT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_ATTEST_TIME", (void *)_cffi_const_TPM2_ST_ATTEST_TIME, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_AUTH_SECRET", (void *)_cffi_const_TPM2_ST_AUTH_SECRET, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_AUTH_SIGNED", (void *)_cffi_const_TPM2_ST_AUTH_SIGNED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_CREATION", (void *)_cffi_const_TPM2_ST_CREATION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_FU_MANIFEST", (void *)_cffi_const_TPM2_ST_FU_MANIFEST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_HASHCHECK", (void *)_cffi_const_TPM2_ST_HASHCHECK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_NO_SESSIONS", (void *)_cffi_const_TPM2_ST_NO_SESSIONS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_NULL", (void *)_cffi_const_TPM2_ST_NULL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_RESERVED1", (void *)_cffi_const_TPM2_ST_RESERVED1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_RESERVED2", (void *)_cffi_const_TPM2_ST_RESERVED2, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_RESERVED3", (void *)_cffi_const_TPM2_ST_RESERVED3, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_RSP_COMMAND", (void *)_cffi_const_TPM2_ST_RSP_COMMAND, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_SESSIONS", (void *)_cffi_const_TPM2_ST_SESSIONS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_ST_VERIFIED", (void *)_cffi_const_TPM2_ST_VERIFIED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_SU_CLEAR", (void *)_cffi_const_TPM2_SU_CLEAR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_SU_STATE", (void *)_cffi_const_TPM2_SU_STATE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_TRANSIENT_FIRST", (void *)_cffi_const_TPM2_TRANSIENT_FIRST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_TRANSIENT_LAST", (void *)_cffi_const_TPM2_TRANSIENT_LAST, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM2_YES", (void *)_cffi_const_TPM2_YES, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_ACT_PRESERVESIGNALED", (void *)_cffi_const_TPMA_ACT_PRESERVESIGNALED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_ACT_RESERVED_MASK", (void *)_cffi_const_TPMA_ACT_RESERVED_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_ACT_SIGNALED", (void *)_cffi_const_TPMA_ACT_SIGNALED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_ALGORITHM_ASYMMETRIC", (void *)_cffi_const_TPMA_ALGORITHM_ASYMMETRIC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_ALGORITHM_ENCRYPTING", (void *)_cffi_const_TPMA_ALGORITHM_ENCRYPTING, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_ALGORITHM_HASH", (void *)_cffi_const_TPMA_ALGORITHM_HASH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_ALGORITHM_METHOD", (void *)_cffi_const_TPMA_ALGORITHM_METHOD, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_ALGORITHM_OBJECT", (void *)_cffi_const_TPMA_ALGORITHM_OBJECT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_ALGORITHM_RESERVED1_MASK", (void *)_cffi_const_TPMA_ALGORITHM_RESERVED1_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_ALGORITHM_RESERVED2_MASK", (void *)_cffi_const_TPMA_ALGORITHM_RESERVED2_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_ALGORITHM_SIGNING", (void *)_cffi_const_TPMA_ALGORITHM_SIGNING, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_ALGORITHM_SYMMETRIC", (void *)_cffi_const_TPMA_ALGORITHM_SYMMETRIC, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_CC_CHANDLES_MASK", (void *)_cffi_const_TPMA_CC_CHANDLES_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_CC_CHANDLES_SHIFT", (void *)_cffi_const_TPMA_CC_CHANDLES_SHIFT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_CC_COMMANDINDEX_MASK", (void *)_cffi_const_TPMA_CC_COMMANDINDEX_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_CC_COMMANDINDEX_SHIFT", (void *)_cffi_const_TPMA_CC_COMMANDINDEX_SHIFT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_CC_EXTENSIVE", (void *)_cffi_const_TPMA_CC_EXTENSIVE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_CC_FLUSHED", (void *)_cffi_const_TPMA_CC_FLUSHED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_CC_NV", (void *)_cffi_const_TPMA_CC_NV, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_CC_RESERVED1_MASK", (void *)_cffi_const_TPMA_CC_RESERVED1_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_CC_RES_MASK", (void *)_cffi_const_TPMA_CC_RES_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_CC_RES_SHIFT", (void *)_cffi_const_TPMA_CC_RES_SHIFT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_CC_RHANDLE", (void *)_cffi_const_TPMA_CC_RHANDLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_CC_V", (void *)_cffi_const_TPMA_CC_V, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_LOCALITY_EXTENDED_MASK", (void *)_cffi_const_TPMA_LOCALITY_EXTENDED_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_LOCALITY_EXTENDED_SHIFT", (void *)_cffi_const_TPMA_LOCALITY_EXTENDED_SHIFT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_LOCALITY_TPM2_LOC_FOUR", (void *)_cffi_const_TPMA_LOCALITY_TPM2_LOC_FOUR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_LOCALITY_TPM2_LOC_ONE", (void *)_cffi_const_TPMA_LOCALITY_TPM2_LOC_ONE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_LOCALITY_TPM2_LOC_THREE", (void *)_cffi_const_TPMA_LOCALITY_TPM2_LOC_THREE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_LOCALITY_TPM2_LOC_TWO", (void *)_cffi_const_TPMA_LOCALITY_TPM2_LOC_TWO, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_LOCALITY_TPM2_LOC_ZERO", (void *)_cffi_const_TPMA_LOCALITY_TPM2_LOC_ZERO, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_MEMORY_OBJECTCOPIEDTORAM", (void *)_cffi_const_TPMA_MEMORY_OBJECTCOPIEDTORAM, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_MEMORY_RESERVED1_MASK", (void *)_cffi_const_TPMA_MEMORY_RESERVED1_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_MEMORY_SHAREDNV", (void *)_cffi_const_TPMA_MEMORY_SHAREDNV, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_MEMORY_SHAREDRAM", (void *)_cffi_const_TPMA_MEMORY_SHAREDRAM, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_MODES_FIPS_140_2", (void *)_cffi_const_TPMA_MODES_FIPS_140_2, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_MODES_RESERVED1_MASK", (void *)_cffi_const_TPMA_MODES_RESERVED1_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_AUTHREAD", (void *)_cffi_const_TPMA_NV_AUTHREAD, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_AUTHWRITE", (void *)_cffi_const_TPMA_NV_AUTHWRITE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_CLEAR_STCLEAR", (void *)_cffi_const_TPMA_NV_CLEAR_STCLEAR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_GLOBALLOCK", (void *)_cffi_const_TPMA_NV_GLOBALLOCK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_NO_DA", (void *)_cffi_const_TPMA_NV_NO_DA, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_ORDERLY", (void *)_cffi_const_TPMA_NV_ORDERLY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_OWNERREAD", (void *)_cffi_const_TPMA_NV_OWNERREAD, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_OWNERWRITE", (void *)_cffi_const_TPMA_NV_OWNERWRITE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_PLATFORMCREATE", (void *)_cffi_const_TPMA_NV_PLATFORMCREATE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_POLICYREAD", (void *)_cffi_const_TPMA_NV_POLICYREAD, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_POLICYWRITE", (void *)_cffi_const_TPMA_NV_POLICYWRITE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_POLICY_DELETE", (void *)_cffi_const_TPMA_NV_POLICY_DELETE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_PPREAD", (void *)_cffi_const_TPMA_NV_PPREAD, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_PPWRITE", (void *)_cffi_const_TPMA_NV_PPWRITE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_READLOCKED", (void *)_cffi_const_TPMA_NV_READLOCKED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_READ_STCLEAR", (void *)_cffi_const_TPMA_NV_READ_STCLEAR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_RESERVED1_MASK", (void *)_cffi_const_TPMA_NV_RESERVED1_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_RESERVED2_MASK", (void *)_cffi_const_TPMA_NV_RESERVED2_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_TPM2_NT_MASK", (void *)_cffi_const_TPMA_NV_TPM2_NT_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_TPM2_NT_SHIFT", (void *)_cffi_const_TPMA_NV_TPM2_NT_SHIFT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_WRITEALL", (void *)_cffi_const_TPMA_NV_WRITEALL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_WRITEDEFINE", (void *)_cffi_const_TPMA_NV_WRITEDEFINE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_WRITELOCKED", (void *)_cffi_const_TPMA_NV_WRITELOCKED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_WRITE_STCLEAR", (void *)_cffi_const_TPMA_NV_WRITE_STCLEAR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_NV_WRITTEN", (void *)_cffi_const_TPMA_NV_WRITTEN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_ADMINWITHPOLICY", (void *)_cffi_const_TPMA_OBJECT_ADMINWITHPOLICY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_DECRYPT", (void *)_cffi_const_TPMA_OBJECT_DECRYPT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_ENCRYPTEDDUPLICATION", (void *)_cffi_const_TPMA_OBJECT_ENCRYPTEDDUPLICATION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_FIXEDPARENT", (void *)_cffi_const_TPMA_OBJECT_FIXEDPARENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_FIXEDTPM", (void *)_cffi_const_TPMA_OBJECT_FIXEDTPM, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_NODA", (void *)_cffi_const_TPMA_OBJECT_NODA, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_RESERVED1_MASK", (void *)_cffi_const_TPMA_OBJECT_RESERVED1_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_RESERVED2_MASK", (void *)_cffi_const_TPMA_OBJECT_RESERVED2_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_RESERVED3_MASK", (void *)_cffi_const_TPMA_OBJECT_RESERVED3_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_RESERVED4_MASK", (void *)_cffi_const_TPMA_OBJECT_RESERVED4_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_RESERVED5_MASK", (void *)_cffi_const_TPMA_OBJECT_RESERVED5_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_RESTRICTED", (void *)_cffi_const_TPMA_OBJECT_RESTRICTED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_SENSITIVEDATAORIGIN", (void *)_cffi_const_TPMA_OBJECT_SENSITIVEDATAORIGIN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_SIGN_ENCRYPT", (void *)_cffi_const_TPMA_OBJECT_SIGN_ENCRYPT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_STCLEAR", (void *)_cffi_const_TPMA_OBJECT_STCLEAR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_USERWITHAUTH", (void *)_cffi_const_TPMA_OBJECT_USERWITHAUTH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_OBJECT_X509SIGN", (void *)_cffi_const_TPMA_OBJECT_X509SIGN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_PERMANENT_DISABLECLEAR", (void *)_cffi_const_TPMA_PERMANENT_DISABLECLEAR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_PERMANENT_ENDORSEMENTAUTHSET", (void *)_cffi_const_TPMA_PERMANENT_ENDORSEMENTAUTHSET, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_PERMANENT_INLOCKOUT", (void *)_cffi_const_TPMA_PERMANENT_INLOCKOUT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_PERMANENT_LOCKOUTAUTHSET", (void *)_cffi_const_TPMA_PERMANENT_LOCKOUTAUTHSET, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_PERMANENT_OWNERAUTHSET", (void *)_cffi_const_TPMA_PERMANENT_OWNERAUTHSET, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_PERMANENT_RESERVED1_MASK", (void *)_cffi_const_TPMA_PERMANENT_RESERVED1_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_PERMANENT_RESERVED2_MASK", (void *)_cffi_const_TPMA_PERMANENT_RESERVED2_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_PERMANENT_TPMGENERATEDEPS", (void *)_cffi_const_TPMA_PERMANENT_TPMGENERATEDEPS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_SESSION_AUDIT", (void *)_cffi_const_TPMA_SESSION_AUDIT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_SESSION_AUDITEXCLUSIVE", (void *)_cffi_const_TPMA_SESSION_AUDITEXCLUSIVE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_SESSION_AUDITRESET", (void *)_cffi_const_TPMA_SESSION_AUDITRESET, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_SESSION_CONTINUESESSION", (void *)_cffi_const_TPMA_SESSION_CONTINUESESSION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_SESSION_DECRYPT", (void *)_cffi_const_TPMA_SESSION_DECRYPT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_SESSION_ENCRYPT", (void *)_cffi_const_TPMA_SESSION_ENCRYPT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_SESSION_RESERVED1_MASK", (void *)_cffi_const_TPMA_SESSION_RESERVED1_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_STARTUP_CLEAR_EHENABLE", (void *)_cffi_const_TPMA_STARTUP_CLEAR_EHENABLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_STARTUP_CLEAR_ORDERLY", (void *)_cffi_const_TPMA_STARTUP_CLEAR_ORDERLY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_STARTUP_CLEAR_PHENABLE", (void *)_cffi_const_TPMA_STARTUP_CLEAR_PHENABLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_STARTUP_CLEAR_PHENABLENV", (void *)_cffi_const_TPMA_STARTUP_CLEAR_PHENABLENV, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_STARTUP_CLEAR_RESERVED1_MASK", (void *)_cffi_const_TPMA_STARTUP_CLEAR_RESERVED1_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_STARTUP_CLEAR_SHENABLE", (void *)_cffi_const_TPMA_STARTUP_CLEAR_SHENABLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_X509_KEY_USAGE_CRLSIGN", (void *)_cffi_const_TPMA_X509_KEY_USAGE_CRLSIGN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_X509_KEY_USAGE_DATAENCIPHERMENT", (void *)_cffi_const_TPMA_X509_KEY_USAGE_DATAENCIPHERMENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_X509_KEY_USAGE_DECIPHER_ONLY", (void *)_cffi_const_TPMA_X509_KEY_USAGE_DECIPHER_ONLY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_X509_KEY_USAGE_DIGITALSIGNATURE", (void *)_cffi_const_TPMA_X509_KEY_USAGE_DIGITALSIGNATURE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_X509_KEY_USAGE_ENCIPHER_ONLY", (void *)_cffi_const_TPMA_X509_KEY_USAGE_ENCIPHER_ONLY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_X509_KEY_USAGE_KEYAGREEMENT", (void *)_cffi_const_TPMA_X509_KEY_USAGE_KEYAGREEMENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_X509_KEY_USAGE_KEYCERTSIGN", (void *)_cffi_const_TPMA_X509_KEY_USAGE_KEYCERTSIGN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_X509_KEY_USAGE_KEYENCIPHERMENT", (void *)_cffi_const_TPMA_X509_KEY_USAGE_KEYENCIPHERMENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_X509_KEY_USAGE_NONREPUDIATION", (void *)_cffi_const_TPMA_X509_KEY_USAGE_NONREPUDIATION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMA_X509_KEY_USAGE_RESERVED_MASK", (void *)_cffi_const_TPMA_X509_KEY_USAGE_RESERVED_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMI_DH_SAVED_SEQUENCE", (void *)_cffi_const_TPMI_DH_SAVED_SEQUENCE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMI_DH_SAVED_TRANSIENT", (void *)_cffi_const_TPMI_DH_SAVED_TRANSIENT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPMI_DH_SAVED_TRANSIENT_CLEAR", (void *)_cffi_const_TPMI_DH_SAVED_TRANSIENT_CLEAR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM_AE_NONE", (void *)_cffi_const_TPM_AE_NONE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM_AT_ANY", (void *)_cffi_const_TPM_AT_ANY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM_AT_ERROR", (void *)_cffi_const_TPM_AT_ERROR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM_AT_PV1", (void *)_cffi_const_TPM_AT_PV1, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TPM_AT_VEND", (void *)_cffi_const_TPM_AT_VEND, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_ABI_MISMATCH", (void *)_cffi_const_TSS2_BASE_RC_ABI_MISMATCH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_ALREADY_PROVISIONED", (void *)_cffi_const_TSS2_BASE_RC_ALREADY_PROVISIONED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_AUTHORIZATION_FAILED", (void *)_cffi_const_TSS2_BASE_RC_AUTHORIZATION_FAILED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_AUTHORIZATION_UNKNOWN", (void *)_cffi_const_TSS2_BASE_RC_AUTHORIZATION_UNKNOWN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_BAD_CONTEXT", (void *)_cffi_const_TSS2_BASE_RC_BAD_CONTEXT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_BAD_KEY", (void *)_cffi_const_TSS2_BASE_RC_BAD_KEY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_BAD_PATH", (void *)_cffi_const_TSS2_BASE_RC_BAD_PATH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_BAD_REFERENCE", (void *)_cffi_const_TSS2_BASE_RC_BAD_REFERENCE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_BAD_SEQUENCE", (void *)_cffi_const_TSS2_BASE_RC_BAD_SEQUENCE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_BAD_SIZE", (void *)_cffi_const_TSS2_BASE_RC_BAD_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_BAD_TCTI_STRUCTURE", (void *)_cffi_const_TSS2_BASE_RC_BAD_TCTI_STRUCTURE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_BAD_TEMPLATE", (void *)_cffi_const_TSS2_BASE_RC_BAD_TEMPLATE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_BAD_TR", (void *)_cffi_const_TSS2_BASE_RC_BAD_TR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_BAD_VALUE", (void *)_cffi_const_TSS2_BASE_RC_BAD_VALUE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_CALLBACK_NULL", (void *)_cffi_const_TSS2_BASE_RC_CALLBACK_NULL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_GENERAL_FAILURE", (void *)_cffi_const_TSS2_BASE_RC_GENERAL_FAILURE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_HASH_MISMATCH", (void *)_cffi_const_TSS2_BASE_RC_HASH_MISMATCH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_INCOMPATIBLE_TCTI", (void *)_cffi_const_TSS2_BASE_RC_INCOMPATIBLE_TCTI, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_INSUFFICIENT_BUFFER", (void *)_cffi_const_TSS2_BASE_RC_INSUFFICIENT_BUFFER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_INSUFFICIENT_CONTEXT", (void *)_cffi_const_TSS2_BASE_RC_INSUFFICIENT_CONTEXT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_INSUFFICIENT_RESPONSE", (void *)_cffi_const_TSS2_BASE_RC_INSUFFICIENT_RESPONSE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_INVALID_SESSIONS", (void *)_cffi_const_TSS2_BASE_RC_INVALID_SESSIONS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_IO_ERROR", (void *)_cffi_const_TSS2_BASE_RC_IO_ERROR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_KEY_NOT_DUPLICABLE", (void *)_cffi_const_TSS2_BASE_RC_KEY_NOT_DUPLICABLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_KEY_NOT_FOUND", (void *)_cffi_const_TSS2_BASE_RC_KEY_NOT_FOUND, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_MALFORMED_RESPONSE", (void *)_cffi_const_TSS2_BASE_RC_MALFORMED_RESPONSE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_MEMORY", (void *)_cffi_const_TSS2_BASE_RC_MEMORY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_MULTIPLE_DECRYPT_SESSIONS", (void *)_cffi_const_TSS2_BASE_RC_MULTIPLE_DECRYPT_SESSIONS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_MULTIPLE_ENCRYPT_SESSIONS", (void *)_cffi_const_TSS2_BASE_RC_MULTIPLE_ENCRYPT_SESSIONS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NAME_ALREADY_EXISTS", (void *)_cffi_const_TSS2_BASE_RC_NAME_ALREADY_EXISTS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NOT_DELETABLE", (void *)_cffi_const_TSS2_BASE_RC_NOT_DELETABLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NOT_IMPLEMENTED", (void *)_cffi_const_TSS2_BASE_RC_NOT_IMPLEMENTED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NOT_PERMITTED", (void *)_cffi_const_TSS2_BASE_RC_NOT_PERMITTED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NOT_PROVISIONED", (void *)_cffi_const_TSS2_BASE_RC_NOT_PROVISIONED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NOT_SUPPORTED", (void *)_cffi_const_TSS2_BASE_RC_NOT_SUPPORTED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NO_CERT", (void *)_cffi_const_TSS2_BASE_RC_NO_CERT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NO_CONFIG", (void *)_cffi_const_TSS2_BASE_RC_NO_CONFIG, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NO_CONNECTION", (void *)_cffi_const_TSS2_BASE_RC_NO_CONNECTION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NO_DECRYPT_PARAM", (void *)_cffi_const_TSS2_BASE_RC_NO_DECRYPT_PARAM, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NO_ENCRYPT_PARAM", (void *)_cffi_const_TSS2_BASE_RC_NO_ENCRYPT_PARAM, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NO_HANDLE", (void *)_cffi_const_TSS2_BASE_RC_NO_HANDLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NO_PCR", (void *)_cffi_const_TSS2_BASE_RC_NO_PCR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NO_TPM", (void *)_cffi_const_TSS2_BASE_RC_NO_TPM, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NV_NOT_READABLE", (void *)_cffi_const_TSS2_BASE_RC_NV_NOT_READABLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NV_NOT_WRITEABLE", (void *)_cffi_const_TSS2_BASE_RC_NV_NOT_WRITEABLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NV_TOO_SMALL", (void *)_cffi_const_TSS2_BASE_RC_NV_TOO_SMALL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_NV_WRONG_TYPE", (void *)_cffi_const_TSS2_BASE_RC_NV_WRONG_TYPE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_PATH_ALREADY_EXISTS", (void *)_cffi_const_TSS2_BASE_RC_PATH_ALREADY_EXISTS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_PATH_NOT_FOUND", (void *)_cffi_const_TSS2_BASE_RC_PATH_NOT_FOUND, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_PCR_NOT_RESETTABLE", (void *)_cffi_const_TSS2_BASE_RC_PCR_NOT_RESETTABLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_POLICY_UNKNOWN", (void *)_cffi_const_TSS2_BASE_RC_POLICY_UNKNOWN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_RSP_AUTH_FAILED", (void *)_cffi_const_TSS2_BASE_RC_RSP_AUTH_FAILED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_SIGNATURE_VERIFICATION_FAILED", (void *)_cffi_const_TSS2_BASE_RC_SIGNATURE_VERIFICATION_FAILED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_BASE_RC_TRY_AGAIN", (void *)_cffi_const_TSS2_BASE_RC_TRY_AGAIN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESAPI_RC_LAYER", (void *)_cffi_const_TSS2_ESAPI_RC_LAYER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_ABI_MISMATCH", (void *)_cffi_const_TSS2_ESYS_RC_ABI_MISMATCH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_BAD_REFERENCE", (void *)_cffi_const_TSS2_ESYS_RC_BAD_REFERENCE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_BAD_SEQUENCE", (void *)_cffi_const_TSS2_ESYS_RC_BAD_SEQUENCE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_BAD_SIZE", (void *)_cffi_const_TSS2_ESYS_RC_BAD_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_BAD_TCTI_STRUCTURE", (void *)_cffi_const_TSS2_ESYS_RC_BAD_TCTI_STRUCTURE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_BAD_TR", (void *)_cffi_const_TSS2_ESYS_RC_BAD_TR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_BAD_VALUE", (void *)_cffi_const_TSS2_ESYS_RC_BAD_VALUE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_CALLBACK_NULL", (void *)_cffi_const_TSS2_ESYS_RC_CALLBACK_NULL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_GENERAL_FAILURE", (void *)_cffi_const_TSS2_ESYS_RC_GENERAL_FAILURE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_INCOMPATIBLE_TCTI", (void *)_cffi_const_TSS2_ESYS_RC_INCOMPATIBLE_TCTI, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_INSUFFICIENT_BUFFER", (void *)_cffi_const_TSS2_ESYS_RC_INSUFFICIENT_BUFFER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_INSUFFICIENT_CONTEXT", (void *)_cffi_const_TSS2_ESYS_RC_INSUFFICIENT_CONTEXT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_INSUFFICIENT_RESPONSE", (void *)_cffi_const_TSS2_ESYS_RC_INSUFFICIENT_RESPONSE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_INVALID_SESSIONS", (void *)_cffi_const_TSS2_ESYS_RC_INVALID_SESSIONS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_IO_ERROR", (void *)_cffi_const_TSS2_ESYS_RC_IO_ERROR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_MALFORMED_RESPONSE", (void *)_cffi_const_TSS2_ESYS_RC_MALFORMED_RESPONSE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_MEMORY", (void *)_cffi_const_TSS2_ESYS_RC_MEMORY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_MULTIPLE_DECRYPT_SESSIONS", (void *)_cffi_const_TSS2_ESYS_RC_MULTIPLE_DECRYPT_SESSIONS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_MULTIPLE_ENCRYPT_SESSIONS", (void *)_cffi_const_TSS2_ESYS_RC_MULTIPLE_ENCRYPT_SESSIONS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_NOT_IMPLEMENTED", (void *)_cffi_const_TSS2_ESYS_RC_NOT_IMPLEMENTED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_NOT_SUPPORTED", (void *)_cffi_const_TSS2_ESYS_RC_NOT_SUPPORTED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_NO_DECRYPT_PARAM", (void *)_cffi_const_TSS2_ESYS_RC_NO_DECRYPT_PARAM, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_NO_ENCRYPT_PARAM", (void *)_cffi_const_TSS2_ESYS_RC_NO_ENCRYPT_PARAM, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_RSP_AUTH_FAILED", (void *)_cffi_const_TSS2_ESYS_RC_RSP_AUTH_FAILED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_ESYS_RC_TRY_AGAIN", (void *)_cffi_const_TSS2_ESYS_RC_TRY_AGAIN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_ALREADY_PROVISIONED", (void *)_cffi_const_TSS2_FAPI_RC_ALREADY_PROVISIONED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_AUTHORIZATION_FAILED", (void *)_cffi_const_TSS2_FAPI_RC_AUTHORIZATION_FAILED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_AUTHORIZATION_UNKNOWN", (void *)_cffi_const_TSS2_FAPI_RC_AUTHORIZATION_UNKNOWN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_BAD_CONTEXT", (void *)_cffi_const_TSS2_FAPI_RC_BAD_CONTEXT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_BAD_KEY", (void *)_cffi_const_TSS2_FAPI_RC_BAD_KEY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_BAD_PATH", (void *)_cffi_const_TSS2_FAPI_RC_BAD_PATH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_BAD_REFERENCE", (void *)_cffi_const_TSS2_FAPI_RC_BAD_REFERENCE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_BAD_SEQUENCE", (void *)_cffi_const_TSS2_FAPI_RC_BAD_SEQUENCE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_BAD_TEMPLATE", (void *)_cffi_const_TSS2_FAPI_RC_BAD_TEMPLATE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_BAD_VALUE", (void *)_cffi_const_TSS2_FAPI_RC_BAD_VALUE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_GENERAL_FAILURE", (void *)_cffi_const_TSS2_FAPI_RC_GENERAL_FAILURE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_HASH_MISMATCH", (void *)_cffi_const_TSS2_FAPI_RC_HASH_MISMATCH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_IO_ERROR", (void *)_cffi_const_TSS2_FAPI_RC_IO_ERROR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_KEY_NOT_DUPLICABLE", (void *)_cffi_const_TSS2_FAPI_RC_KEY_NOT_DUPLICABLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_KEY_NOT_FOUND", (void *)_cffi_const_TSS2_FAPI_RC_KEY_NOT_FOUND, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_MEMORY", (void *)_cffi_const_TSS2_FAPI_RC_MEMORY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_NAME_ALREADY_EXISTS", (void *)_cffi_const_TSS2_FAPI_RC_NAME_ALREADY_EXISTS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_NOT_DELETABLE", (void *)_cffi_const_TSS2_FAPI_RC_NOT_DELETABLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_NOT_IMPLEMENTED", (void *)_cffi_const_TSS2_FAPI_RC_NOT_IMPLEMENTED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_NOT_PROVISIONED", (void *)_cffi_const_TSS2_FAPI_RC_NOT_PROVISIONED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_NO_CERT", (void *)_cffi_const_TSS2_FAPI_RC_NO_CERT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_NO_CONFIG", (void *)_cffi_const_TSS2_FAPI_RC_NO_CONFIG, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_NO_DECRYPT_PARAM", (void *)_cffi_const_TSS2_FAPI_RC_NO_DECRYPT_PARAM, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_NO_ENCRYPT_PARAM", (void *)_cffi_const_TSS2_FAPI_RC_NO_ENCRYPT_PARAM, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_NO_HANDLE", (void *)_cffi_const_TSS2_FAPI_RC_NO_HANDLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_NO_PCR", (void *)_cffi_const_TSS2_FAPI_RC_NO_PCR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_NO_TPM", (void *)_cffi_const_TSS2_FAPI_RC_NO_TPM, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_NULL_CALLBACK", (void *)_cffi_const_TSS2_FAPI_RC_NULL_CALLBACK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_NV_NOT_READABLE", (void *)_cffi_const_TSS2_FAPI_RC_NV_NOT_READABLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_NV_NOT_WRITEABLE", (void *)_cffi_const_TSS2_FAPI_RC_NV_NOT_WRITEABLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_NV_TOO_SMALL", (void *)_cffi_const_TSS2_FAPI_RC_NV_TOO_SMALL, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_NV_WRONG_TYPE", (void *)_cffi_const_TSS2_FAPI_RC_NV_WRONG_TYPE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_PATH_ALREADY_EXISTS", (void *)_cffi_const_TSS2_FAPI_RC_PATH_ALREADY_EXISTS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_PATH_NOT_FOUND", (void *)_cffi_const_TSS2_FAPI_RC_PATH_NOT_FOUND, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_PCR_NOT_RESETTABLE", (void *)_cffi_const_TSS2_FAPI_RC_PCR_NOT_RESETTABLE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_POLICY_UNKNOWN", (void *)_cffi_const_TSS2_FAPI_RC_POLICY_UNKNOWN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_SIGNATURE_VERIFICATION_FAILED", (void *)_cffi_const_TSS2_FAPI_RC_SIGNATURE_VERIFICATION_FAILED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FAPI_RC_TRY_AGAIN", (void *)_cffi_const_TSS2_FAPI_RC_TRY_AGAIN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_FEATURE_RC_LAYER", (void *)_cffi_const_TSS2_FEATURE_RC_LAYER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_LAYER_IMPLEMENTATION_SPECIFIC_OFFSET", (void *)_cffi_const_TSS2_LAYER_IMPLEMENTATION_SPECIFIC_OFFSET, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_LEVEL_IMPLEMENTATION_SPECIFIC_SHIFT", (void *)_cffi_const_TSS2_LEVEL_IMPLEMENTATION_SPECIFIC_SHIFT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_MU_RC_BAD_REFERENCE", (void *)_cffi_const_TSS2_MU_RC_BAD_REFERENCE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_MU_RC_BAD_SIZE", (void *)_cffi_const_TSS2_MU_RC_BAD_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_MU_RC_BAD_VALUE", (void *)_cffi_const_TSS2_MU_RC_BAD_VALUE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_MU_RC_GENERAL_FAILURE", (void *)_cffi_const_TSS2_MU_RC_GENERAL_FAILURE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_MU_RC_INSUFFICIENT_BUFFER", (void *)_cffi_const_TSS2_MU_RC_INSUFFICIENT_BUFFER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_MU_RC_LAYER", (void *)_cffi_const_TSS2_MU_RC_LAYER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_RC_LAYER_MASK", (void *)_cffi_const_TSS2_RC_LAYER_MASK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_RC_LAYER_SHIFT", (void *)_cffi_const_TSS2_RC_LAYER_SHIFT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_RC_SUCCESS", (void *)_cffi_const_TSS2_RC_SUCCESS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_RESMGR_RC_LAYER", (void *)_cffi_const_TSS2_RESMGR_RC_LAYER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_RESMGR_TPM_RC_LAYER", (void *)_cffi_const_TSS2_RESMGR_TPM_RC_LAYER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_SYS_RC_ABI_MISMATCH", (void *)_cffi_const_TSS2_SYS_RC_ABI_MISMATCH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_SYS_RC_BAD_REFERENCE", (void *)_cffi_const_TSS2_SYS_RC_BAD_REFERENCE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_SYS_RC_BAD_SEQUENCE", (void *)_cffi_const_TSS2_SYS_RC_BAD_SEQUENCE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_SYS_RC_BAD_SIZE", (void *)_cffi_const_TSS2_SYS_RC_BAD_SIZE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_SYS_RC_BAD_TCTI_STRUCTURE", (void *)_cffi_const_TSS2_SYS_RC_BAD_TCTI_STRUCTURE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_SYS_RC_BAD_VALUE", (void *)_cffi_const_TSS2_SYS_RC_BAD_VALUE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_SYS_RC_GENERAL_FAILURE", (void *)_cffi_const_TSS2_SYS_RC_GENERAL_FAILURE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_SYS_RC_INCOMPATIBLE_TCTI", (void *)_cffi_const_TSS2_SYS_RC_INCOMPATIBLE_TCTI, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_SYS_RC_INSUFFICIENT_BUFFER", (void *)_cffi_const_TSS2_SYS_RC_INSUFFICIENT_BUFFER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_SYS_RC_INSUFFICIENT_CONTEXT", (void *)_cffi_const_TSS2_SYS_RC_INSUFFICIENT_CONTEXT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_SYS_RC_INSUFFICIENT_RESPONSE", (void *)_cffi_const_TSS2_SYS_RC_INSUFFICIENT_RESPONSE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_SYS_RC_INVALID_SESSIONS", (void *)_cffi_const_TSS2_SYS_RC_INVALID_SESSIONS, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_SYS_RC_LAYER", (void *)_cffi_const_TSS2_SYS_RC_LAYER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_SYS_RC_MALFORMED_RESPONSE", (void *)_cffi_const_TSS2_SYS_RC_MALFORMED_RESPONSE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_SYS_RC_NO_DECRYPT_PARAM", (void *)_cffi_const_TSS2_SYS_RC_NO_DECRYPT_PARAM, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_SYS_RC_NO_ENCRYPT_PARAM", (void *)_cffi_const_TSS2_SYS_RC_NO_ENCRYPT_PARAM, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_RC_ABI_MISMATCH", (void *)_cffi_const_TSS2_TCTI_RC_ABI_MISMATCH, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_RC_BAD_CONTEXT", (void *)_cffi_const_TSS2_TCTI_RC_BAD_CONTEXT, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_RC_BAD_REFERENCE", (void *)_cffi_const_TSS2_TCTI_RC_BAD_REFERENCE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_RC_BAD_SEQUENCE", (void *)_cffi_const_TSS2_TCTI_RC_BAD_SEQUENCE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_RC_BAD_VALUE", (void *)_cffi_const_TSS2_TCTI_RC_BAD_VALUE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_RC_GENERAL_FAILURE", (void *)_cffi_const_TSS2_TCTI_RC_GENERAL_FAILURE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_RC_INSUFFICIENT_BUFFER", (void *)_cffi_const_TSS2_TCTI_RC_INSUFFICIENT_BUFFER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_RC_IO_ERROR", (void *)_cffi_const_TSS2_TCTI_RC_IO_ERROR, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_RC_LAYER", (void *)_cffi_const_TSS2_TCTI_RC_LAYER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_RC_MALFORMED_RESPONSE", (void *)_cffi_const_TSS2_TCTI_RC_MALFORMED_RESPONSE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_RC_MEMORY", (void *)_cffi_const_TSS2_TCTI_RC_MEMORY, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_RC_NOT_IMPLEMENTED", (void *)_cffi_const_TSS2_TCTI_RC_NOT_IMPLEMENTED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_RC_NOT_PERMITTED", (void *)_cffi_const_TSS2_TCTI_RC_NOT_PERMITTED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_RC_NOT_SUPPORTED", (void *)_cffi_const_TSS2_TCTI_RC_NOT_SUPPORTED, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_RC_NO_CONNECTION", (void *)_cffi_const_TSS2_TCTI_RC_NO_CONNECTION, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_RC_TRY_AGAIN", (void *)_cffi_const_TSS2_TCTI_RC_TRY_AGAIN, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_TIMEOUT_BLOCK", (void *)_cffi_const_TSS2_TCTI_TIMEOUT_BLOCK, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TCTI_TIMEOUT_NONE", (void *)_cffi_const_TSS2_TCTI_TIMEOUT_NONE, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "TSS2_TPM_RC_LAYER", (void *)_cffi_const_TSS2_TPM_RC_LAYER, _CFFI_OP(_CFFI_OP_CONSTANT_INT, -1), (void *)0 },
  { "Tss2_MU_BYTE_Marshal", (void *)_cffi_f_Tss2_MU_BYTE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3228), (void *)_cffi_d_Tss2_MU_BYTE_Marshal },
  { "Tss2_MU_BYTE_Unmarshal", (void *)_cffi_f_Tss2_MU_BYTE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3222), (void *)_cffi_d_Tss2_MU_BYTE_Unmarshal },
  { "Tss2_MU_INT16_Marshal", (void *)_cffi_f_Tss2_MU_INT16_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2419), (void *)_cffi_d_Tss2_MU_INT16_Marshal },
  { "Tss2_MU_INT16_Unmarshal", (void *)_cffi_f_Tss2_MU_INT16_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3075), (void *)_cffi_d_Tss2_MU_INT16_Unmarshal },
  { "Tss2_MU_INT32_Marshal", (void *)_cffi_f_Tss2_MU_INT32_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2425), (void *)_cffi_d_Tss2_MU_INT32_Marshal },
  { "Tss2_MU_INT32_Unmarshal", (void *)_cffi_f_Tss2_MU_INT32_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3081), (void *)_cffi_d_Tss2_MU_INT32_Unmarshal },
  { "Tss2_MU_INT64_Marshal", (void *)_cffi_f_Tss2_MU_INT64_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2431), (void *)_cffi_d_Tss2_MU_INT64_Marshal },
  { "Tss2_MU_INT64_Unmarshal", (void *)_cffi_f_Tss2_MU_INT64_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3087), (void *)_cffi_d_Tss2_MU_INT64_Unmarshal },
  { "Tss2_MU_INT8_Marshal", (void *)_cffi_f_Tss2_MU_INT8_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2437), (void *)_cffi_d_Tss2_MU_INT8_Marshal },
  { "Tss2_MU_INT8_Unmarshal", (void *)_cffi_f_Tss2_MU_INT8_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3093), (void *)_cffi_d_Tss2_MU_INT8_Unmarshal },
  { "Tss2_MU_TPM2B_ATTEST_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_ATTEST_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1639), (void *)_cffi_d_Tss2_MU_TPM2B_ATTEST_Marshal },
  { "Tss2_MU_TPM2B_ATTEST_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_ATTEST_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2475), (void *)_cffi_d_Tss2_MU_TPM2B_ATTEST_Unmarshal },
  { "Tss2_MU_TPM2B_AUTH_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_AUTH_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1674), (void *)_cffi_d_Tss2_MU_TPM2B_AUTH_Marshal },
  { "Tss2_MU_TPM2B_AUTH_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_AUTH_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2505), (void *)_cffi_d_Tss2_MU_TPM2B_AUTH_Unmarshal },
  { "Tss2_MU_TPM2B_CONTEXT_DATA_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_CONTEXT_DATA_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1645), (void *)_cffi_d_Tss2_MU_TPM2B_CONTEXT_DATA_Marshal },
  { "Tss2_MU_TPM2B_CONTEXT_DATA_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_CONTEXT_DATA_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2481), (void *)_cffi_d_Tss2_MU_TPM2B_CONTEXT_DATA_Unmarshal },
  { "Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1651), (void *)_cffi_d_Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Marshal },
  { "Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2487), (void *)_cffi_d_Tss2_MU_TPM2B_CONTEXT_SENSITIVE_Unmarshal },
  { "Tss2_MU_TPM2B_CREATION_DATA_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_CREATION_DATA_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1657), (void *)_cffi_d_Tss2_MU_TPM2B_CREATION_DATA_Marshal },
  { "Tss2_MU_TPM2B_CREATION_DATA_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_CREATION_DATA_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2493), (void *)_cffi_d_Tss2_MU_TPM2B_CREATION_DATA_Unmarshal },
  { "Tss2_MU_TPM2B_DATA_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_DATA_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1663), (void *)_cffi_d_Tss2_MU_TPM2B_DATA_Marshal },
  { "Tss2_MU_TPM2B_DATA_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_DATA_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2499), (void *)_cffi_d_Tss2_MU_TPM2B_DATA_Unmarshal },
  { "Tss2_MU_TPM2B_DIGEST_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_DIGEST_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1674), (void *)_cffi_d_Tss2_MU_TPM2B_DIGEST_Marshal },
  { "Tss2_MU_TPM2B_DIGEST_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_DIGEST_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2505), (void *)_cffi_d_Tss2_MU_TPM2B_DIGEST_Unmarshal },
  { "Tss2_MU_TPM2B_ECC_PARAMETER_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_ECC_PARAMETER_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1680), (void *)_cffi_d_Tss2_MU_TPM2B_ECC_PARAMETER_Marshal },
  { "Tss2_MU_TPM2B_ECC_PARAMETER_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_ECC_PARAMETER_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2511), (void *)_cffi_d_Tss2_MU_TPM2B_ECC_PARAMETER_Unmarshal },
  { "Tss2_MU_TPM2B_ECC_POINT_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_ECC_POINT_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1686), (void *)_cffi_d_Tss2_MU_TPM2B_ECC_POINT_Marshal },
  { "Tss2_MU_TPM2B_ECC_POINT_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_ECC_POINT_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2517), (void *)_cffi_d_Tss2_MU_TPM2B_ECC_POINT_Unmarshal },
  { "Tss2_MU_TPM2B_ENCRYPTED_SECRET_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_ENCRYPTED_SECRET_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1692), (void *)_cffi_d_Tss2_MU_TPM2B_ENCRYPTED_SECRET_Marshal },
  { "Tss2_MU_TPM2B_ENCRYPTED_SECRET_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_ENCRYPTED_SECRET_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2523), (void *)_cffi_d_Tss2_MU_TPM2B_ENCRYPTED_SECRET_Unmarshal },
  { "Tss2_MU_TPM2B_EVENT_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_EVENT_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1698), (void *)_cffi_d_Tss2_MU_TPM2B_EVENT_Marshal },
  { "Tss2_MU_TPM2B_EVENT_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_EVENT_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2529), (void *)_cffi_d_Tss2_MU_TPM2B_EVENT_Unmarshal },
  { "Tss2_MU_TPM2B_ID_OBJECT_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_ID_OBJECT_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1704), (void *)_cffi_d_Tss2_MU_TPM2B_ID_OBJECT_Marshal },
  { "Tss2_MU_TPM2B_ID_OBJECT_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_ID_OBJECT_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2535), (void *)_cffi_d_Tss2_MU_TPM2B_ID_OBJECT_Unmarshal },
  { "Tss2_MU_TPM2B_IV_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_IV_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1710), (void *)_cffi_d_Tss2_MU_TPM2B_IV_Marshal },
  { "Tss2_MU_TPM2B_IV_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_IV_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2541), (void *)_cffi_d_Tss2_MU_TPM2B_IV_Unmarshal },
  { "Tss2_MU_TPM2B_MAX_BUFFER_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_MAX_BUFFER_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1716), (void *)_cffi_d_Tss2_MU_TPM2B_MAX_BUFFER_Marshal },
  { "Tss2_MU_TPM2B_MAX_BUFFER_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_MAX_BUFFER_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2547), (void *)_cffi_d_Tss2_MU_TPM2B_MAX_BUFFER_Unmarshal },
  { "Tss2_MU_TPM2B_MAX_CAP_BUFFER_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_MAX_CAP_BUFFER_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1722), (void *)_cffi_d_Tss2_MU_TPM2B_MAX_CAP_BUFFER_Marshal },
  { "Tss2_MU_TPM2B_MAX_CAP_BUFFER_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_MAX_CAP_BUFFER_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2553), (void *)_cffi_d_Tss2_MU_TPM2B_MAX_CAP_BUFFER_Unmarshal },
  { "Tss2_MU_TPM2B_MAX_NV_BUFFER_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_MAX_NV_BUFFER_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1728), (void *)_cffi_d_Tss2_MU_TPM2B_MAX_NV_BUFFER_Marshal },
  { "Tss2_MU_TPM2B_MAX_NV_BUFFER_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_MAX_NV_BUFFER_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2559), (void *)_cffi_d_Tss2_MU_TPM2B_MAX_NV_BUFFER_Unmarshal },
  { "Tss2_MU_TPM2B_NAME_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_NAME_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1734), (void *)_cffi_d_Tss2_MU_TPM2B_NAME_Marshal },
  { "Tss2_MU_TPM2B_NAME_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_NAME_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2565), (void *)_cffi_d_Tss2_MU_TPM2B_NAME_Unmarshal },
  { "Tss2_MU_TPM2B_NONCE_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_NONCE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1674), (void *)_cffi_d_Tss2_MU_TPM2B_NONCE_Marshal },
  { "Tss2_MU_TPM2B_NONCE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_NONCE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2505), (void *)_cffi_d_Tss2_MU_TPM2B_NONCE_Unmarshal },
  { "Tss2_MU_TPM2B_NV_PUBLIC_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_NV_PUBLIC_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1740), (void *)_cffi_d_Tss2_MU_TPM2B_NV_PUBLIC_Marshal },
  { "Tss2_MU_TPM2B_NV_PUBLIC_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_NV_PUBLIC_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2571), (void *)_cffi_d_Tss2_MU_TPM2B_NV_PUBLIC_Unmarshal },
  { "Tss2_MU_TPM2B_OPERAND_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_OPERAND_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1674), (void *)_cffi_d_Tss2_MU_TPM2B_OPERAND_Marshal },
  { "Tss2_MU_TPM2B_OPERAND_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_OPERAND_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2505), (void *)_cffi_d_Tss2_MU_TPM2B_OPERAND_Unmarshal },
  { "Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1752), (void *)_cffi_d_Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Marshal },
  { "Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2583), (void *)_cffi_d_Tss2_MU_TPM2B_PRIVATE_KEY_RSA_Unmarshal },
  { "Tss2_MU_TPM2B_PRIVATE_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_PRIVATE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1746), (void *)_cffi_d_Tss2_MU_TPM2B_PRIVATE_Marshal },
  { "Tss2_MU_TPM2B_PRIVATE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_PRIVATE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2577), (void *)_cffi_d_Tss2_MU_TPM2B_PRIVATE_Unmarshal },
  { "Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1783), (void *)_cffi_d_Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Marshal },
  { "Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2595), (void *)_cffi_d_Tss2_MU_TPM2B_PUBLIC_KEY_RSA_Unmarshal },
  { "Tss2_MU_TPM2B_PUBLIC_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_PUBLIC_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1777), (void *)_cffi_d_Tss2_MU_TPM2B_PUBLIC_Marshal },
  { "Tss2_MU_TPM2B_PUBLIC_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_PUBLIC_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2589), (void *)_cffi_d_Tss2_MU_TPM2B_PUBLIC_Unmarshal },
  { "Tss2_MU_TPM2B_SENSITIVE_CREATE_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_SENSITIVE_CREATE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1795), (void *)_cffi_d_Tss2_MU_TPM2B_SENSITIVE_CREATE_Marshal },
  { "Tss2_MU_TPM2B_SENSITIVE_CREATE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_SENSITIVE_CREATE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2607), (void *)_cffi_d_Tss2_MU_TPM2B_SENSITIVE_CREATE_Unmarshal },
  { "Tss2_MU_TPM2B_SENSITIVE_DATA_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_SENSITIVE_DATA_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1801), (void *)_cffi_d_Tss2_MU_TPM2B_SENSITIVE_DATA_Marshal },
  { "Tss2_MU_TPM2B_SENSITIVE_DATA_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_SENSITIVE_DATA_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2613), (void *)_cffi_d_Tss2_MU_TPM2B_SENSITIVE_DATA_Unmarshal },
  { "Tss2_MU_TPM2B_SENSITIVE_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_SENSITIVE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1789), (void *)_cffi_d_Tss2_MU_TPM2B_SENSITIVE_Marshal },
  { "Tss2_MU_TPM2B_SENSITIVE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_SENSITIVE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2601), (void *)_cffi_d_Tss2_MU_TPM2B_SENSITIVE_Unmarshal },
  { "Tss2_MU_TPM2B_SYM_KEY_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_SYM_KEY_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1807), (void *)_cffi_d_Tss2_MU_TPM2B_SYM_KEY_Marshal },
  { "Tss2_MU_TPM2B_SYM_KEY_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_SYM_KEY_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2619), (void *)_cffi_d_Tss2_MU_TPM2B_SYM_KEY_Unmarshal },
  { "Tss2_MU_TPM2B_TEMPLATE_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_TEMPLATE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1813), (void *)_cffi_d_Tss2_MU_TPM2B_TEMPLATE_Marshal },
  { "Tss2_MU_TPM2B_TEMPLATE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_TEMPLATE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2625), (void *)_cffi_d_Tss2_MU_TPM2B_TEMPLATE_Unmarshal },
  { "Tss2_MU_TPM2B_TIMEOUT_Marshal", (void *)_cffi_f_Tss2_MU_TPM2B_TIMEOUT_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1674), (void *)_cffi_d_Tss2_MU_TPM2B_TIMEOUT_Marshal },
  { "Tss2_MU_TPM2B_TIMEOUT_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2B_TIMEOUT_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2505), (void *)_cffi_d_Tss2_MU_TPM2B_TIMEOUT_Unmarshal },
  { "Tss2_MU_TPM2_CC_Marshal", (void *)_cffi_f_Tss2_MU_TPM2_CC_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2453), (void *)_cffi_d_Tss2_MU_TPM2_CC_Marshal },
  { "Tss2_MU_TPM2_CC_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2_CC_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3105), (void *)_cffi_d_Tss2_MU_TPM2_CC_Unmarshal },
  { "Tss2_MU_TPM2_HANDLE_Marshal", (void *)_cffi_f_Tss2_MU_TPM2_HANDLE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2453), (void *)_cffi_d_Tss2_MU_TPM2_HANDLE_Marshal },
  { "Tss2_MU_TPM2_HANDLE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2_HANDLE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3105), (void *)_cffi_d_Tss2_MU_TPM2_HANDLE_Unmarshal },
  { "Tss2_MU_TPM2_NT_Marshal", (void *)_cffi_f_Tss2_MU_TPM2_NT_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3228), (void *)_cffi_d_Tss2_MU_TPM2_NT_Marshal },
  { "Tss2_MU_TPM2_NT_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2_NT_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3222), (void *)_cffi_d_Tss2_MU_TPM2_NT_Unmarshal },
  { "Tss2_MU_TPM2_SE_Marshal", (void *)_cffi_f_Tss2_MU_TPM2_SE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3228), (void *)_cffi_d_Tss2_MU_TPM2_SE_Marshal },
  { "Tss2_MU_TPM2_SE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2_SE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3222), (void *)_cffi_d_Tss2_MU_TPM2_SE_Unmarshal },
  { "Tss2_MU_TPM2_ST_Marshal", (void *)_cffi_f_Tss2_MU_TPM2_ST_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2443), (void *)_cffi_d_Tss2_MU_TPM2_ST_Marshal },
  { "Tss2_MU_TPM2_ST_Unmarshal", (void *)_cffi_f_Tss2_MU_TPM2_ST_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3099), (void *)_cffi_d_Tss2_MU_TPM2_ST_Unmarshal },
  { "Tss2_MU_TPMA_ALGORITHM_Marshal", (void *)_cffi_f_Tss2_MU_TPMA_ALGORITHM_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2453), (void *)_cffi_d_Tss2_MU_TPMA_ALGORITHM_Marshal },
  { "Tss2_MU_TPMA_ALGORITHM_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMA_ALGORITHM_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3105), (void *)_cffi_d_Tss2_MU_TPMA_ALGORITHM_Unmarshal },
  { "Tss2_MU_TPMA_CC_Marshal", (void *)_cffi_f_Tss2_MU_TPMA_CC_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2453), (void *)_cffi_d_Tss2_MU_TPMA_CC_Marshal },
  { "Tss2_MU_TPMA_CC_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMA_CC_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3105), (void *)_cffi_d_Tss2_MU_TPMA_CC_Unmarshal },
  { "Tss2_MU_TPMA_LOCALITY_Marshal", (void *)_cffi_f_Tss2_MU_TPMA_LOCALITY_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3228), (void *)_cffi_d_Tss2_MU_TPMA_LOCALITY_Marshal },
  { "Tss2_MU_TPMA_LOCALITY_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMA_LOCALITY_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3222), (void *)_cffi_d_Tss2_MU_TPMA_LOCALITY_Unmarshal },
  { "Tss2_MU_TPMA_NV_Marshal", (void *)_cffi_f_Tss2_MU_TPMA_NV_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2453), (void *)_cffi_d_Tss2_MU_TPMA_NV_Marshal },
  { "Tss2_MU_TPMA_NV_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMA_NV_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3105), (void *)_cffi_d_Tss2_MU_TPMA_NV_Unmarshal },
  { "Tss2_MU_TPMA_OBJECT_Marshal", (void *)_cffi_f_Tss2_MU_TPMA_OBJECT_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2453), (void *)_cffi_d_Tss2_MU_TPMA_OBJECT_Marshal },
  { "Tss2_MU_TPMA_OBJECT_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMA_OBJECT_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3105), (void *)_cffi_d_Tss2_MU_TPMA_OBJECT_Unmarshal },
  { "Tss2_MU_TPMA_PERMANENT_Marshal", (void *)_cffi_f_Tss2_MU_TPMA_PERMANENT_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2453), (void *)_cffi_d_Tss2_MU_TPMA_PERMANENT_Marshal },
  { "Tss2_MU_TPMA_PERMANENT_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMA_PERMANENT_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3105), (void *)_cffi_d_Tss2_MU_TPMA_PERMANENT_Unmarshal },
  { "Tss2_MU_TPMA_SESSION_Marshal", (void *)_cffi_f_Tss2_MU_TPMA_SESSION_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3228), (void *)_cffi_d_Tss2_MU_TPMA_SESSION_Marshal },
  { "Tss2_MU_TPMA_SESSION_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMA_SESSION_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3222), (void *)_cffi_d_Tss2_MU_TPMA_SESSION_Unmarshal },
  { "Tss2_MU_TPMA_STARTUP_CLEAR_Marshal", (void *)_cffi_f_Tss2_MU_TPMA_STARTUP_CLEAR_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2453), (void *)_cffi_d_Tss2_MU_TPMA_STARTUP_CLEAR_Marshal },
  { "Tss2_MU_TPMA_STARTUP_CLEAR_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMA_STARTUP_CLEAR_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3105), (void *)_cffi_d_Tss2_MU_TPMA_STARTUP_CLEAR_Unmarshal },
  { "Tss2_MU_TPMI_ALG_HASH_Marshal", (void *)_cffi_f_Tss2_MU_TPMI_ALG_HASH_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2443), (void *)_cffi_d_Tss2_MU_TPMI_ALG_HASH_Marshal },
  { "Tss2_MU_TPMI_ALG_HASH_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMI_ALG_HASH_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3099), (void *)_cffi_d_Tss2_MU_TPMI_ALG_HASH_Unmarshal },
  { "Tss2_MU_TPML_ACT_DATA_Marshal", (void *)_cffi_f_Tss2_MU_TPML_ACT_DATA_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1819), (void *)_cffi_d_Tss2_MU_TPML_ACT_DATA_Marshal },
  { "Tss2_MU_TPML_ACT_DATA_Unmarshal", (void *)_cffi_f_Tss2_MU_TPML_ACT_DATA_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2631), (void *)_cffi_d_Tss2_MU_TPML_ACT_DATA_Unmarshal },
  { "Tss2_MU_TPML_AC_CAPABILITIES_Marshal", (void *)_cffi_f_Tss2_MU_TPML_AC_CAPABILITIES_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1825), (void *)_cffi_d_Tss2_MU_TPML_AC_CAPABILITIES_Marshal },
  { "Tss2_MU_TPML_AC_CAPABILITIES_Unmarshal", (void *)_cffi_f_Tss2_MU_TPML_AC_CAPABILITIES_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2637), (void *)_cffi_d_Tss2_MU_TPML_AC_CAPABILITIES_Unmarshal },
  { "Tss2_MU_TPML_ALG_Marshal", (void *)_cffi_f_Tss2_MU_TPML_ALG_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1831), (void *)_cffi_d_Tss2_MU_TPML_ALG_Marshal },
  { "Tss2_MU_TPML_ALG_PROPERTY_Marshal", (void *)_cffi_f_Tss2_MU_TPML_ALG_PROPERTY_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1837), (void *)_cffi_d_Tss2_MU_TPML_ALG_PROPERTY_Marshal },
  { "Tss2_MU_TPML_ALG_PROPERTY_Unmarshal", (void *)_cffi_f_Tss2_MU_TPML_ALG_PROPERTY_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2649), (void *)_cffi_d_Tss2_MU_TPML_ALG_PROPERTY_Unmarshal },
  { "Tss2_MU_TPML_ALG_Unmarshal", (void *)_cffi_f_Tss2_MU_TPML_ALG_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2643), (void *)_cffi_d_Tss2_MU_TPML_ALG_Unmarshal },
  { "Tss2_MU_TPML_CCA_Marshal", (void *)_cffi_f_Tss2_MU_TPML_CCA_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1849), (void *)_cffi_d_Tss2_MU_TPML_CCA_Marshal },
  { "Tss2_MU_TPML_CCA_Unmarshal", (void *)_cffi_f_Tss2_MU_TPML_CCA_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2661), (void *)_cffi_d_Tss2_MU_TPML_CCA_Unmarshal },
  { "Tss2_MU_TPML_CC_Marshal", (void *)_cffi_f_Tss2_MU_TPML_CC_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1843), (void *)_cffi_d_Tss2_MU_TPML_CC_Marshal },
  { "Tss2_MU_TPML_CC_Unmarshal", (void *)_cffi_f_Tss2_MU_TPML_CC_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2655), (void *)_cffi_d_Tss2_MU_TPML_CC_Unmarshal },
  { "Tss2_MU_TPML_DIGEST_Marshal", (void *)_cffi_f_Tss2_MU_TPML_DIGEST_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1855), (void *)_cffi_d_Tss2_MU_TPML_DIGEST_Marshal },
  { "Tss2_MU_TPML_DIGEST_Unmarshal", (void *)_cffi_f_Tss2_MU_TPML_DIGEST_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2667), (void *)_cffi_d_Tss2_MU_TPML_DIGEST_Unmarshal },
  { "Tss2_MU_TPML_DIGEST_VALUES_Marshal", (void *)_cffi_f_Tss2_MU_TPML_DIGEST_VALUES_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1861), (void *)_cffi_d_Tss2_MU_TPML_DIGEST_VALUES_Marshal },
  { "Tss2_MU_TPML_DIGEST_VALUES_Unmarshal", (void *)_cffi_f_Tss2_MU_TPML_DIGEST_VALUES_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2673), (void *)_cffi_d_Tss2_MU_TPML_DIGEST_VALUES_Unmarshal },
  { "Tss2_MU_TPML_ECC_CURVE_Marshal", (void *)_cffi_f_Tss2_MU_TPML_ECC_CURVE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1867), (void *)_cffi_d_Tss2_MU_TPML_ECC_CURVE_Marshal },
  { "Tss2_MU_TPML_ECC_CURVE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPML_ECC_CURVE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2679), (void *)_cffi_d_Tss2_MU_TPML_ECC_CURVE_Unmarshal },
  { "Tss2_MU_TPML_HANDLE_Marshal", (void *)_cffi_f_Tss2_MU_TPML_HANDLE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1873), (void *)_cffi_d_Tss2_MU_TPML_HANDLE_Marshal },
  { "Tss2_MU_TPML_HANDLE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPML_HANDLE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2685), (void *)_cffi_d_Tss2_MU_TPML_HANDLE_Unmarshal },
  { "Tss2_MU_TPML_INTEL_PTT_PROPERTY_Marshal", (void *)_cffi_f_Tss2_MU_TPML_INTEL_PTT_PROPERTY_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1879), (void *)_cffi_d_Tss2_MU_TPML_INTEL_PTT_PROPERTY_Marshal },
  { "Tss2_MU_TPML_INTEL_PTT_PROPERTY_Unmarshal", (void *)_cffi_f_Tss2_MU_TPML_INTEL_PTT_PROPERTY_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2691), (void *)_cffi_d_Tss2_MU_TPML_INTEL_PTT_PROPERTY_Unmarshal },
  { "Tss2_MU_TPML_PCR_SELECTION_Marshal", (void *)_cffi_f_Tss2_MU_TPML_PCR_SELECTION_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1885), (void *)_cffi_d_Tss2_MU_TPML_PCR_SELECTION_Marshal },
  { "Tss2_MU_TPML_PCR_SELECTION_Unmarshal", (void *)_cffi_f_Tss2_MU_TPML_PCR_SELECTION_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2697), (void *)_cffi_d_Tss2_MU_TPML_PCR_SELECTION_Unmarshal },
  { "Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Marshal", (void *)_cffi_f_Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1891), (void *)_cffi_d_Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Marshal },
  { "Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Unmarshal", (void *)_cffi_f_Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2703), (void *)_cffi_d_Tss2_MU_TPML_TAGGED_PCR_PROPERTY_Unmarshal },
  { "Tss2_MU_TPML_TAGGED_POLICY_Marshal", (void *)_cffi_f_Tss2_MU_TPML_TAGGED_POLICY_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1897), (void *)_cffi_d_Tss2_MU_TPML_TAGGED_POLICY_Marshal },
  { "Tss2_MU_TPML_TAGGED_POLICY_Unmarshal", (void *)_cffi_f_Tss2_MU_TPML_TAGGED_POLICY_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2709), (void *)_cffi_d_Tss2_MU_TPML_TAGGED_POLICY_Unmarshal },
  { "Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Marshal", (void *)_cffi_f_Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1903), (void *)_cffi_d_Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Marshal },
  { "Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Unmarshal", (void *)_cffi_f_Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2715), (void *)_cffi_d_Tss2_MU_TPML_TAGGED_TPM_PROPERTY_Unmarshal },
  { "Tss2_MU_TPMS_ACT_DATA_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_ACT_DATA_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1909), (void *)_cffi_d_Tss2_MU_TPMS_ACT_DATA_Marshal },
  { "Tss2_MU_TPMS_ACT_DATA_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_ACT_DATA_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2721), (void *)_cffi_d_Tss2_MU_TPMS_ACT_DATA_Unmarshal },
  { "Tss2_MU_TPMS_AC_OUTPUT_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_AC_OUTPUT_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1915), (void *)_cffi_d_Tss2_MU_TPMS_AC_OUTPUT_Marshal },
  { "Tss2_MU_TPMS_AC_OUTPUT_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_AC_OUTPUT_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2727), (void *)_cffi_d_Tss2_MU_TPMS_AC_OUTPUT_Unmarshal },
  { "Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1921), (void *)_cffi_d_Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Marshal },
  { "Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2733), (void *)_cffi_d_Tss2_MU_TPMS_ALGORITHM_DETAIL_ECC_Unmarshal },
  { "Tss2_MU_TPMS_ALG_PROPERTY_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_ALG_PROPERTY_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1927), (void *)_cffi_d_Tss2_MU_TPMS_ALG_PROPERTY_Marshal },
  { "Tss2_MU_TPMS_ALG_PROPERTY_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_ALG_PROPERTY_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2739), (void *)_cffi_d_Tss2_MU_TPMS_ALG_PROPERTY_Unmarshal },
  { "Tss2_MU_TPMS_ATTEST_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_ATTEST_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1933), (void *)_cffi_d_Tss2_MU_TPMS_ATTEST_Marshal },
  { "Tss2_MU_TPMS_ATTEST_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_ATTEST_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2745), (void *)_cffi_d_Tss2_MU_TPMS_ATTEST_Unmarshal },
  { "Tss2_MU_TPMS_AUTH_COMMAND_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_AUTH_COMMAND_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1939), (void *)_cffi_d_Tss2_MU_TPMS_AUTH_COMMAND_Marshal },
  { "Tss2_MU_TPMS_AUTH_COMMAND_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_AUTH_COMMAND_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2751), (void *)_cffi_d_Tss2_MU_TPMS_AUTH_COMMAND_Unmarshal },
  { "Tss2_MU_TPMS_AUTH_RESPONSE_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_AUTH_RESPONSE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1945), (void *)_cffi_d_Tss2_MU_TPMS_AUTH_RESPONSE_Marshal },
  { "Tss2_MU_TPMS_AUTH_RESPONSE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_AUTH_RESPONSE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2757), (void *)_cffi_d_Tss2_MU_TPMS_AUTH_RESPONSE_Unmarshal },
  { "Tss2_MU_TPMS_CAPABILITY_DATA_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_CAPABILITY_DATA_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1951), (void *)_cffi_d_Tss2_MU_TPMS_CAPABILITY_DATA_Marshal },
  { "Tss2_MU_TPMS_CAPABILITY_DATA_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_CAPABILITY_DATA_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2763), (void *)_cffi_d_Tss2_MU_TPMS_CAPABILITY_DATA_Unmarshal },
  { "Tss2_MU_TPMS_CERTIFY_INFO_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_CERTIFY_INFO_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1957), (void *)_cffi_d_Tss2_MU_TPMS_CERTIFY_INFO_Marshal },
  { "Tss2_MU_TPMS_CERTIFY_INFO_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_CERTIFY_INFO_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2769), (void *)_cffi_d_Tss2_MU_TPMS_CERTIFY_INFO_Unmarshal },
  { "Tss2_MU_TPMS_CLOCK_INFO_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_CLOCK_INFO_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1963), (void *)_cffi_d_Tss2_MU_TPMS_CLOCK_INFO_Marshal },
  { "Tss2_MU_TPMS_CLOCK_INFO_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_CLOCK_INFO_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2775), (void *)_cffi_d_Tss2_MU_TPMS_CLOCK_INFO_Unmarshal },
  { "Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1969), (void *)_cffi_d_Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Marshal },
  { "Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2781), (void *)_cffi_d_Tss2_MU_TPMS_COMMAND_AUDIT_INFO_Unmarshal },
  { "Tss2_MU_TPMS_CONTEXT_DATA_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_CONTEXT_DATA_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1981), (void *)_cffi_d_Tss2_MU_TPMS_CONTEXT_DATA_Marshal },
  { "Tss2_MU_TPMS_CONTEXT_DATA_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_CONTEXT_DATA_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2793), (void *)_cffi_d_Tss2_MU_TPMS_CONTEXT_DATA_Unmarshal },
  { "Tss2_MU_TPMS_CONTEXT_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_CONTEXT_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1975), (void *)_cffi_d_Tss2_MU_TPMS_CONTEXT_Marshal },
  { "Tss2_MU_TPMS_CONTEXT_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_CONTEXT_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2787), (void *)_cffi_d_Tss2_MU_TPMS_CONTEXT_Unmarshal },
  { "Tss2_MU_TPMS_CREATION_DATA_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_CREATION_DATA_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1987), (void *)_cffi_d_Tss2_MU_TPMS_CREATION_DATA_Marshal },
  { "Tss2_MU_TPMS_CREATION_DATA_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_CREATION_DATA_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2799), (void *)_cffi_d_Tss2_MU_TPMS_CREATION_DATA_Unmarshal },
  { "Tss2_MU_TPMS_CREATION_INFO_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_CREATION_INFO_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1993), (void *)_cffi_d_Tss2_MU_TPMS_CREATION_INFO_Marshal },
  { "Tss2_MU_TPMS_CREATION_INFO_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_CREATION_INFO_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2805), (void *)_cffi_d_Tss2_MU_TPMS_CREATION_INFO_Unmarshal },
  { "Tss2_MU_TPMS_ECC_PARMS_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_ECC_PARMS_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 1999), (void *)_cffi_d_Tss2_MU_TPMS_ECC_PARMS_Marshal },
  { "Tss2_MU_TPMS_ECC_PARMS_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_ECC_PARMS_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2811), (void *)_cffi_d_Tss2_MU_TPMS_ECC_PARMS_Unmarshal },
  { "Tss2_MU_TPMS_ECC_POINT_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_ECC_POINT_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2005), (void *)_cffi_d_Tss2_MU_TPMS_ECC_POINT_Marshal },
  { "Tss2_MU_TPMS_ECC_POINT_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_ECC_POINT_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2817), (void *)_cffi_d_Tss2_MU_TPMS_ECC_POINT_Unmarshal },
  { "Tss2_MU_TPMS_EMPTY_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_EMPTY_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2011), (void *)_cffi_d_Tss2_MU_TPMS_EMPTY_Marshal },
  { "Tss2_MU_TPMS_EMPTY_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_EMPTY_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2823), (void *)_cffi_d_Tss2_MU_TPMS_EMPTY_Unmarshal },
  { "Tss2_MU_TPMS_ID_OBJECT_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_ID_OBJECT_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2017), (void *)_cffi_d_Tss2_MU_TPMS_ID_OBJECT_Marshal },
  { "Tss2_MU_TPMS_ID_OBJECT_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_ID_OBJECT_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2829), (void *)_cffi_d_Tss2_MU_TPMS_ID_OBJECT_Unmarshal },
  { "Tss2_MU_TPMS_KEYEDHASH_PARMS_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_KEYEDHASH_PARMS_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2023), (void *)_cffi_d_Tss2_MU_TPMS_KEYEDHASH_PARMS_Marshal },
  { "Tss2_MU_TPMS_KEYEDHASH_PARMS_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_KEYEDHASH_PARMS_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2835), (void *)_cffi_d_Tss2_MU_TPMS_KEYEDHASH_PARMS_Unmarshal },
  { "Tss2_MU_TPMS_NV_CERTIFY_INFO_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_NV_CERTIFY_INFO_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2029), (void *)_cffi_d_Tss2_MU_TPMS_NV_CERTIFY_INFO_Marshal },
  { "Tss2_MU_TPMS_NV_CERTIFY_INFO_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_NV_CERTIFY_INFO_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2841), (void *)_cffi_d_Tss2_MU_TPMS_NV_CERTIFY_INFO_Unmarshal },
  { "Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2035), (void *)_cffi_d_Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Marshal },
  { "Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2847), (void *)_cffi_d_Tss2_MU_TPMS_NV_DIGEST_CERTIFY_INFO_Unmarshal },
  { "Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2041), (void *)_cffi_d_Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Marshal },
  { "Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2853), (void *)_cffi_d_Tss2_MU_TPMS_NV_PIN_COUNTER_PARAMETERS_Unmarshal },
  { "Tss2_MU_TPMS_NV_PUBLIC_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_NV_PUBLIC_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2047), (void *)_cffi_d_Tss2_MU_TPMS_NV_PUBLIC_Marshal },
  { "Tss2_MU_TPMS_NV_PUBLIC_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_NV_PUBLIC_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2859), (void *)_cffi_d_Tss2_MU_TPMS_NV_PUBLIC_Unmarshal },
  { "Tss2_MU_TPMS_PCR_SELECTION_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_PCR_SELECTION_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2059), (void *)_cffi_d_Tss2_MU_TPMS_PCR_SELECTION_Marshal },
  { "Tss2_MU_TPMS_PCR_SELECTION_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_PCR_SELECTION_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2871), (void *)_cffi_d_Tss2_MU_TPMS_PCR_SELECTION_Unmarshal },
  { "Tss2_MU_TPMS_PCR_SELECT_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_PCR_SELECT_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2053), (void *)_cffi_d_Tss2_MU_TPMS_PCR_SELECT_Marshal },
  { "Tss2_MU_TPMS_PCR_SELECT_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_PCR_SELECT_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2865), (void *)_cffi_d_Tss2_MU_TPMS_PCR_SELECT_Unmarshal },
  { "Tss2_MU_TPMS_QUOTE_INFO_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_QUOTE_INFO_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2065), (void *)_cffi_d_Tss2_MU_TPMS_QUOTE_INFO_Marshal },
  { "Tss2_MU_TPMS_QUOTE_INFO_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_QUOTE_INFO_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2877), (void *)_cffi_d_Tss2_MU_TPMS_QUOTE_INFO_Unmarshal },
  { "Tss2_MU_TPMS_RSA_PARMS_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_RSA_PARMS_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2071), (void *)_cffi_d_Tss2_MU_TPMS_RSA_PARMS_Marshal },
  { "Tss2_MU_TPMS_RSA_PARMS_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_RSA_PARMS_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2883), (void *)_cffi_d_Tss2_MU_TPMS_RSA_PARMS_Unmarshal },
  { "Tss2_MU_TPMS_SCHEME_ECDAA_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_SCHEME_ECDAA_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2077), (void *)_cffi_d_Tss2_MU_TPMS_SCHEME_ECDAA_Marshal },
  { "Tss2_MU_TPMS_SCHEME_ECDAA_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_SCHEME_ECDAA_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2889), (void *)_cffi_d_Tss2_MU_TPMS_SCHEME_ECDAA_Unmarshal },
  { "Tss2_MU_TPMS_SCHEME_HASH_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_SCHEME_HASH_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2083), (void *)_cffi_d_Tss2_MU_TPMS_SCHEME_HASH_Marshal },
  { "Tss2_MU_TPMS_SCHEME_HASH_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_SCHEME_HASH_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2895), (void *)_cffi_d_Tss2_MU_TPMS_SCHEME_HASH_Unmarshal },
  { "Tss2_MU_TPMS_SCHEME_XOR_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_SCHEME_XOR_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2089), (void *)_cffi_d_Tss2_MU_TPMS_SCHEME_XOR_Marshal },
  { "Tss2_MU_TPMS_SCHEME_XOR_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_SCHEME_XOR_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2901), (void *)_cffi_d_Tss2_MU_TPMS_SCHEME_XOR_Unmarshal },
  { "Tss2_MU_TPMS_SENSITIVE_CREATE_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_SENSITIVE_CREATE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2095), (void *)_cffi_d_Tss2_MU_TPMS_SENSITIVE_CREATE_Marshal },
  { "Tss2_MU_TPMS_SENSITIVE_CREATE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_SENSITIVE_CREATE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2907), (void *)_cffi_d_Tss2_MU_TPMS_SENSITIVE_CREATE_Unmarshal },
  { "Tss2_MU_TPMS_SESSION_AUDIT_INFO_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_SESSION_AUDIT_INFO_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2101), (void *)_cffi_d_Tss2_MU_TPMS_SESSION_AUDIT_INFO_Marshal },
  { "Tss2_MU_TPMS_SESSION_AUDIT_INFO_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_SESSION_AUDIT_INFO_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2913), (void *)_cffi_d_Tss2_MU_TPMS_SESSION_AUDIT_INFO_Unmarshal },
  { "Tss2_MU_TPMS_SIGNATURE_ECC_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_SIGNATURE_ECC_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2107), (void *)_cffi_d_Tss2_MU_TPMS_SIGNATURE_ECC_Marshal },
  { "Tss2_MU_TPMS_SIGNATURE_ECC_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_SIGNATURE_ECC_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2919), (void *)_cffi_d_Tss2_MU_TPMS_SIGNATURE_ECC_Unmarshal },
  { "Tss2_MU_TPMS_SIGNATURE_RSA_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_SIGNATURE_RSA_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2113), (void *)_cffi_d_Tss2_MU_TPMS_SIGNATURE_RSA_Marshal },
  { "Tss2_MU_TPMS_SIGNATURE_RSA_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_SIGNATURE_RSA_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2925), (void *)_cffi_d_Tss2_MU_TPMS_SIGNATURE_RSA_Unmarshal },
  { "Tss2_MU_TPMS_SYMCIPHER_PARMS_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_SYMCIPHER_PARMS_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2119), (void *)_cffi_d_Tss2_MU_TPMS_SYMCIPHER_PARMS_Marshal },
  { "Tss2_MU_TPMS_SYMCIPHER_PARMS_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_SYMCIPHER_PARMS_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2931), (void *)_cffi_d_Tss2_MU_TPMS_SYMCIPHER_PARMS_Unmarshal },
  { "Tss2_MU_TPMS_TAGGED_PCR_SELECT_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_TAGGED_PCR_SELECT_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2125), (void *)_cffi_d_Tss2_MU_TPMS_TAGGED_PCR_SELECT_Marshal },
  { "Tss2_MU_TPMS_TAGGED_PCR_SELECT_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_TAGGED_PCR_SELECT_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2937), (void *)_cffi_d_Tss2_MU_TPMS_TAGGED_PCR_SELECT_Unmarshal },
  { "Tss2_MU_TPMS_TAGGED_POLICY_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_TAGGED_POLICY_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2131), (void *)_cffi_d_Tss2_MU_TPMS_TAGGED_POLICY_Marshal },
  { "Tss2_MU_TPMS_TAGGED_POLICY_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_TAGGED_POLICY_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2943), (void *)_cffi_d_Tss2_MU_TPMS_TAGGED_POLICY_Unmarshal },
  { "Tss2_MU_TPMS_TAGGED_PROPERTY_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_TAGGED_PROPERTY_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2137), (void *)_cffi_d_Tss2_MU_TPMS_TAGGED_PROPERTY_Marshal },
  { "Tss2_MU_TPMS_TAGGED_PROPERTY_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_TAGGED_PROPERTY_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2949), (void *)_cffi_d_Tss2_MU_TPMS_TAGGED_PROPERTY_Unmarshal },
  { "Tss2_MU_TPMS_TIME_ATTEST_INFO_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_TIME_ATTEST_INFO_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2143), (void *)_cffi_d_Tss2_MU_TPMS_TIME_ATTEST_INFO_Marshal },
  { "Tss2_MU_TPMS_TIME_ATTEST_INFO_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_TIME_ATTEST_INFO_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2955), (void *)_cffi_d_Tss2_MU_TPMS_TIME_ATTEST_INFO_Unmarshal },
  { "Tss2_MU_TPMS_TIME_INFO_Marshal", (void *)_cffi_f_Tss2_MU_TPMS_TIME_INFO_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2149), (void *)_cffi_d_Tss2_MU_TPMS_TIME_INFO_Marshal },
  { "Tss2_MU_TPMS_TIME_INFO_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMS_TIME_INFO_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2961), (void *)_cffi_d_Tss2_MU_TPMS_TIME_INFO_Unmarshal },
  { "Tss2_MU_TPMT_ASYM_SCHEME_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_ASYM_SCHEME_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2155), (void *)_cffi_d_Tss2_MU_TPMT_ASYM_SCHEME_Marshal },
  { "Tss2_MU_TPMT_ASYM_SCHEME_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_ASYM_SCHEME_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2967), (void *)_cffi_d_Tss2_MU_TPMT_ASYM_SCHEME_Unmarshal },
  { "Tss2_MU_TPMT_ECC_SCHEME_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_ECC_SCHEME_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2161), (void *)_cffi_d_Tss2_MU_TPMT_ECC_SCHEME_Marshal },
  { "Tss2_MU_TPMT_ECC_SCHEME_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_ECC_SCHEME_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2973), (void *)_cffi_d_Tss2_MU_TPMT_ECC_SCHEME_Unmarshal },
  { "Tss2_MU_TPMT_HA_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_HA_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2167), (void *)_cffi_d_Tss2_MU_TPMT_HA_Marshal },
  { "Tss2_MU_TPMT_HA_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_HA_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2979), (void *)_cffi_d_Tss2_MU_TPMT_HA_Unmarshal },
  { "Tss2_MU_TPMT_KDF_SCHEME_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_KDF_SCHEME_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2173), (void *)_cffi_d_Tss2_MU_TPMT_KDF_SCHEME_Marshal },
  { "Tss2_MU_TPMT_KDF_SCHEME_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_KDF_SCHEME_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2985), (void *)_cffi_d_Tss2_MU_TPMT_KDF_SCHEME_Unmarshal },
  { "Tss2_MU_TPMT_KEYEDHASH_SCHEME_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_KEYEDHASH_SCHEME_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2179), (void *)_cffi_d_Tss2_MU_TPMT_KEYEDHASH_SCHEME_Marshal },
  { "Tss2_MU_TPMT_KEYEDHASH_SCHEME_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_KEYEDHASH_SCHEME_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2991), (void *)_cffi_d_Tss2_MU_TPMT_KEYEDHASH_SCHEME_Unmarshal },
  { "Tss2_MU_TPMT_PUBLIC_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_PUBLIC_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2185), (void *)_cffi_d_Tss2_MU_TPMT_PUBLIC_Marshal },
  { "Tss2_MU_TPMT_PUBLIC_PARMS_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_PUBLIC_PARMS_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2191), (void *)_cffi_d_Tss2_MU_TPMT_PUBLIC_PARMS_Marshal },
  { "Tss2_MU_TPMT_PUBLIC_PARMS_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_PUBLIC_PARMS_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3003), (void *)_cffi_d_Tss2_MU_TPMT_PUBLIC_PARMS_Unmarshal },
  { "Tss2_MU_TPMT_PUBLIC_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_PUBLIC_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2997), (void *)_cffi_d_Tss2_MU_TPMT_PUBLIC_Unmarshal },
  { "Tss2_MU_TPMT_RSA_DECRYPT_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_RSA_DECRYPT_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2197), (void *)_cffi_d_Tss2_MU_TPMT_RSA_DECRYPT_Marshal },
  { "Tss2_MU_TPMT_RSA_DECRYPT_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_RSA_DECRYPT_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3009), (void *)_cffi_d_Tss2_MU_TPMT_RSA_DECRYPT_Unmarshal },
  { "Tss2_MU_TPMT_RSA_SCHEME_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_RSA_SCHEME_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2203), (void *)_cffi_d_Tss2_MU_TPMT_RSA_SCHEME_Marshal },
  { "Tss2_MU_TPMT_RSA_SCHEME_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_RSA_SCHEME_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3015), (void *)_cffi_d_Tss2_MU_TPMT_RSA_SCHEME_Unmarshal },
  { "Tss2_MU_TPMT_SENSITIVE_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_SENSITIVE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2209), (void *)_cffi_d_Tss2_MU_TPMT_SENSITIVE_Marshal },
  { "Tss2_MU_TPMT_SENSITIVE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_SENSITIVE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3021), (void *)_cffi_d_Tss2_MU_TPMT_SENSITIVE_Unmarshal },
  { "Tss2_MU_TPMT_SIGNATURE_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_SIGNATURE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2215), (void *)_cffi_d_Tss2_MU_TPMT_SIGNATURE_Marshal },
  { "Tss2_MU_TPMT_SIGNATURE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_SIGNATURE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3027), (void *)_cffi_d_Tss2_MU_TPMT_SIGNATURE_Unmarshal },
  { "Tss2_MU_TPMT_SIG_SCHEME_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_SIG_SCHEME_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2221), (void *)_cffi_d_Tss2_MU_TPMT_SIG_SCHEME_Marshal },
  { "Tss2_MU_TPMT_SIG_SCHEME_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_SIG_SCHEME_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3033), (void *)_cffi_d_Tss2_MU_TPMT_SIG_SCHEME_Unmarshal },
  { "Tss2_MU_TPMT_SYM_DEF_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_SYM_DEF_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2227), (void *)_cffi_d_Tss2_MU_TPMT_SYM_DEF_Marshal },
  { "Tss2_MU_TPMT_SYM_DEF_OBJECT_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_SYM_DEF_OBJECT_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2233), (void *)_cffi_d_Tss2_MU_TPMT_SYM_DEF_OBJECT_Marshal },
  { "Tss2_MU_TPMT_SYM_DEF_OBJECT_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_SYM_DEF_OBJECT_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3045), (void *)_cffi_d_Tss2_MU_TPMT_SYM_DEF_OBJECT_Unmarshal },
  { "Tss2_MU_TPMT_SYM_DEF_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_SYM_DEF_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3039), (void *)_cffi_d_Tss2_MU_TPMT_SYM_DEF_Unmarshal },
  { "Tss2_MU_TPMT_TK_AUTH_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_TK_AUTH_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2239), (void *)_cffi_d_Tss2_MU_TPMT_TK_AUTH_Marshal },
  { "Tss2_MU_TPMT_TK_AUTH_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_TK_AUTH_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3051), (void *)_cffi_d_Tss2_MU_TPMT_TK_AUTH_Unmarshal },
  { "Tss2_MU_TPMT_TK_CREATION_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_TK_CREATION_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2245), (void *)_cffi_d_Tss2_MU_TPMT_TK_CREATION_Marshal },
  { "Tss2_MU_TPMT_TK_CREATION_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_TK_CREATION_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3057), (void *)_cffi_d_Tss2_MU_TPMT_TK_CREATION_Unmarshal },
  { "Tss2_MU_TPMT_TK_HASHCHECK_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_TK_HASHCHECK_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2251), (void *)_cffi_d_Tss2_MU_TPMT_TK_HASHCHECK_Marshal },
  { "Tss2_MU_TPMT_TK_HASHCHECK_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_TK_HASHCHECK_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3063), (void *)_cffi_d_Tss2_MU_TPMT_TK_HASHCHECK_Unmarshal },
  { "Tss2_MU_TPMT_TK_VERIFIED_Marshal", (void *)_cffi_f_Tss2_MU_TPMT_TK_VERIFIED_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2257), (void *)_cffi_d_Tss2_MU_TPMT_TK_VERIFIED_Marshal },
  { "Tss2_MU_TPMT_TK_VERIFIED_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMT_TK_VERIFIED_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3069), (void *)_cffi_d_Tss2_MU_TPMT_TK_VERIFIED_Unmarshal },
  { "Tss2_MU_TPMU_ASYM_SCHEME_Marshal", (void *)_cffi_f_Tss2_MU_TPMU_ASYM_SCHEME_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2263), (void *)_cffi_d_Tss2_MU_TPMU_ASYM_SCHEME_Marshal },
  { "Tss2_MU_TPMU_ASYM_SCHEME_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMU_ASYM_SCHEME_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3111), (void *)_cffi_d_Tss2_MU_TPMU_ASYM_SCHEME_Unmarshal },
  { "Tss2_MU_TPMU_ATTEST_Marshal", (void *)_cffi_f_Tss2_MU_TPMU_ATTEST_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2270), (void *)_cffi_d_Tss2_MU_TPMU_ATTEST_Marshal },
  { "Tss2_MU_TPMU_ATTEST_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMU_ATTEST_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3118), (void *)_cffi_d_Tss2_MU_TPMU_ATTEST_Unmarshal },
  { "Tss2_MU_TPMU_CAPABILITIES_Marshal", (void *)_cffi_f_Tss2_MU_TPMU_CAPABILITIES_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2277), (void *)_cffi_d_Tss2_MU_TPMU_CAPABILITIES_Marshal },
  { "Tss2_MU_TPMU_CAPABILITIES_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMU_CAPABILITIES_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3125), (void *)_cffi_d_Tss2_MU_TPMU_CAPABILITIES_Unmarshal },
  { "Tss2_MU_TPMU_ENCRYPTED_SECRET_Marshal", (void *)_cffi_f_Tss2_MU_TPMU_ENCRYPTED_SECRET_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2284), (void *)_cffi_d_Tss2_MU_TPMU_ENCRYPTED_SECRET_Marshal },
  { "Tss2_MU_TPMU_ENCRYPTED_SECRET_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMU_ENCRYPTED_SECRET_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3132), (void *)_cffi_d_Tss2_MU_TPMU_ENCRYPTED_SECRET_Unmarshal },
  { "Tss2_MU_TPMU_HA_Marshal", (void *)_cffi_f_Tss2_MU_TPMU_HA_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2291), (void *)_cffi_d_Tss2_MU_TPMU_HA_Marshal },
  { "Tss2_MU_TPMU_HA_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMU_HA_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3139), (void *)_cffi_d_Tss2_MU_TPMU_HA_Unmarshal },
  { "Tss2_MU_TPMU_KDF_SCHEME_Marshal", (void *)_cffi_f_Tss2_MU_TPMU_KDF_SCHEME_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2298), (void *)_cffi_d_Tss2_MU_TPMU_KDF_SCHEME_Marshal },
  { "Tss2_MU_TPMU_KDF_SCHEME_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMU_KDF_SCHEME_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3146), (void *)_cffi_d_Tss2_MU_TPMU_KDF_SCHEME_Unmarshal },
  { "Tss2_MU_TPMU_NAME_Marshal", (void *)_cffi_f_Tss2_MU_TPMU_NAME_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2305), (void *)_cffi_d_Tss2_MU_TPMU_NAME_Marshal },
  { "Tss2_MU_TPMU_NAME_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMU_NAME_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3153), (void *)_cffi_d_Tss2_MU_TPMU_NAME_Unmarshal },
  { "Tss2_MU_TPMU_PUBLIC_ID_Marshal", (void *)_cffi_f_Tss2_MU_TPMU_PUBLIC_ID_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2312), (void *)_cffi_d_Tss2_MU_TPMU_PUBLIC_ID_Marshal },
  { "Tss2_MU_TPMU_PUBLIC_ID_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMU_PUBLIC_ID_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3160), (void *)_cffi_d_Tss2_MU_TPMU_PUBLIC_ID_Unmarshal },
  { "Tss2_MU_TPMU_PUBLIC_PARMS_Marshal", (void *)_cffi_f_Tss2_MU_TPMU_PUBLIC_PARMS_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2319), (void *)_cffi_d_Tss2_MU_TPMU_PUBLIC_PARMS_Marshal },
  { "Tss2_MU_TPMU_PUBLIC_PARMS_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMU_PUBLIC_PARMS_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3167), (void *)_cffi_d_Tss2_MU_TPMU_PUBLIC_PARMS_Unmarshal },
  { "Tss2_MU_TPMU_SCHEME_KEYEDHASH_Marshal", (void *)_cffi_f_Tss2_MU_TPMU_SCHEME_KEYEDHASH_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2326), (void *)_cffi_d_Tss2_MU_TPMU_SCHEME_KEYEDHASH_Marshal },
  { "Tss2_MU_TPMU_SCHEME_KEYEDHASH_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMU_SCHEME_KEYEDHASH_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3174), (void *)_cffi_d_Tss2_MU_TPMU_SCHEME_KEYEDHASH_Unmarshal },
  { "Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Marshal", (void *)_cffi_f_Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2333), (void *)_cffi_d_Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Marshal },
  { "Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3181), (void *)_cffi_d_Tss2_MU_TPMU_SENSITIVE_COMPOSITE_Unmarshal },
  { "Tss2_MU_TPMU_SIGNATURE_Marshal", (void *)_cffi_f_Tss2_MU_TPMU_SIGNATURE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2340), (void *)_cffi_d_Tss2_MU_TPMU_SIGNATURE_Marshal },
  { "Tss2_MU_TPMU_SIGNATURE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMU_SIGNATURE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3188), (void *)_cffi_d_Tss2_MU_TPMU_SIGNATURE_Unmarshal },
  { "Tss2_MU_TPMU_SIG_SCHEME_Marshal", (void *)_cffi_f_Tss2_MU_TPMU_SIG_SCHEME_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2347), (void *)_cffi_d_Tss2_MU_TPMU_SIG_SCHEME_Marshal },
  { "Tss2_MU_TPMU_SIG_SCHEME_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMU_SIG_SCHEME_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3195), (void *)_cffi_d_Tss2_MU_TPMU_SIG_SCHEME_Unmarshal },
  { "Tss2_MU_TPMU_SYM_KEY_BITS_Marshal", (void *)_cffi_f_Tss2_MU_TPMU_SYM_KEY_BITS_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2354), (void *)_cffi_d_Tss2_MU_TPMU_SYM_KEY_BITS_Marshal },
  { "Tss2_MU_TPMU_SYM_KEY_BITS_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMU_SYM_KEY_BITS_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3202), (void *)_cffi_d_Tss2_MU_TPMU_SYM_KEY_BITS_Unmarshal },
  { "Tss2_MU_TPMU_SYM_MODE_Marshal", (void *)_cffi_f_Tss2_MU_TPMU_SYM_MODE_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2361), (void *)_cffi_d_Tss2_MU_TPMU_SYM_MODE_Marshal },
  { "Tss2_MU_TPMU_SYM_MODE_Unmarshal", (void *)_cffi_f_Tss2_MU_TPMU_SYM_MODE_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3209), (void *)_cffi_d_Tss2_MU_TPMU_SYM_MODE_Unmarshal },
  { "Tss2_MU_UINT16_Marshal", (void *)_cffi_f_Tss2_MU_UINT16_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2443), (void *)_cffi_d_Tss2_MU_UINT16_Marshal },
  { "Tss2_MU_UINT16_Unmarshal", (void *)_cffi_f_Tss2_MU_UINT16_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3099), (void *)_cffi_d_Tss2_MU_UINT16_Unmarshal },
  { "Tss2_MU_UINT32_Marshal", (void *)_cffi_f_Tss2_MU_UINT32_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2453), (void *)_cffi_d_Tss2_MU_UINT32_Marshal },
  { "Tss2_MU_UINT32_Unmarshal", (void *)_cffi_f_Tss2_MU_UINT32_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3105), (void *)_cffi_d_Tss2_MU_UINT32_Unmarshal },
  { "Tss2_MU_UINT64_Marshal", (void *)_cffi_f_Tss2_MU_UINT64_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2459), (void *)_cffi_d_Tss2_MU_UINT64_Marshal },
  { "Tss2_MU_UINT64_Unmarshal", (void *)_cffi_f_Tss2_MU_UINT64_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3216), (void *)_cffi_d_Tss2_MU_UINT64_Unmarshal },
  { "Tss2_MU_UINT8_Marshal", (void *)_cffi_f_Tss2_MU_UINT8_Marshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3228), (void *)_cffi_d_Tss2_MU_UINT8_Marshal },
  { "Tss2_MU_UINT8_Unmarshal", (void *)_cffi_f_Tss2_MU_UINT8_Unmarshal, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 3222), (void *)_cffi_d_Tss2_MU_UINT8_Unmarshal },
  { "Tss2_RC_Decode", (void *)_cffi_f_Tss2_RC_Decode, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 5), (void *)_cffi_d_Tss2_RC_Decode },
  { "Tss2_RC_DecodeInfo", (void *)_cffi_f_Tss2_RC_DecodeInfo, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2449), (void *)_cffi_d_Tss2_RC_DecodeInfo },
  { "Tss2_RC_DecodeInfoError", (void *)_cffi_f_Tss2_RC_DecodeInfoError, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 2), (void *)_cffi_d_Tss2_RC_DecodeInfoError },
  { "Tss2_RC_SetHandler", (void *)_cffi_f_Tss2_RC_SetHandler, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 8), (void *)_cffi_d_Tss2_RC_SetHandler },
  { "Tss2_TctiLdr_Finalize", (void *)_cffi_f_Tss2_TctiLdr_Finalize, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 3258), (void *)_cffi_d_Tss2_TctiLdr_Finalize },
  { "Tss2_TctiLdr_FreeInfo", (void *)_cffi_f_Tss2_TctiLdr_FreeInfo, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_O, 3264), (void *)_cffi_d_Tss2_TctiLdr_FreeInfo },
  { "Tss2_TctiLdr_GetInfo", (void *)_cffi_f_Tss2_TctiLdr_GetInfo, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2410), (void *)_cffi_d_Tss2_TctiLdr_GetInfo },
  { "Tss2_TctiLdr_Initialize", (void *)_cffi_f_Tss2_TctiLdr_Initialize, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2406), (void *)_cffi_d_Tss2_TctiLdr_Initialize },
  { "Tss2_TctiLdr_Initialize_Ex", (void *)_cffi_f_Tss2_TctiLdr_Initialize_Ex, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2414), (void *)_cffi_d_Tss2_TctiLdr_Initialize_Ex },
  { "Tss2_Tcti_Spi_Helper_Init", (void *)_cffi_f_Tss2_Tcti_Spi_Helper_Init, _CFFI_OP(_CFFI_OP_CPYTHON_BLTN_V, 2376), (void *)_cffi_d_Tss2_Tcti_Spi_Helper_Init },
  { "_tcti_cancel_wrapper", (void *)&_cffi_externpy___tcti_cancel_wrapper, _CFFI_OP(_CFFI_OP_EXTERN_PYTHON, 3441), (void *)_tcti_cancel_wrapper },
  { "_tcti_finalize_wrapper", (void *)&_cffi_externpy___tcti_finalize_wrapper, _CFFI_OP(_CFFI_OP_EXTERN_PYTHON, 3538), (void *)_tcti_finalize_wrapper },
  { "_tcti_get_pollfds_wrapper", (void *)&_cffi_externpy___tcti_get_pollfds_wrapper, _CFFI_OP(_CFFI_OP_EXTERN_PYTHON, 3442), (void *)_tcti_get_pollfds_wrapper },
  { "_tcti_make_sticky_wrapper", (void *)&_cffi_externpy___tcti_make_sticky_wrapper, _CFFI_OP(_CFFI_OP_EXTERN_PYTHON, 3446), (void *)_tcti_make_sticky_wrapper },
  { "_tcti_receive_wrapper", (void *)&_cffi_externpy___tcti_receive_wrapper, _CFFI_OP(_CFFI_OP_EXTERN_PYTHON, 3444), (void *)_tcti_receive_wrapper },
  { "_tcti_set_locality_wrapper", (void *)&_cffi_externpy___tcti_set_locality_wrapper, _CFFI_OP(_CFFI_OP_EXTERN_PYTHON, 3447), (void *)_tcti_set_locality_wrapper },
  { "_tcti_spi_helper_finalize", (void *)&_cffi_externpy___tcti_spi_helper_finalize, _CFFI_OP(_CFFI_OP_EXTERN_PYTHON, 3539), (void *)_tcti_spi_helper_finalize },
  { "_tcti_spi_helper_sleep_ms", (void *)&_cffi_externpy___tcti_spi_helper_sleep_ms, _CFFI_OP(_CFFI_OP_EXTERN_PYTHON, 3451), (void *)_tcti_spi_helper_sleep_ms },
  { "_tcti_spi_helper_spi_acquire", (void *)&_cffi_externpy___tcti_spi_helper_spi_acquire, _CFFI_OP(_CFFI_OP_EXTERN_PYTHON, 3449), (void *)_tcti_spi_helper_spi_acquire },
  { "_tcti_spi_helper_spi_release", (void *)&_cffi_externpy___tcti_spi_helper_spi_release, _CFFI_OP(_CFFI_OP_EXTERN_PYTHON, 3449), (void *)_tcti_spi_helper_spi_release },
  { "_tcti_spi_helper_spi_transfer", (void *)&_cffi_externpy___tcti_spi_helper_spi_transfer, _CFFI_OP(_CFFI_OP_EXTERN_PYTHON, 3452), (void *)_tcti_spi_helper_spi_transfer },
  { "_tcti_spi_helper_start_timeout", (void *)&_cffi_externpy___tcti_spi_helper_start_timeout, _CFFI_OP(_CFFI_OP_EXTERN_PYTHON, 3451), (void *)_tcti_spi_helper_start_timeout },
  { "_tcti_spi_helper_timeout_expired", (void *)&_cffi_externpy___tcti_spi_helper_timeout_expired, _CFFI_OP(_CFFI_OP_EXTERN_PYTHON, 3450), (void *)_tcti_spi_helper_timeout_expired },
  { "_tcti_transmit_wrapper", (void *)&_cffi_externpy___tcti_transmit_wrapper, _CFFI_OP(_CFFI_OP_EXTERN_PYTHON, 3445), (void *)_tcti_transmit_wrapper },
};

static const struct _cffi_field_s _cffi_fields[] = {
  { "rsa_pk_encrypt", offsetof(ESYS_CRYPTO_CALLBACKS, rsa_pk_encrypt),
                      sizeof(((ESYS_CRYPTO_CALLBACKS *)0)->rsa_pk_encrypt),
                      _CFFI_OP(_CFFI_OP_NOOP, 3440) },
  { "hash_start", offsetof(ESYS_CRYPTO_CALLBACKS, hash_start),
                  sizeof(((ESYS_CRYPTO_CALLBACKS *)0)->hash_start),
                  _CFFI_OP(_CFFI_OP_NOOP, 3435) },
  { "hash_update", offsetof(ESYS_CRYPTO_CALLBACKS, hash_update),
                   sizeof(((ESYS_CRYPTO_CALLBACKS *)0)->hash_update),
                   _CFFI_OP(_CFFI_OP_NOOP, 3437) },
  { "hash_finish", offsetof(ESYS_CRYPTO_CALLBACKS, hash_finish),
                   sizeof(((ESYS_CRYPTO_CALLBACKS *)0)->hash_finish),
                   _CFFI_OP(_CFFI_OP_NOOP, 3436) },
  { "hash_abort", offsetof(ESYS_CRYPTO_CALLBACKS, hash_abort),
                  sizeof(((ESYS_CRYPTO_CALLBACKS *)0)->hash_abort),
                  _CFFI_OP(_CFFI_OP_NOOP, 3537) },
  { "hmac_start", offsetof(ESYS_CRYPTO_CALLBACKS, hmac_start),
                  sizeof(((ESYS_CRYPTO_CALLBACKS *)0)->hmac_start),
                  _CFFI_OP(_CFFI_OP_NOOP, 3434) },
  { "hmac_update", offsetof(ESYS_CRYPTO_CALLBACKS, hmac_update),
                   sizeof(((ESYS_CRYPTO_CALLBACKS *)0)->hmac_update),
                   _CFFI_OP(_CFFI_OP_NOOP, 3437) },
  { "hmac_finish", offsetof(ESYS_CRYPTO_CALLBACKS, hmac_finish),
                   sizeof(((ESYS_CRYPTO_CALLBACKS *)0)->hmac_finish),
                   _CFFI_OP(_CFFI_OP_NOOP, 3436) },
  { "hmac_abort", offsetof(ESYS_CRYPTO_CALLBACKS, hmac_abort),
                  sizeof(((ESYS_CRYPTO_CALLBACKS *)0)->hmac_abort),
                  _CFFI_OP(_CFFI_OP_NOOP, 3537) },
  { "get_random2b", offsetof(ESYS_CRYPTO_CALLBACKS, get_random2b),
                    sizeof(((ESYS_CRYPTO_CALLBACKS *)0)->get_random2b),
                    _CFFI_OP(_CFFI_OP_NOOP, 3438) },
  { "get_ecdh_point", offsetof(ESYS_CRYPTO_CALLBACKS, get_ecdh_point),
                      sizeof(((ESYS_CRYPTO_CALLBACKS *)0)->get_ecdh_point),
                      _CFFI_OP(_CFFI_OP_NOOP, 3439) },
  { "aes_encrypt", offsetof(ESYS_CRYPTO_CALLBACKS, aes_encrypt),
                   sizeof(((ESYS_CRYPTO_CALLBACKS *)0)->aes_encrypt),
                   _CFFI_OP(_CFFI_OP_NOOP, 3448) },
  { "aes_decrypt", offsetof(ESYS_CRYPTO_CALLBACKS, aes_decrypt),
                   sizeof(((ESYS_CRYPTO_CALLBACKS *)0)->aes_decrypt),
                   _CFFI_OP(_CFFI_OP_NOOP, 3448) },
  { "init", offsetof(ESYS_CRYPTO_CALLBACKS, init),
            sizeof(((ESYS_CRYPTO_CALLBACKS *)0)->init),
            _CFFI_OP(_CFFI_OP_NOOP, 3449) },
  { "userdata", offsetof(ESYS_CRYPTO_CALLBACKS, userdata),
                sizeof(((ESYS_CRYPTO_CALLBACKS *)0)->userdata),
                _CFFI_OP(_CFFI_OP_NOOP, 1620) },
  { "common", offsetof(PYTCTI_CONTEXT, common),
              sizeof(((PYTCTI_CONTEXT *)0)->common),
              _CFFI_OP(_CFFI_OP_NOOP, 3419) },
  { "thiz", offsetof(PYTCTI_CONTEXT, thiz),
            sizeof(((PYTCTI_CONTEXT *)0)->thiz),
            _CFFI_OP(_CFFI_OP_NOOP, 1620) },
  { "size", offsetof(TPM2B_ATTEST, size),
            sizeof(((TPM2B_ATTEST *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "attestationData", offsetof(TPM2B_ATTEST, attestationData),
                       sizeof(((TPM2B_ATTEST *)0)->attestationData),
                       _CFFI_OP(_CFFI_OP_NOOP, 3461) },
  { "size", offsetof(TPM2B_CONTEXT_DATA, size),
            sizeof(((TPM2B_CONTEXT_DATA *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_CONTEXT_DATA, buffer),
              sizeof(((TPM2B_CONTEXT_DATA *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3463) },
  { "size", offsetof(TPM2B_CONTEXT_SENSITIVE, size),
            sizeof(((TPM2B_CONTEXT_SENSITIVE *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_CONTEXT_SENSITIVE, buffer),
              sizeof(((TPM2B_CONTEXT_SENSITIVE *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3465) },
  { "size", offsetof(TPM2B_CREATION_DATA, size),
            sizeof(((TPM2B_CREATION_DATA *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "creationData", offsetof(TPM2B_CREATION_DATA, creationData),
                    sizeof(((TPM2B_CREATION_DATA *)0)->creationData),
                    _CFFI_OP(_CFFI_OP_NOOP, 3340) },
  { "size", offsetof(TPM2B_DATA, size),
            sizeof(((TPM2B_DATA *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_DATA, buffer),
              sizeof(((TPM2B_DATA *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3467) },
  { "size", offsetof(TPM2B_DERIVE, size),
            sizeof(((TPM2B_DERIVE *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_DERIVE, buffer),
              sizeof(((TPM2B_DERIVE *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3469) },
  { "size", offsetof(TPM2B_DIGEST, size),
            sizeof(((TPM2B_DIGEST *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_DIGEST, buffer),
              sizeof(((TPM2B_DIGEST *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3471) },
  { "size", offsetof(TPM2B_ECC_PARAMETER, size),
            sizeof(((TPM2B_ECC_PARAMETER *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_ECC_PARAMETER, buffer),
              sizeof(((TPM2B_ECC_PARAMETER *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3473) },
  { "size", offsetof(TPM2B_ECC_POINT, size),
            sizeof(((TPM2B_ECC_POINT *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "point", offsetof(TPM2B_ECC_POINT, point),
             sizeof(((TPM2B_ECC_POINT *)0)->point),
             _CFFI_OP(_CFFI_OP_NOOP, 3344) },
  { "size", offsetof(TPM2B_ENCRYPTED_SECRET, size),
            sizeof(((TPM2B_ENCRYPTED_SECRET *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "secret", offsetof(TPM2B_ENCRYPTED_SECRET, secret),
              sizeof(((TPM2B_ENCRYPTED_SECRET *)0)->secret),
              _CFFI_OP(_CFFI_OP_NOOP, 3475) },
  { "size", offsetof(TPM2B_EVENT, size),
            sizeof(((TPM2B_EVENT *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_EVENT, buffer),
              sizeof(((TPM2B_EVENT *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3477) },
  { "size", offsetof(TPM2B_ID_OBJECT, size),
            sizeof(((TPM2B_ID_OBJECT *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "credential", offsetof(TPM2B_ID_OBJECT, credential),
                  sizeof(((TPM2B_ID_OBJECT *)0)->credential),
                  _CFFI_OP(_CFFI_OP_NOOP, 3479) },
  { "size", offsetof(TPM2B_IV, size),
            sizeof(((TPM2B_IV *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_IV, buffer),
              sizeof(((TPM2B_IV *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3481) },
  { "size", offsetof(TPM2B_LABEL, size),
            sizeof(((TPM2B_LABEL *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_LABEL, buffer),
              sizeof(((TPM2B_LABEL *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3483) },
  { "size", offsetof(TPM2B_MAX_BUFFER, size),
            sizeof(((TPM2B_MAX_BUFFER *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_MAX_BUFFER, buffer),
              sizeof(((TPM2B_MAX_BUFFER *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3485) },
  { "size", offsetof(TPM2B_MAX_CAP_BUFFER, size),
            sizeof(((TPM2B_MAX_CAP_BUFFER *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_MAX_CAP_BUFFER, buffer),
              sizeof(((TPM2B_MAX_CAP_BUFFER *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3487) },
  { "size", offsetof(TPM2B_MAX_NV_BUFFER, size),
            sizeof(((TPM2B_MAX_NV_BUFFER *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_MAX_NV_BUFFER, buffer),
              sizeof(((TPM2B_MAX_NV_BUFFER *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3489) },
  { "size", offsetof(TPM2B_NAME, size),
            sizeof(((TPM2B_NAME *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "name", offsetof(TPM2B_NAME, name),
            sizeof(((TPM2B_NAME *)0)->name),
            _CFFI_OP(_CFFI_OP_NOOP, 3491) },
  { "size", offsetof(TPM2B_NV_PUBLIC, size),
            sizeof(((TPM2B_NV_PUBLIC *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "nvPublic", offsetof(TPM2B_NV_PUBLIC, nvPublic),
                sizeof(((TPM2B_NV_PUBLIC *)0)->nvPublic),
                _CFFI_OP(_CFFI_OP_NOOP, 3351) },
  { "size", offsetof(TPM2B_PRIVATE, size),
            sizeof(((TPM2B_PRIVATE *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_PRIVATE, buffer),
              sizeof(((TPM2B_PRIVATE *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3493) },
  { "size", offsetof(TPM2B_PRIVATE_KEY_RSA, size),
            sizeof(((TPM2B_PRIVATE_KEY_RSA *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_PRIVATE_KEY_RSA, buffer),
              sizeof(((TPM2B_PRIVATE_KEY_RSA *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3495) },
  { "size", offsetof(TPM2B_PRIVATE_VENDOR_SPECIFIC, size),
            sizeof(((TPM2B_PRIVATE_VENDOR_SPECIFIC *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_PRIVATE_VENDOR_SPECIFIC, buffer),
              sizeof(((TPM2B_PRIVATE_VENDOR_SPECIFIC *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3497) },
  { "size", offsetof(TPM2B_PUBLIC, size),
            sizeof(((TPM2B_PUBLIC *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "publicArea", offsetof(TPM2B_PUBLIC, publicArea),
                  sizeof(((TPM2B_PUBLIC *)0)->publicArea),
                  _CFFI_OP(_CFFI_OP_NOOP, 3384) },
  { "size", offsetof(TPM2B_PUBLIC_KEY_RSA, size),
            sizeof(((TPM2B_PUBLIC_KEY_RSA *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_PUBLIC_KEY_RSA, buffer),
              sizeof(((TPM2B_PUBLIC_KEY_RSA *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3499) },
  { "size", offsetof(TPM2B_SENSITIVE, size),
            sizeof(((TPM2B_SENSITIVE *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "sensitiveArea", offsetof(TPM2B_SENSITIVE, sensitiveArea),
                     sizeof(((TPM2B_SENSITIVE *)0)->sensitiveArea),
                     _CFFI_OP(_CFFI_OP_NOOP, 3388) },
  { "size", offsetof(TPM2B_SENSITIVE_CREATE, size),
            sizeof(((TPM2B_SENSITIVE_CREATE *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "sensitive", offsetof(TPM2B_SENSITIVE_CREATE, sensitive),
                 sizeof(((TPM2B_SENSITIVE_CREATE *)0)->sensitive),
                 _CFFI_OP(_CFFI_OP_NOOP, 3361) },
  { "size", offsetof(TPM2B_SENSITIVE_DATA, size),
            sizeof(((TPM2B_SENSITIVE_DATA *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_SENSITIVE_DATA, buffer),
              sizeof(((TPM2B_SENSITIVE_DATA *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3501) },
  { "size", offsetof(TPM2B_SYM_KEY, size),
            sizeof(((TPM2B_SYM_KEY *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_SYM_KEY, buffer),
              sizeof(((TPM2B_SYM_KEY *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3503) },
  { "size", offsetof(TPM2B_TEMPLATE, size),
            sizeof(((TPM2B_TEMPLATE *)0)->size),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "buffer", offsetof(TPM2B_TEMPLATE, buffer),
              sizeof(((TPM2B_TEMPLATE *)0)->buffer),
              _CFFI_OP(_CFFI_OP_NOOP, 3505) },
  { "count", offsetof(TPML_ACT_DATA, count),
             sizeof(((TPML_ACT_DATA *)0)->count),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "actData", offsetof(TPML_ACT_DATA, actData),
               sizeof(((TPML_ACT_DATA *)0)->actData),
               _CFFI_OP(_CFFI_OP_NOOP, 3321) },
  { "count", offsetof(TPML_AC_CAPABILITIES, count),
             sizeof(((TPML_AC_CAPABILITIES *)0)->count),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "acCapabilities", offsetof(TPML_AC_CAPABILITIES, acCapabilities),
                      sizeof(((TPML_AC_CAPABILITIES *)0)->acCapabilities),
                      _CFFI_OP(_CFFI_OP_NOOP, 3324) },
  { "count", offsetof(TPML_ALG, count),
             sizeof(((TPML_ALG *)0)->count),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "algorithms", offsetof(TPML_ALG, algorithms),
                  sizeof(((TPML_ALG *)0)->algorithms),
                  _CFFI_OP(_CFFI_OP_NOOP, 3430) },
  { "count", offsetof(TPML_ALG_PROPERTY, count),
             sizeof(((TPML_ALG_PROPERTY *)0)->count),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "algProperties", offsetof(TPML_ALG_PROPERTY, algProperties),
                     sizeof(((TPML_ALG_PROPERTY *)0)->algProperties),
                     _CFFI_OP(_CFFI_OP_NOOP, 3328) },
  { "count", offsetof(TPML_CC, count),
             sizeof(((TPML_CC *)0)->count),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "commandCodes", offsetof(TPML_CC, commandCodes),
                    sizeof(((TPML_CC *)0)->commandCodes),
                    _CFFI_OP(_CFFI_OP_NOOP, 3453) },
  { "count", offsetof(TPML_CCA, count),
             sizeof(((TPML_CCA *)0)->count),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "commandAttributes", offsetof(TPML_CCA, commandAttributes),
                         sizeof(((TPML_CCA *)0)->commandAttributes),
                         _CFFI_OP(_CFFI_OP_NOOP, 3455) },
  { "count", offsetof(TPML_DIGEST, count),
             sizeof(((TPML_DIGEST *)0)->count),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "digests", offsetof(TPML_DIGEST, digests),
               sizeof(((TPML_DIGEST *)0)->digests),
               _CFFI_OP(_CFFI_OP_NOOP, 3281) },
  { "count", offsetof(TPML_DIGEST_VALUES, count),
             sizeof(((TPML_DIGEST_VALUES *)0)->count),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "digests", offsetof(TPML_DIGEST_VALUES, digests),
               sizeof(((TPML_DIGEST_VALUES *)0)->digests),
               _CFFI_OP(_CFFI_OP_NOOP, 3380) },
  { "count", offsetof(TPML_ECC_CURVE, count),
             sizeof(((TPML_ECC_CURVE *)0)->count),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "eccCurves", offsetof(TPML_ECC_CURVE, eccCurves),
                 sizeof(((TPML_ECC_CURVE *)0)->eccCurves),
                 _CFFI_OP(_CFFI_OP_NOOP, 3432) },
  { "count", offsetof(TPML_HANDLE, count),
             sizeof(((TPML_HANDLE *)0)->count),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "handle", offsetof(TPML_HANDLE, handle),
              sizeof(((TPML_HANDLE *)0)->handle),
              _CFFI_OP(_CFFI_OP_NOOP, 3457) },
  { "count", offsetof(TPML_INTEL_PTT_PROPERTY, count),
             sizeof(((TPML_INTEL_PTT_PROPERTY *)0)->count),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "property", offsetof(TPML_INTEL_PTT_PROPERTY, property),
                sizeof(((TPML_INTEL_PTT_PROPERTY *)0)->property),
                _CFFI_OP(_CFFI_OP_NOOP, 3459) },
  { "count", offsetof(TPML_PCR_SELECTION, count),
             sizeof(((TPML_PCR_SELECTION *)0)->count),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "pcrSelections", offsetof(TPML_PCR_SELECTION, pcrSelections),
                     sizeof(((TPML_PCR_SELECTION *)0)->pcrSelections),
                     _CFFI_OP(_CFFI_OP_NOOP, 3354) },
  { "count", offsetof(TPML_TAGGED_PCR_PROPERTY, count),
             sizeof(((TPML_TAGGED_PCR_PROPERTY *)0)->count),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "pcrProperty", offsetof(TPML_TAGGED_PCR_PROPERTY, pcrProperty),
                   sizeof(((TPML_TAGGED_PCR_PROPERTY *)0)->pcrProperty),
                   _CFFI_OP(_CFFI_OP_NOOP, 3367) },
  { "count", offsetof(TPML_TAGGED_POLICY, count),
             sizeof(((TPML_TAGGED_POLICY *)0)->count),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "policies", offsetof(TPML_TAGGED_POLICY, policies),
                sizeof(((TPML_TAGGED_POLICY *)0)->policies),
                _CFFI_OP(_CFFI_OP_NOOP, 3370) },
  { "count", offsetof(TPML_TAGGED_TPM_PROPERTY, count),
             sizeof(((TPML_TAGGED_TPM_PROPERTY *)0)->count),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "tpmProperty", offsetof(TPML_TAGGED_TPM_PROPERTY, tpmProperty),
                   sizeof(((TPML_TAGGED_TPM_PROPERTY *)0)->tpmProperty),
                   _CFFI_OP(_CFFI_OP_NOOP, 3373) },
  { "handle", offsetof(TPMS_ACT_DATA, handle),
              sizeof(((TPMS_ACT_DATA *)0)->handle),
              _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "timeout", offsetof(TPMS_ACT_DATA, timeout),
               sizeof(((TPMS_ACT_DATA *)0)->timeout),
               _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "attributes", offsetof(TPMS_ACT_DATA, attributes),
                  sizeof(((TPMS_ACT_DATA *)0)->attributes),
                  _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "tag", offsetof(TPMS_AC_OUTPUT, tag),
           sizeof(((TPMS_AC_OUTPUT *)0)->tag),
           _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "data", offsetof(TPMS_AC_OUTPUT, data),
            sizeof(((TPMS_AC_OUTPUT *)0)->data),
            _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "curveID", offsetof(TPMS_ALGORITHM_DETAIL_ECC, curveID),
               sizeof(((TPMS_ALGORITHM_DETAIL_ECC *)0)->curveID),
               _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "keySize", offsetof(TPMS_ALGORITHM_DETAIL_ECC, keySize),
               sizeof(((TPMS_ALGORITHM_DETAIL_ECC *)0)->keySize),
               _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "kdf", offsetof(TPMS_ALGORITHM_DETAIL_ECC, kdf),
           sizeof(((TPMS_ALGORITHM_DETAIL_ECC *)0)->kdf),
           _CFFI_OP(_CFFI_OP_NOOP, 3382) },
  { "sign", offsetof(TPMS_ALGORITHM_DETAIL_ECC, sign),
            sizeof(((TPMS_ALGORITHM_DETAIL_ECC *)0)->sign),
            _CFFI_OP(_CFFI_OP_NOOP, 3378) },
  { "p", offsetof(TPMS_ALGORITHM_DETAIL_ECC, p),
         sizeof(((TPMS_ALGORITHM_DETAIL_ECC *)0)->p),
         _CFFI_OP(_CFFI_OP_NOOP, 3283) },
  { "a", offsetof(TPMS_ALGORITHM_DETAIL_ECC, a),
         sizeof(((TPMS_ALGORITHM_DETAIL_ECC *)0)->a),
         _CFFI_OP(_CFFI_OP_NOOP, 3283) },
  { "b", offsetof(TPMS_ALGORITHM_DETAIL_ECC, b),
         sizeof(((TPMS_ALGORITHM_DETAIL_ECC *)0)->b),
         _CFFI_OP(_CFFI_OP_NOOP, 3283) },
  { "gX", offsetof(TPMS_ALGORITHM_DETAIL_ECC, gX),
          sizeof(((TPMS_ALGORITHM_DETAIL_ECC *)0)->gX),
          _CFFI_OP(_CFFI_OP_NOOP, 3283) },
  { "gY", offsetof(TPMS_ALGORITHM_DETAIL_ECC, gY),
          sizeof(((TPMS_ALGORITHM_DETAIL_ECC *)0)->gY),
          _CFFI_OP(_CFFI_OP_NOOP, 3283) },
  { "n", offsetof(TPMS_ALGORITHM_DETAIL_ECC, n),
         sizeof(((TPMS_ALGORITHM_DETAIL_ECC *)0)->n),
         _CFFI_OP(_CFFI_OP_NOOP, 3283) },
  { "h", offsetof(TPMS_ALGORITHM_DETAIL_ECC, h),
         sizeof(((TPMS_ALGORITHM_DETAIL_ECC *)0)->h),
         _CFFI_OP(_CFFI_OP_NOOP, 3283) },
  { "alg", offsetof(TPMS_ALG_PROPERTY, alg),
           sizeof(((TPMS_ALG_PROPERTY *)0)->alg),
           _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "algProperties", offsetof(TPMS_ALG_PROPERTY, algProperties),
                     sizeof(((TPMS_ALG_PROPERTY *)0)->algProperties),
                     _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "symmetric", offsetof(TPMS_ASYM_PARMS, symmetric),
                 sizeof(((TPMS_ASYM_PARMS *)0)->symmetric),
                 _CFFI_OP(_CFFI_OP_NOOP, 3392) },
  { "scheme", offsetof(TPMS_ASYM_PARMS, scheme),
              sizeof(((TPMS_ASYM_PARMS *)0)->scheme),
              _CFFI_OP(_CFFI_OP_NOOP, 3377) },
  { "magic", offsetof(TPMS_ATTEST, magic),
             sizeof(((TPMS_ATTEST *)0)->magic),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "type", offsetof(TPMS_ATTEST, type),
            sizeof(((TPMS_ATTEST *)0)->type),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "qualifiedSigner", offsetof(TPMS_ATTEST, qualifiedSigner),
                       sizeof(((TPMS_ATTEST *)0)->qualifiedSigner),
                       _CFFI_OP(_CFFI_OP_NOOP, 3293) },
  { "extraData", offsetof(TPMS_ATTEST, extraData),
                 sizeof(((TPMS_ATTEST *)0)->extraData),
                 _CFFI_OP(_CFFI_OP_NOOP, 3278) },
  { "clockInfo", offsetof(TPMS_ATTEST, clockInfo),
                 sizeof(((TPMS_ATTEST *)0)->clockInfo),
                 _CFFI_OP(_CFFI_OP_NOOP, 3336) },
  { "firmwareVersion", offsetof(TPMS_ATTEST, firmwareVersion),
                       sizeof(((TPMS_ATTEST *)0)->firmwareVersion),
                       _CFFI_OP(_CFFI_OP_NOOP, 1517) },
  { "attested", offsetof(TPMS_ATTEST, attested),
                sizeof(((TPMS_ATTEST *)0)->attested),
                _CFFI_OP(_CFFI_OP_NOOP, 3398) },
  { "sessionHandle", offsetof(TPMS_AUTH_COMMAND, sessionHandle),
                     sizeof(((TPMS_AUTH_COMMAND *)0)->sessionHandle),
                     _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "nonce", offsetof(TPMS_AUTH_COMMAND, nonce),
             sizeof(((TPMS_AUTH_COMMAND *)0)->nonce),
             _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "sessionAttributes", offsetof(TPMS_AUTH_COMMAND, sessionAttributes),
                         sizeof(((TPMS_AUTH_COMMAND *)0)->sessionAttributes),
                         _CFFI_OP(_CFFI_OP_NOOP, 9) },
  { "hmac", offsetof(TPMS_AUTH_COMMAND, hmac),
            sizeof(((TPMS_AUTH_COMMAND *)0)->hmac),
            _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "nonce", offsetof(TPMS_AUTH_RESPONSE, nonce),
             sizeof(((TPMS_AUTH_RESPONSE *)0)->nonce),
             _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "sessionAttributes", offsetof(TPMS_AUTH_RESPONSE, sessionAttributes),
                         sizeof(((TPMS_AUTH_RESPONSE *)0)->sessionAttributes),
                         _CFFI_OP(_CFFI_OP_NOOP, 9) },
  { "hmac", offsetof(TPMS_AUTH_RESPONSE, hmac),
            sizeof(((TPMS_AUTH_RESPONSE *)0)->hmac),
            _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "capability", offsetof(TPMS_CAPABILITY_DATA, capability),
                  sizeof(((TPMS_CAPABILITY_DATA *)0)->capability),
                  _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "data", offsetof(TPMS_CAPABILITY_DATA, data),
            sizeof(((TPMS_CAPABILITY_DATA *)0)->data),
            _CFFI_OP(_CFFI_OP_NOOP, 3399) },
  { "name", offsetof(TPMS_CERTIFY_INFO, name),
            sizeof(((TPMS_CERTIFY_INFO *)0)->name),
            _CFFI_OP(_CFFI_OP_NOOP, 3293) },
  { "qualifiedName", offsetof(TPMS_CERTIFY_INFO, qualifiedName),
                     sizeof(((TPMS_CERTIFY_INFO *)0)->qualifiedName),
                     _CFFI_OP(_CFFI_OP_NOOP, 3293) },
  { "clock", offsetof(TPMS_CLOCK_INFO, clock),
             sizeof(((TPMS_CLOCK_INFO *)0)->clock),
             _CFFI_OP(_CFFI_OP_NOOP, 1517) },
  { "resetCount", offsetof(TPMS_CLOCK_INFO, resetCount),
                  sizeof(((TPMS_CLOCK_INFO *)0)->resetCount),
                  _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "restartCount", offsetof(TPMS_CLOCK_INFO, restartCount),
                    sizeof(((TPMS_CLOCK_INFO *)0)->restartCount),
                    _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "safe", offsetof(TPMS_CLOCK_INFO, safe),
            sizeof(((TPMS_CLOCK_INFO *)0)->safe),
            _CFFI_OP(_CFFI_OP_NOOP, 9) },
  { "auditCounter", offsetof(TPMS_COMMAND_AUDIT_INFO, auditCounter),
                    sizeof(((TPMS_COMMAND_AUDIT_INFO *)0)->auditCounter),
                    _CFFI_OP(_CFFI_OP_NOOP, 1517) },
  { "digestAlg", offsetof(TPMS_COMMAND_AUDIT_INFO, digestAlg),
                 sizeof(((TPMS_COMMAND_AUDIT_INFO *)0)->digestAlg),
                 _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "auditDigest", offsetof(TPMS_COMMAND_AUDIT_INFO, auditDigest),
                   sizeof(((TPMS_COMMAND_AUDIT_INFO *)0)->auditDigest),
                   _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "commandDigest", offsetof(TPMS_COMMAND_AUDIT_INFO, commandDigest),
                     sizeof(((TPMS_COMMAND_AUDIT_INFO *)0)->commandDigest),
                     _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "sequence", offsetof(TPMS_CONTEXT, sequence),
                sizeof(((TPMS_CONTEXT *)0)->sequence),
                _CFFI_OP(_CFFI_OP_NOOP, 1517) },
  { "savedHandle", offsetof(TPMS_CONTEXT, savedHandle),
                   sizeof(((TPMS_CONTEXT *)0)->savedHandle),
                   _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "hierarchy", offsetof(TPMS_CONTEXT, hierarchy),
                 sizeof(((TPMS_CONTEXT *)0)->hierarchy),
                 _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "contextBlob", offsetof(TPMS_CONTEXT, contextBlob),
                   sizeof(((TPMS_CONTEXT *)0)->contextBlob),
                   _CFFI_OP(_CFFI_OP_NOOP, 3275) },
  { "integrity", offsetof(TPMS_CONTEXT_DATA, integrity),
                 sizeof(((TPMS_CONTEXT_DATA *)0)->integrity),
                 _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "encrypted", offsetof(TPMS_CONTEXT_DATA, encrypted),
                 sizeof(((TPMS_CONTEXT_DATA *)0)->encrypted),
                 _CFFI_OP(_CFFI_OP_NOOP, 3276) },
  { "pcrSelect", offsetof(TPMS_CREATION_DATA, pcrSelect),
                 sizeof(((TPMS_CREATION_DATA *)0)->pcrSelect),
                 _CFFI_OP(_CFFI_OP_NOOP, 3316) },
  { "pcrDigest", offsetof(TPMS_CREATION_DATA, pcrDigest),
                 sizeof(((TPMS_CREATION_DATA *)0)->pcrDigest),
                 _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "locality", offsetof(TPMS_CREATION_DATA, locality),
                sizeof(((TPMS_CREATION_DATA *)0)->locality),
                _CFFI_OP(_CFFI_OP_NOOP, 9) },
  { "parentNameAlg", offsetof(TPMS_CREATION_DATA, parentNameAlg),
                     sizeof(((TPMS_CREATION_DATA *)0)->parentNameAlg),
                     _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "parentName", offsetof(TPMS_CREATION_DATA, parentName),
                  sizeof(((TPMS_CREATION_DATA *)0)->parentName),
                  _CFFI_OP(_CFFI_OP_NOOP, 3293) },
  { "parentQualifiedName", offsetof(TPMS_CREATION_DATA, parentQualifiedName),
                           sizeof(((TPMS_CREATION_DATA *)0)->parentQualifiedName),
                           _CFFI_OP(_CFFI_OP_NOOP, 3293) },
  { "outsideInfo", offsetof(TPMS_CREATION_DATA, outsideInfo),
                   sizeof(((TPMS_CREATION_DATA *)0)->outsideInfo),
                   _CFFI_OP(_CFFI_OP_NOOP, 3278) },
  { "objectName", offsetof(TPMS_CREATION_INFO, objectName),
                  sizeof(((TPMS_CREATION_INFO *)0)->objectName),
                  _CFFI_OP(_CFFI_OP_NOOP, 3293) },
  { "creationHash", offsetof(TPMS_CREATION_INFO, creationHash),
                    sizeof(((TPMS_CREATION_INFO *)0)->creationHash),
                    _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "label", offsetof(TPMS_DERIVE, label),
             sizeof(((TPMS_DERIVE *)0)->label),
             _CFFI_OP(_CFFI_OP_NOOP, 3289) },
  { "context", offsetof(TPMS_DERIVE, context),
               sizeof(((TPMS_DERIVE *)0)->context),
               _CFFI_OP(_CFFI_OP_NOOP, 3289) },
  { "symmetric", offsetof(TPMS_ECC_PARMS, symmetric),
                 sizeof(((TPMS_ECC_PARMS *)0)->symmetric),
                 _CFFI_OP(_CFFI_OP_NOOP, 3392) },
  { "scheme", offsetof(TPMS_ECC_PARMS, scheme),
              sizeof(((TPMS_ECC_PARMS *)0)->scheme),
              _CFFI_OP(_CFFI_OP_NOOP, 3378) },
  { "curveID", offsetof(TPMS_ECC_PARMS, curveID),
               sizeof(((TPMS_ECC_PARMS *)0)->curveID),
               _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "kdf", offsetof(TPMS_ECC_PARMS, kdf),
           sizeof(((TPMS_ECC_PARMS *)0)->kdf),
           _CFFI_OP(_CFFI_OP_NOOP, 3382) },
  { "x", offsetof(TPMS_ECC_POINT, x),
         sizeof(((TPMS_ECC_POINT *)0)->x),
         _CFFI_OP(_CFFI_OP_NOOP, 3283) },
  { "y", offsetof(TPMS_ECC_POINT, y),
         sizeof(((TPMS_ECC_POINT *)0)->y),
         _CFFI_OP(_CFFI_OP_NOOP, 3283) },
  { "empty", offsetof(TPMS_EMPTY, empty),
             sizeof(((TPMS_EMPTY *)0)->empty),
             _CFFI_OP(_CFFI_OP_NOOP, 3507) },
  { "integrityHMAC", offsetof(TPMS_ID_OBJECT, integrityHMAC),
                     sizeof(((TPMS_ID_OBJECT *)0)->integrityHMAC),
                     _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "encIdentity", offsetof(TPMS_ID_OBJECT, encIdentity),
                   sizeof(((TPMS_ID_OBJECT *)0)->encIdentity),
                   _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "scheme", offsetof(TPMS_KEYEDHASH_PARMS, scheme),
              sizeof(((TPMS_KEYEDHASH_PARMS *)0)->scheme),
              _CFFI_OP(_CFFI_OP_NOOP, 3383) },
  { "indexName", offsetof(TPMS_NV_CERTIFY_INFO, indexName),
                 sizeof(((TPMS_NV_CERTIFY_INFO *)0)->indexName),
                 _CFFI_OP(_CFFI_OP_NOOP, 3293) },
  { "offset", offsetof(TPMS_NV_CERTIFY_INFO, offset),
              sizeof(((TPMS_NV_CERTIFY_INFO *)0)->offset),
              _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "nvContents", offsetof(TPMS_NV_CERTIFY_INFO, nvContents),
                  sizeof(((TPMS_NV_CERTIFY_INFO *)0)->nvContents),
                  _CFFI_OP(_CFFI_OP_NOOP, 3292) },
  { "indexName", offsetof(TPMS_NV_DIGEST_CERTIFY_INFO, indexName),
                 sizeof(((TPMS_NV_DIGEST_CERTIFY_INFO *)0)->indexName),
                 _CFFI_OP(_CFFI_OP_NOOP, 3293) },
  { "nvDigest", offsetof(TPMS_NV_DIGEST_CERTIFY_INFO, nvDigest),
                sizeof(((TPMS_NV_DIGEST_CERTIFY_INFO *)0)->nvDigest),
                _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "pinCount", offsetof(TPMS_NV_PIN_COUNTER_PARAMETERS, pinCount),
                sizeof(((TPMS_NV_PIN_COUNTER_PARAMETERS *)0)->pinCount),
                _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "pinLimit", offsetof(TPMS_NV_PIN_COUNTER_PARAMETERS, pinLimit),
                sizeof(((TPMS_NV_PIN_COUNTER_PARAMETERS *)0)->pinLimit),
                _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "nvIndex", offsetof(TPMS_NV_PUBLIC, nvIndex),
               sizeof(((TPMS_NV_PUBLIC *)0)->nvIndex),
               _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "nameAlg", offsetof(TPMS_NV_PUBLIC, nameAlg),
               sizeof(((TPMS_NV_PUBLIC *)0)->nameAlg),
               _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "attributes", offsetof(TPMS_NV_PUBLIC, attributes),
                  sizeof(((TPMS_NV_PUBLIC *)0)->attributes),
                  _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "authPolicy", offsetof(TPMS_NV_PUBLIC, authPolicy),
                  sizeof(((TPMS_NV_PUBLIC *)0)->authPolicy),
                  _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "dataSize", offsetof(TPMS_NV_PUBLIC, dataSize),
                sizeof(((TPMS_NV_PUBLIC *)0)->dataSize),
                _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "sizeofSelect", offsetof(TPMS_PCR_SELECT, sizeofSelect),
                    sizeof(((TPMS_PCR_SELECT *)0)->sizeofSelect),
                    _CFFI_OP(_CFFI_OP_NOOP, 9) },
  { "pcrSelect", offsetof(TPMS_PCR_SELECT, pcrSelect),
                 sizeof(((TPMS_PCR_SELECT *)0)->pcrSelect),
                 _CFFI_OP(_CFFI_OP_NOOP, 3509) },
  { "hash", offsetof(TPMS_PCR_SELECTION, hash),
            sizeof(((TPMS_PCR_SELECTION *)0)->hash),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "sizeofSelect", offsetof(TPMS_PCR_SELECTION, sizeofSelect),
                    sizeof(((TPMS_PCR_SELECTION *)0)->sizeofSelect),
                    _CFFI_OP(_CFFI_OP_NOOP, 9) },
  { "pcrSelect", offsetof(TPMS_PCR_SELECTION, pcrSelect),
                 sizeof(((TPMS_PCR_SELECTION *)0)->pcrSelect),
                 _CFFI_OP(_CFFI_OP_NOOP, 3511) },
  { "pcrSelect", offsetof(TPMS_QUOTE_INFO, pcrSelect),
                 sizeof(((TPMS_QUOTE_INFO *)0)->pcrSelect),
                 _CFFI_OP(_CFFI_OP_NOOP, 3316) },
  { "pcrDigest", offsetof(TPMS_QUOTE_INFO, pcrDigest),
                 sizeof(((TPMS_QUOTE_INFO *)0)->pcrDigest),
                 _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "symmetric", offsetof(TPMS_RSA_PARMS, symmetric),
                 sizeof(((TPMS_RSA_PARMS *)0)->symmetric),
                 _CFFI_OP(_CFFI_OP_NOOP, 3392) },
  { "scheme", offsetof(TPMS_RSA_PARMS, scheme),
              sizeof(((TPMS_RSA_PARMS *)0)->scheme),
              _CFFI_OP(_CFFI_OP_NOOP, 3387) },
  { "keyBits", offsetof(TPMS_RSA_PARMS, keyBits),
               sizeof(((TPMS_RSA_PARMS *)0)->keyBits),
               _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "exponent", offsetof(TPMS_RSA_PARMS, exponent),
                sizeof(((TPMS_RSA_PARMS *)0)->exponent),
                _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "hashAlg", offsetof(TPMS_SCHEME_ECDAA, hashAlg),
               sizeof(((TPMS_SCHEME_ECDAA *)0)->hashAlg),
               _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "count", offsetof(TPMS_SCHEME_ECDAA, count),
             sizeof(((TPMS_SCHEME_ECDAA *)0)->count),
             _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "hashAlg", offsetof(TPMS_SCHEME_HASH, hashAlg),
               sizeof(((TPMS_SCHEME_HASH *)0)->hashAlg),
               _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "hashAlg", offsetof(TPMS_SCHEME_XOR, hashAlg),
               sizeof(((TPMS_SCHEME_XOR *)0)->hashAlg),
               _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "kdf", offsetof(TPMS_SCHEME_XOR, kdf),
           sizeof(((TPMS_SCHEME_XOR *)0)->kdf),
           _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "userAuth", offsetof(TPMS_SENSITIVE_CREATE, userAuth),
                sizeof(((TPMS_SENSITIVE_CREATE *)0)->userAuth),
                _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "data", offsetof(TPMS_SENSITIVE_CREATE, data),
            sizeof(((TPMS_SENSITIVE_CREATE *)0)->data),
            _CFFI_OP(_CFFI_OP_NOOP, 3302) },
  { "exclusiveSession", offsetof(TPMS_SESSION_AUDIT_INFO, exclusiveSession),
                        sizeof(((TPMS_SESSION_AUDIT_INFO *)0)->exclusiveSession),
                        _CFFI_OP(_CFFI_OP_NOOP, 9) },
  { "sessionDigest", offsetof(TPMS_SESSION_AUDIT_INFO, sessionDigest),
                     sizeof(((TPMS_SESSION_AUDIT_INFO *)0)->sessionDigest),
                     _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "hash", offsetof(TPMS_SIGNATURE_ECC, hash),
            sizeof(((TPMS_SIGNATURE_ECC *)0)->hash),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "signatureR", offsetof(TPMS_SIGNATURE_ECC, signatureR),
                  sizeof(((TPMS_SIGNATURE_ECC *)0)->signatureR),
                  _CFFI_OP(_CFFI_OP_NOOP, 3283) },
  { "signatureS", offsetof(TPMS_SIGNATURE_ECC, signatureS),
                  sizeof(((TPMS_SIGNATURE_ECC *)0)->signatureS),
                  _CFFI_OP(_CFFI_OP_NOOP, 3283) },
  { "hash", offsetof(TPMS_SIGNATURE_RSA, hash),
            sizeof(((TPMS_SIGNATURE_RSA *)0)->hash),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "sig", offsetof(TPMS_SIGNATURE_RSA, sig),
           sizeof(((TPMS_SIGNATURE_RSA *)0)->sig),
           _CFFI_OP(_CFFI_OP_NOOP, 3299) },
  { "sym", offsetof(TPMS_SYMCIPHER_PARMS, sym),
           sizeof(((TPMS_SYMCIPHER_PARMS *)0)->sym),
           _CFFI_OP(_CFFI_OP_NOOP, 3392) },
  { "tag", offsetof(TPMS_TAGGED_PCR_SELECT, tag),
           sizeof(((TPMS_TAGGED_PCR_SELECT *)0)->tag),
           _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "sizeofSelect", offsetof(TPMS_TAGGED_PCR_SELECT, sizeofSelect),
                    sizeof(((TPMS_TAGGED_PCR_SELECT *)0)->sizeofSelect),
                    _CFFI_OP(_CFFI_OP_NOOP, 9) },
  { "pcrSelect", offsetof(TPMS_TAGGED_PCR_SELECT, pcrSelect),
                 sizeof(((TPMS_TAGGED_PCR_SELECT *)0)->pcrSelect),
                 _CFFI_OP(_CFFI_OP_NOOP, 3513) },
  { "handle", offsetof(TPMS_TAGGED_POLICY, handle),
              sizeof(((TPMS_TAGGED_POLICY *)0)->handle),
              _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "policyHash", offsetof(TPMS_TAGGED_POLICY, policyHash),
                  sizeof(((TPMS_TAGGED_POLICY *)0)->policyHash),
                  _CFFI_OP(_CFFI_OP_NOOP, 3379) },
  { "property", offsetof(TPMS_TAGGED_PROPERTY, property),
                sizeof(((TPMS_TAGGED_PROPERTY *)0)->property),
                _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "value", offsetof(TPMS_TAGGED_PROPERTY, value),
             sizeof(((TPMS_TAGGED_PROPERTY *)0)->value),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "time", offsetof(TPMS_TIME_ATTEST_INFO, time),
            sizeof(((TPMS_TIME_ATTEST_INFO *)0)->time),
            _CFFI_OP(_CFFI_OP_NOOP, 3376) },
  { "firmwareVersion", offsetof(TPMS_TIME_ATTEST_INFO, firmwareVersion),
                       sizeof(((TPMS_TIME_ATTEST_INFO *)0)->firmwareVersion),
                       _CFFI_OP(_CFFI_OP_NOOP, 1517) },
  { "time", offsetof(TPMS_TIME_INFO, time),
            sizeof(((TPMS_TIME_INFO *)0)->time),
            _CFFI_OP(_CFFI_OP_NOOP, 1517) },
  { "clockInfo", offsetof(TPMS_TIME_INFO, clockInfo),
                 sizeof(((TPMS_TIME_INFO *)0)->clockInfo),
                 _CFFI_OP(_CFFI_OP_NOOP, 3336) },
  { "scheme", offsetof(TPMT_ASYM_SCHEME, scheme),
              sizeof(((TPMT_ASYM_SCHEME *)0)->scheme),
              _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "details", offsetof(TPMT_ASYM_SCHEME, details),
               sizeof(((TPMT_ASYM_SCHEME *)0)->details),
               _CFFI_OP(_CFFI_OP_NOOP, 3397) },
  { "scheme", offsetof(TPMT_ECC_SCHEME, scheme),
              sizeof(((TPMT_ECC_SCHEME *)0)->scheme),
              _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "details", offsetof(TPMT_ECC_SCHEME, details),
               sizeof(((TPMT_ECC_SCHEME *)0)->details),
               _CFFI_OP(_CFFI_OP_NOOP, 3397) },
  { "hashAlg", offsetof(TPMT_HA, hashAlg),
               sizeof(((TPMT_HA *)0)->hashAlg),
               _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "digest", offsetof(TPMT_HA, digest),
              sizeof(((TPMT_HA *)0)->digest),
              _CFFI_OP(_CFFI_OP_NOOP, 3401) },
  { "scheme", offsetof(TPMT_KDF_SCHEME, scheme),
              sizeof(((TPMT_KDF_SCHEME *)0)->scheme),
              _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "details", offsetof(TPMT_KDF_SCHEME, details),
               sizeof(((TPMT_KDF_SCHEME *)0)->details),
               _CFFI_OP(_CFFI_OP_NOOP, 3402) },
  { "scheme", offsetof(TPMT_KEYEDHASH_SCHEME, scheme),
              sizeof(((TPMT_KEYEDHASH_SCHEME *)0)->scheme),
              _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "details", offsetof(TPMT_KEYEDHASH_SCHEME, details),
               sizeof(((TPMT_KEYEDHASH_SCHEME *)0)->details),
               _CFFI_OP(_CFFI_OP_NOOP, 3406) },
  { "type", offsetof(TPMT_PUBLIC, type),
            sizeof(((TPMT_PUBLIC *)0)->type),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "nameAlg", offsetof(TPMT_PUBLIC, nameAlg),
               sizeof(((TPMT_PUBLIC *)0)->nameAlg),
               _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "objectAttributes", offsetof(TPMT_PUBLIC, objectAttributes),
                        sizeof(((TPMT_PUBLIC *)0)->objectAttributes),
                        _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "authPolicy", offsetof(TPMT_PUBLIC, authPolicy),
                  sizeof(((TPMT_PUBLIC *)0)->authPolicy),
                  _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "parameters", offsetof(TPMT_PUBLIC, parameters),
                  sizeof(((TPMT_PUBLIC *)0)->parameters),
                  _CFFI_OP(_CFFI_OP_NOOP, 3405) },
  { "unique", offsetof(TPMT_PUBLIC, unique),
              sizeof(((TPMT_PUBLIC *)0)->unique),
              _CFFI_OP(_CFFI_OP_NOOP, 3404) },
  { "type", offsetof(TPMT_PUBLIC_PARMS, type),
            sizeof(((TPMT_PUBLIC_PARMS *)0)->type),
            _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "parameters", offsetof(TPMT_PUBLIC_PARMS, parameters),
                  sizeof(((TPMT_PUBLIC_PARMS *)0)->parameters),
                  _CFFI_OP(_CFFI_OP_NOOP, 3405) },
  { "scheme", offsetof(TPMT_RSA_DECRYPT, scheme),
              sizeof(((TPMT_RSA_DECRYPT *)0)->scheme),
              _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "details", offsetof(TPMT_RSA_DECRYPT, details),
               sizeof(((TPMT_RSA_DECRYPT *)0)->details),
               _CFFI_OP(_CFFI_OP_NOOP, 3397) },
  { "scheme", offsetof(TPMT_RSA_SCHEME, scheme),
              sizeof(((TPMT_RSA_SCHEME *)0)->scheme),
              _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "details", offsetof(TPMT_RSA_SCHEME, details),
               sizeof(((TPMT_RSA_SCHEME *)0)->details),
               _CFFI_OP(_CFFI_OP_NOOP, 3397) },
  { "sensitiveType", offsetof(TPMT_SENSITIVE, sensitiveType),
                     sizeof(((TPMT_SENSITIVE *)0)->sensitiveType),
                     _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "authValue", offsetof(TPMT_SENSITIVE, authValue),
                 sizeof(((TPMT_SENSITIVE *)0)->authValue),
                 _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "seedValue", offsetof(TPMT_SENSITIVE, seedValue),
                 sizeof(((TPMT_SENSITIVE *)0)->seedValue),
                 _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "sensitive", offsetof(TPMT_SENSITIVE, sensitive),
                 sizeof(((TPMT_SENSITIVE *)0)->sensitive),
                 _CFFI_OP(_CFFI_OP_NOOP, 3407) },
  { "sigAlg", offsetof(TPMT_SIGNATURE, sigAlg),
              sizeof(((TPMT_SIGNATURE *)0)->sigAlg),
              _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "signature", offsetof(TPMT_SIGNATURE, signature),
                 sizeof(((TPMT_SIGNATURE *)0)->signature),
                 _CFFI_OP(_CFFI_OP_NOOP, 3409) },
  { "scheme", offsetof(TPMT_SIG_SCHEME, scheme),
              sizeof(((TPMT_SIG_SCHEME *)0)->scheme),
              _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "details", offsetof(TPMT_SIG_SCHEME, details),
               sizeof(((TPMT_SIG_SCHEME *)0)->details),
               _CFFI_OP(_CFFI_OP_NOOP, 3410) },
  { "algorithm", offsetof(TPMT_SYM_DEF, algorithm),
                 sizeof(((TPMT_SYM_DEF *)0)->algorithm),
                 _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "keyBits", offsetof(TPMT_SYM_DEF, keyBits),
               sizeof(((TPMT_SYM_DEF *)0)->keyBits),
               _CFFI_OP(_CFFI_OP_NOOP, 3411) },
  { "mode", offsetof(TPMT_SYM_DEF, mode),
            sizeof(((TPMT_SYM_DEF *)0)->mode),
            _CFFI_OP(_CFFI_OP_NOOP, 3412) },
  { "algorithm", offsetof(TPMT_SYM_DEF_OBJECT, algorithm),
                 sizeof(((TPMT_SYM_DEF_OBJECT *)0)->algorithm),
                 _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "keyBits", offsetof(TPMT_SYM_DEF_OBJECT, keyBits),
               sizeof(((TPMT_SYM_DEF_OBJECT *)0)->keyBits),
               _CFFI_OP(_CFFI_OP_NOOP, 3411) },
  { "mode", offsetof(TPMT_SYM_DEF_OBJECT, mode),
            sizeof(((TPMT_SYM_DEF_OBJECT *)0)->mode),
            _CFFI_OP(_CFFI_OP_NOOP, 3412) },
  { "tag", offsetof(TPMT_TK_AUTH, tag),
           sizeof(((TPMT_TK_AUTH *)0)->tag),
           _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "hierarchy", offsetof(TPMT_TK_AUTH, hierarchy),
                 sizeof(((TPMT_TK_AUTH *)0)->hierarchy),
                 _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "digest", offsetof(TPMT_TK_AUTH, digest),
              sizeof(((TPMT_TK_AUTH *)0)->digest),
              _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "tag", offsetof(TPMT_TK_CREATION, tag),
           sizeof(((TPMT_TK_CREATION *)0)->tag),
           _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "hierarchy", offsetof(TPMT_TK_CREATION, hierarchy),
                 sizeof(((TPMT_TK_CREATION *)0)->hierarchy),
                 _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "digest", offsetof(TPMT_TK_CREATION, digest),
              sizeof(((TPMT_TK_CREATION *)0)->digest),
              _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "tag", offsetof(TPMT_TK_HASHCHECK, tag),
           sizeof(((TPMT_TK_HASHCHECK *)0)->tag),
           _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "hierarchy", offsetof(TPMT_TK_HASHCHECK, hierarchy),
                 sizeof(((TPMT_TK_HASHCHECK *)0)->hierarchy),
                 _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "digest", offsetof(TPMT_TK_HASHCHECK, digest),
              sizeof(((TPMT_TK_HASHCHECK *)0)->digest),
              _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "tag", offsetof(TPMT_TK_VERIFIED, tag),
           sizeof(((TPMT_TK_VERIFIED *)0)->tag),
           _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "hierarchy", offsetof(TPMT_TK_VERIFIED, hierarchy),
                 sizeof(((TPMT_TK_VERIFIED *)0)->hierarchy),
                 _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "digest", offsetof(TPMT_TK_VERIFIED, digest),
              sizeof(((TPMT_TK_VERIFIED *)0)->digest),
              _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "tssCreator", offsetof(TSS2_ABI_VERSION, tssCreator),
                  sizeof(((TSS2_ABI_VERSION *)0)->tssCreator),
                  _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "tssFamily", offsetof(TSS2_ABI_VERSION, tssFamily),
                 sizeof(((TSS2_ABI_VERSION *)0)->tssFamily),
                 _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "tssLevel", offsetof(TSS2_ABI_VERSION, tssLevel),
                sizeof(((TSS2_ABI_VERSION *)0)->tssLevel),
                _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "tssVersion", offsetof(TSS2_ABI_VERSION, tssVersion),
                  sizeof(((TSS2_ABI_VERSION *)0)->tssVersion),
                  _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "layer", offsetof(TSS2_RC_INFO, layer),
             sizeof(((TSS2_RC_INFO *)0)->layer),
             _CFFI_OP(_CFFI_OP_NOOP, 9) },
  { "format", offsetof(TSS2_RC_INFO, format),
              sizeof(((TSS2_RC_INFO *)0)->format),
              _CFFI_OP(_CFFI_OP_NOOP, 9) },
  { "error", offsetof(TSS2_RC_INFO, error),
             sizeof(((TSS2_RC_INFO *)0)->error),
             _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "parameter", offsetof(TSS2_RC_INFO, parameter),
                 sizeof(((TSS2_RC_INFO *)0)->parameter),
                 _CFFI_OP(_CFFI_OP_NOOP, 9) },
  { "session", offsetof(TSS2_RC_INFO, session),
               sizeof(((TSS2_RC_INFO *)0)->session),
               _CFFI_OP(_CFFI_OP_NOOP, 9) },
  { "handle", offsetof(TSS2_RC_INFO, handle),
              sizeof(((TSS2_RC_INFO *)0)->handle),
              _CFFI_OP(_CFFI_OP_NOOP, 9) },
  { "magic", offsetof(TSS2_TCTI_CONTEXT_COMMON_V1, magic),
             sizeof(((TSS2_TCTI_CONTEXT_COMMON_V1 *)0)->magic),
             _CFFI_OP(_CFFI_OP_NOOP, 1517) },
  { "version", offsetof(TSS2_TCTI_CONTEXT_COMMON_V1, version),
               sizeof(((TSS2_TCTI_CONTEXT_COMMON_V1 *)0)->version),
               _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "transmit", offsetof(TSS2_TCTI_CONTEXT_COMMON_V1, transmit),
                sizeof(((TSS2_TCTI_CONTEXT_COMMON_V1 *)0)->transmit),
                _CFFI_OP(_CFFI_OP_NOOP, 3445) },
  { "receive", offsetof(TSS2_TCTI_CONTEXT_COMMON_V1, receive),
               sizeof(((TSS2_TCTI_CONTEXT_COMMON_V1 *)0)->receive),
               _CFFI_OP(_CFFI_OP_NOOP, 3444) },
  { "finalize", offsetof(TSS2_TCTI_CONTEXT_COMMON_V1, finalize),
                sizeof(((TSS2_TCTI_CONTEXT_COMMON_V1 *)0)->finalize),
                _CFFI_OP(_CFFI_OP_NOOP, 3538) },
  { "cancel", offsetof(TSS2_TCTI_CONTEXT_COMMON_V1, cancel),
              sizeof(((TSS2_TCTI_CONTEXT_COMMON_V1 *)0)->cancel),
              _CFFI_OP(_CFFI_OP_NOOP, 3441) },
  { "getPollHandles", offsetof(TSS2_TCTI_CONTEXT_COMMON_V1, getPollHandles),
                      sizeof(((TSS2_TCTI_CONTEXT_COMMON_V1 *)0)->getPollHandles),
                      _CFFI_OP(_CFFI_OP_NOOP, 3442) },
  { "setLocality", offsetof(TSS2_TCTI_CONTEXT_COMMON_V1, setLocality),
                   sizeof(((TSS2_TCTI_CONTEXT_COMMON_V1 *)0)->setLocality),
                   _CFFI_OP(_CFFI_OP_NOOP, 3447) },
  { "v1", offsetof(TSS2_TCTI_CONTEXT_COMMON_V2, v1),
          sizeof(((TSS2_TCTI_CONTEXT_COMMON_V2 *)0)->v1),
          _CFFI_OP(_CFFI_OP_NOOP, 3418) },
  { "makeSticky", offsetof(TSS2_TCTI_CONTEXT_COMMON_V2, makeSticky),
                  sizeof(((TSS2_TCTI_CONTEXT_COMMON_V2 *)0)->makeSticky),
                  _CFFI_OP(_CFFI_OP_NOOP, 3446) },
  { "version", offsetof(TSS2_TCTI_INFO, version),
               sizeof(((TSS2_TCTI_INFO *)0)->version),
               _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "name", offsetof(TSS2_TCTI_INFO, name),
            sizeof(((TSS2_TCTI_INFO *)0)->name),
            _CFFI_OP(_CFFI_OP_NOOP, 10) },
  { "description", offsetof(TSS2_TCTI_INFO, description),
                   sizeof(((TSS2_TCTI_INFO *)0)->description),
                   _CFFI_OP(_CFFI_OP_NOOP, 10) },
  { "config_help", offsetof(TSS2_TCTI_INFO, config_help),
                   sizeof(((TSS2_TCTI_INFO *)0)->config_help),
                   _CFFI_OP(_CFFI_OP_NOOP, 10) },
  { "init", offsetof(TSS2_TCTI_INFO, init),
            sizeof(((TSS2_TCTI_INFO *)0)->init),
            _CFFI_OP(_CFFI_OP_NOOP, 3443) },
  { "user_data", offsetof(TSS2_TCTI_SPI_HELPER_PLATFORM, user_data),
                 sizeof(((TSS2_TCTI_SPI_HELPER_PLATFORM *)0)->user_data),
                 _CFFI_OP(_CFFI_OP_NOOP, 1620) },
  { "sleep_ms", offsetof(TSS2_TCTI_SPI_HELPER_PLATFORM, sleep_ms),
                sizeof(((TSS2_TCTI_SPI_HELPER_PLATFORM *)0)->sleep_ms),
                _CFFI_OP(_CFFI_OP_NOOP, 3451) },
  { "start_timeout", offsetof(TSS2_TCTI_SPI_HELPER_PLATFORM, start_timeout),
                     sizeof(((TSS2_TCTI_SPI_HELPER_PLATFORM *)0)->start_timeout),
                     _CFFI_OP(_CFFI_OP_NOOP, 3451) },
  { "timeout_expired", offsetof(TSS2_TCTI_SPI_HELPER_PLATFORM, timeout_expired),
                       sizeof(((TSS2_TCTI_SPI_HELPER_PLATFORM *)0)->timeout_expired),
                       _CFFI_OP(_CFFI_OP_NOOP, 3450) },
  { "spi_acquire", offsetof(TSS2_TCTI_SPI_HELPER_PLATFORM, spi_acquire),
                   sizeof(((TSS2_TCTI_SPI_HELPER_PLATFORM *)0)->spi_acquire),
                   _CFFI_OP(_CFFI_OP_NOOP, 3449) },
  { "spi_release", offsetof(TSS2_TCTI_SPI_HELPER_PLATFORM, spi_release),
                   sizeof(((TSS2_TCTI_SPI_HELPER_PLATFORM *)0)->spi_release),
                   _CFFI_OP(_CFFI_OP_NOOP, 3449) },
  { "spi_transfer", offsetof(TSS2_TCTI_SPI_HELPER_PLATFORM, spi_transfer),
                    sizeof(((TSS2_TCTI_SPI_HELPER_PLATFORM *)0)->spi_transfer),
                    _CFFI_OP(_CFFI_OP_NOOP, 3452) },
  { "finalize", offsetof(TSS2_TCTI_SPI_HELPER_PLATFORM, finalize),
                sizeof(((TSS2_TCTI_SPI_HELPER_PLATFORM *)0)->finalize),
                _CFFI_OP(_CFFI_OP_NOOP, 3539) },
  { "integrityOuter", offsetof(_PRIVATE, integrityOuter),
                      sizeof(((_PRIVATE *)0)->integrityOuter),
                      _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "integrityInner", offsetof(_PRIVATE, integrityInner),
                      sizeof(((_PRIVATE *)0)->integrityInner),
                      _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "sensitive", offsetof(_PRIVATE, sensitive),
                 sizeof(((_PRIVATE *)0)->sensitive),
                 _CFFI_OP(_CFFI_OP_NOOP, 3300) },
  { "fd", offsetof(TSS2_TCTI_POLL_HANDLE, fd),
          sizeof(((TSS2_TCTI_POLL_HANDLE *)0)->fd),
          _CFFI_OP(_CFFI_OP_NOOP, 3243) },
  { "events", offsetof(TSS2_TCTI_POLL_HANDLE, events),
              sizeof(((TSS2_TCTI_POLL_HANDLE *)0)->events),
              _CFFI_OP(_CFFI_OP_NOOP, 3429) },
  { "revents", offsetof(TSS2_TCTI_POLL_HANDLE, revents),
               sizeof(((TSS2_TCTI_POLL_HANDLE *)0)->revents),
               _CFFI_OP(_CFFI_OP_NOOP, 3429) },
  { "ecdh", offsetof(TPMU_ASYM_SCHEME, ecdh),
            sizeof(((TPMU_ASYM_SCHEME *)0)->ecdh),
            _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "ecmqv", offsetof(TPMU_ASYM_SCHEME, ecmqv),
             sizeof(((TPMU_ASYM_SCHEME *)0)->ecmqv),
             _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "rsassa", offsetof(TPMU_ASYM_SCHEME, rsassa),
              sizeof(((TPMU_ASYM_SCHEME *)0)->rsassa),
              _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "rsapss", offsetof(TPMU_ASYM_SCHEME, rsapss),
              sizeof(((TPMU_ASYM_SCHEME *)0)->rsapss),
              _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "ecdsa", offsetof(TPMU_ASYM_SCHEME, ecdsa),
             sizeof(((TPMU_ASYM_SCHEME *)0)->ecdsa),
             _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "ecdaa", offsetof(TPMU_ASYM_SCHEME, ecdaa),
             sizeof(((TPMU_ASYM_SCHEME *)0)->ecdaa),
             _CFFI_OP(_CFFI_OP_NOOP, 3358) },
  { "sm2", offsetof(TPMU_ASYM_SCHEME, sm2),
           sizeof(((TPMU_ASYM_SCHEME *)0)->sm2),
           _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "ecschnorr", offsetof(TPMU_ASYM_SCHEME, ecschnorr),
                 sizeof(((TPMU_ASYM_SCHEME *)0)->ecschnorr),
                 _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "rsaes", offsetof(TPMU_ASYM_SCHEME, rsaes),
             sizeof(((TPMU_ASYM_SCHEME *)0)->rsaes),
             _CFFI_OP(_CFFI_OP_NOOP, 3345) },
  { "oaep", offsetof(TPMU_ASYM_SCHEME, oaep),
            sizeof(((TPMU_ASYM_SCHEME *)0)->oaep),
            _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "anySig", offsetof(TPMU_ASYM_SCHEME, anySig),
              sizeof(((TPMU_ASYM_SCHEME *)0)->anySig),
              _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "null", offsetof(TPMU_ASYM_SCHEME, null),
            sizeof(((TPMU_ASYM_SCHEME *)0)->null),
            _CFFI_OP(_CFFI_OP_NOOP, 3345) },
  { "certify", offsetof(TPMU_ATTEST, certify),
               sizeof(((TPMU_ATTEST *)0)->certify),
               _CFFI_OP(_CFFI_OP_NOOP, 3335) },
  { "creation", offsetof(TPMU_ATTEST, creation),
                sizeof(((TPMU_ATTEST *)0)->creation),
                _CFFI_OP(_CFFI_OP_NOOP, 3341) },
  { "quote", offsetof(TPMU_ATTEST, quote),
             sizeof(((TPMU_ATTEST *)0)->quote),
             _CFFI_OP(_CFFI_OP_NOOP, 3356) },
  { "commandAudit", offsetof(TPMU_ATTEST, commandAudit),
                    sizeof(((TPMU_ATTEST *)0)->commandAudit),
                    _CFFI_OP(_CFFI_OP_NOOP, 3337) },
  { "sessionAudit", offsetof(TPMU_ATTEST, sessionAudit),
                    sizeof(((TPMU_ATTEST *)0)->sessionAudit),
                    _CFFI_OP(_CFFI_OP_NOOP, 3362) },
  { "time", offsetof(TPMU_ATTEST, time),
            sizeof(((TPMU_ATTEST *)0)->time),
            _CFFI_OP(_CFFI_OP_NOOP, 3375) },
  { "nv", offsetof(TPMU_ATTEST, nv),
          sizeof(((TPMU_ATTEST *)0)->nv),
          _CFFI_OP(_CFFI_OP_NOOP, 3348) },
  { "algorithms", offsetof(TPMU_CAPABILITIES, algorithms),
                  sizeof(((TPMU_CAPABILITIES *)0)->algorithms),
                  _CFFI_OP(_CFFI_OP_NOOP, 3308) },
  { "handles", offsetof(TPMU_CAPABILITIES, handles),
               sizeof(((TPMU_CAPABILITIES *)0)->handles),
               _CFFI_OP(_CFFI_OP_NOOP, 3314) },
  { "command", offsetof(TPMU_CAPABILITIES, command),
               sizeof(((TPMU_CAPABILITIES *)0)->command),
               _CFFI_OP(_CFFI_OP_NOOP, 3310) },
  { "ppCommands", offsetof(TPMU_CAPABILITIES, ppCommands),
                  sizeof(((TPMU_CAPABILITIES *)0)->ppCommands),
                  _CFFI_OP(_CFFI_OP_NOOP, 3309) },
  { "auditCommands", offsetof(TPMU_CAPABILITIES, auditCommands),
                     sizeof(((TPMU_CAPABILITIES *)0)->auditCommands),
                     _CFFI_OP(_CFFI_OP_NOOP, 3309) },
  { "assignedPCR", offsetof(TPMU_CAPABILITIES, assignedPCR),
                   sizeof(((TPMU_CAPABILITIES *)0)->assignedPCR),
                   _CFFI_OP(_CFFI_OP_NOOP, 3316) },
  { "tpmProperties", offsetof(TPMU_CAPABILITIES, tpmProperties),
                     sizeof(((TPMU_CAPABILITIES *)0)->tpmProperties),
                     _CFFI_OP(_CFFI_OP_NOOP, 3319) },
  { "pcrProperties", offsetof(TPMU_CAPABILITIES, pcrProperties),
                     sizeof(((TPMU_CAPABILITIES *)0)->pcrProperties),
                     _CFFI_OP(_CFFI_OP_NOOP, 3317) },
  { "eccCurves", offsetof(TPMU_CAPABILITIES, eccCurves),
                 sizeof(((TPMU_CAPABILITIES *)0)->eccCurves),
                 _CFFI_OP(_CFFI_OP_NOOP, 3313) },
  { "authPolicies", offsetof(TPMU_CAPABILITIES, authPolicies),
                    sizeof(((TPMU_CAPABILITIES *)0)->authPolicies),
                    _CFFI_OP(_CFFI_OP_NOOP, 3318) },
  { "actData", offsetof(TPMU_CAPABILITIES, actData),
               sizeof(((TPMU_CAPABILITIES *)0)->actData),
               _CFFI_OP(_CFFI_OP_NOOP, 3305) },
  { "vendor", offsetof(TPMU_CAPABILITIES, vendor),
              sizeof(((TPMU_CAPABILITIES *)0)->vendor),
              _CFFI_OP(_CFFI_OP_NOOP, 3291) },
  { "ecc", offsetof(TPMU_ENCRYPTED_SECRET, ecc),
           sizeof(((TPMU_ENCRYPTED_SECRET *)0)->ecc),
           _CFFI_OP(_CFFI_OP_NOOP, 3515) },
  { "rsa", offsetof(TPMU_ENCRYPTED_SECRET, rsa),
           sizeof(((TPMU_ENCRYPTED_SECRET *)0)->rsa),
           _CFFI_OP(_CFFI_OP_NOOP, 3519) },
  { "symmetric", offsetof(TPMU_ENCRYPTED_SECRET, symmetric),
                 sizeof(((TPMU_ENCRYPTED_SECRET *)0)->symmetric),
                 _CFFI_OP(_CFFI_OP_NOOP, 3521) },
  { "keyedHash", offsetof(TPMU_ENCRYPTED_SECRET, keyedHash),
                 sizeof(((TPMU_ENCRYPTED_SECRET *)0)->keyedHash),
                 _CFFI_OP(_CFFI_OP_NOOP, 3517) },
  { "sha", offsetof(TPMU_HA, sha),
           sizeof(((TPMU_HA *)0)->sha),
           _CFFI_OP(_CFFI_OP_NOOP, 3523) },
  { "sha1", offsetof(TPMU_HA, sha1),
            sizeof(((TPMU_HA *)0)->sha1),
            _CFFI_OP(_CFFI_OP_NOOP, 3525) },
  { "sha256", offsetof(TPMU_HA, sha256),
              sizeof(((TPMU_HA *)0)->sha256),
              _CFFI_OP(_CFFI_OP_NOOP, 3527) },
  { "sha384", offsetof(TPMU_HA, sha384),
              sizeof(((TPMU_HA *)0)->sha384),
              _CFFI_OP(_CFFI_OP_NOOP, 3529) },
  { "sha512", offsetof(TPMU_HA, sha512),
              sizeof(((TPMU_HA *)0)->sha512),
              _CFFI_OP(_CFFI_OP_NOOP, 3531) },
  { "sm3_256", offsetof(TPMU_HA, sm3_256),
               sizeof(((TPMU_HA *)0)->sm3_256),
               _CFFI_OP(_CFFI_OP_NOOP, 3533) },
  { "mgf1", offsetof(TPMU_KDF_SCHEME, mgf1),
            sizeof(((TPMU_KDF_SCHEME *)0)->mgf1),
            _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "kdf1_sp800_56a", offsetof(TPMU_KDF_SCHEME, kdf1_sp800_56a),
                      sizeof(((TPMU_KDF_SCHEME *)0)->kdf1_sp800_56a),
                      _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "kdf2", offsetof(TPMU_KDF_SCHEME, kdf2),
            sizeof(((TPMU_KDF_SCHEME *)0)->kdf2),
            _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "kdf1_sp800_108", offsetof(TPMU_KDF_SCHEME, kdf1_sp800_108),
                      sizeof(((TPMU_KDF_SCHEME *)0)->kdf1_sp800_108),
                      _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "null", offsetof(TPMU_KDF_SCHEME, null),
            sizeof(((TPMU_KDF_SCHEME *)0)->null),
            _CFFI_OP(_CFFI_OP_NOOP, 3345) },
  { "digest", offsetof(TPMU_NAME, digest),
              sizeof(((TPMU_NAME *)0)->digest),
              _CFFI_OP(_CFFI_OP_NOOP, 3379) },
  { "handle", offsetof(TPMU_NAME, handle),
              sizeof(((TPMU_NAME *)0)->handle),
              _CFFI_OP(_CFFI_OP_NOOP, 6) },
  { "keyedHash", offsetof(TPMU_PUBLIC_ID, keyedHash),
                 sizeof(((TPMU_PUBLIC_ID *)0)->keyedHash),
                 _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "sym", offsetof(TPMU_PUBLIC_ID, sym),
           sizeof(((TPMU_PUBLIC_ID *)0)->sym),
           _CFFI_OP(_CFFI_OP_NOOP, 3280) },
  { "rsa", offsetof(TPMU_PUBLIC_ID, rsa),
           sizeof(((TPMU_PUBLIC_ID *)0)->rsa),
           _CFFI_OP(_CFFI_OP_NOOP, 3299) },
  { "ecc", offsetof(TPMU_PUBLIC_ID, ecc),
           sizeof(((TPMU_PUBLIC_ID *)0)->ecc),
           _CFFI_OP(_CFFI_OP_NOOP, 3344) },
  { "derive", offsetof(TPMU_PUBLIC_ID, derive),
              sizeof(((TPMU_PUBLIC_ID *)0)->derive),
              _CFFI_OP(_CFFI_OP_NOOP, 3342) },
  { "keyedHashDetail", offsetof(TPMU_PUBLIC_PARMS, keyedHashDetail),
                       sizeof(((TPMU_PUBLIC_PARMS *)0)->keyedHashDetail),
                       _CFFI_OP(_CFFI_OP_NOOP, 3347) },
  { "symDetail", offsetof(TPMU_PUBLIC_PARMS, symDetail),
                 sizeof(((TPMU_PUBLIC_PARMS *)0)->symDetail),
                 _CFFI_OP(_CFFI_OP_NOOP, 3365) },
  { "rsaDetail", offsetof(TPMU_PUBLIC_PARMS, rsaDetail),
                 sizeof(((TPMU_PUBLIC_PARMS *)0)->rsaDetail),
                 _CFFI_OP(_CFFI_OP_NOOP, 3357) },
  { "eccDetail", offsetof(TPMU_PUBLIC_PARMS, eccDetail),
                 sizeof(((TPMU_PUBLIC_PARMS *)0)->eccDetail),
                 _CFFI_OP(_CFFI_OP_NOOP, 3343) },
  { "asymDetail", offsetof(TPMU_PUBLIC_PARMS, asymDetail),
                  sizeof(((TPMU_PUBLIC_PARMS *)0)->asymDetail),
                  _CFFI_OP(_CFFI_OP_NOOP, 3330) },
  { "hmac", offsetof(TPMU_SCHEME_KEYEDHASH, hmac),
            sizeof(((TPMU_SCHEME_KEYEDHASH *)0)->hmac),
            _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "exclusiveOr", offsetof(TPMU_SCHEME_KEYEDHASH, exclusiveOr),
                   sizeof(((TPMU_SCHEME_KEYEDHASH *)0)->exclusiveOr),
                   _CFFI_OP(_CFFI_OP_NOOP, 3360) },
  { "null", offsetof(TPMU_SCHEME_KEYEDHASH, null),
            sizeof(((TPMU_SCHEME_KEYEDHASH *)0)->null),
            _CFFI_OP(_CFFI_OP_NOOP, 3345) },
  { "rsa", offsetof(TPMU_SENSITIVE_COMPOSITE, rsa),
           sizeof(((TPMU_SENSITIVE_COMPOSITE *)0)->rsa),
           _CFFI_OP(_CFFI_OP_NOOP, 3296) },
  { "ecc", offsetof(TPMU_SENSITIVE_COMPOSITE, ecc),
           sizeof(((TPMU_SENSITIVE_COMPOSITE *)0)->ecc),
           _CFFI_OP(_CFFI_OP_NOOP, 3283) },
  { "bits", offsetof(TPMU_SENSITIVE_COMPOSITE, bits),
            sizeof(((TPMU_SENSITIVE_COMPOSITE *)0)->bits),
            _CFFI_OP(_CFFI_OP_NOOP, 3302) },
  { "sym", offsetof(TPMU_SENSITIVE_COMPOSITE, sym),
           sizeof(((TPMU_SENSITIVE_COMPOSITE *)0)->sym),
           _CFFI_OP(_CFFI_OP_NOOP, 3303) },
  { "any", offsetof(TPMU_SENSITIVE_COMPOSITE, any),
           sizeof(((TPMU_SENSITIVE_COMPOSITE *)0)->any),
           _CFFI_OP(_CFFI_OP_NOOP, 3297) },
  { "create", offsetof(TPMU_SENSITIVE_CREATE, create),
              sizeof(((TPMU_SENSITIVE_CREATE *)0)->create),
              _CFFI_OP(_CFFI_OP_NOOP, 3535) },
  { "derive", offsetof(TPMU_SENSITIVE_CREATE, derive),
              sizeof(((TPMU_SENSITIVE_CREATE *)0)->derive),
              _CFFI_OP(_CFFI_OP_NOOP, 3342) },
  { "rsassa", offsetof(TPMU_SIGNATURE, rsassa),
              sizeof(((TPMU_SIGNATURE *)0)->rsassa),
              _CFFI_OP(_CFFI_OP_NOOP, 3364) },
  { "rsapss", offsetof(TPMU_SIGNATURE, rsapss),
              sizeof(((TPMU_SIGNATURE *)0)->rsapss),
              _CFFI_OP(_CFFI_OP_NOOP, 3364) },
  { "ecdsa", offsetof(TPMU_SIGNATURE, ecdsa),
             sizeof(((TPMU_SIGNATURE *)0)->ecdsa),
             _CFFI_OP(_CFFI_OP_NOOP, 3363) },
  { "ecdaa", offsetof(TPMU_SIGNATURE, ecdaa),
             sizeof(((TPMU_SIGNATURE *)0)->ecdaa),
             _CFFI_OP(_CFFI_OP_NOOP, 3363) },
  { "sm2", offsetof(TPMU_SIGNATURE, sm2),
           sizeof(((TPMU_SIGNATURE *)0)->sm2),
           _CFFI_OP(_CFFI_OP_NOOP, 3363) },
  { "ecschnorr", offsetof(TPMU_SIGNATURE, ecschnorr),
                 sizeof(((TPMU_SIGNATURE *)0)->ecschnorr),
                 _CFFI_OP(_CFFI_OP_NOOP, 3363) },
  { "hmac", offsetof(TPMU_SIGNATURE, hmac),
            sizeof(((TPMU_SIGNATURE *)0)->hmac),
            _CFFI_OP(_CFFI_OP_NOOP, 3379) },
  { "any", offsetof(TPMU_SIGNATURE, any),
           sizeof(((TPMU_SIGNATURE *)0)->any),
           _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "null", offsetof(TPMU_SIGNATURE, null),
            sizeof(((TPMU_SIGNATURE *)0)->null),
            _CFFI_OP(_CFFI_OP_NOOP, 3345) },
  { "rsassa", offsetof(TPMU_SIG_SCHEME, rsassa),
              sizeof(((TPMU_SIG_SCHEME *)0)->rsassa),
              _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "rsapss", offsetof(TPMU_SIG_SCHEME, rsapss),
              sizeof(((TPMU_SIG_SCHEME *)0)->rsapss),
              _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "ecdsa", offsetof(TPMU_SIG_SCHEME, ecdsa),
             sizeof(((TPMU_SIG_SCHEME *)0)->ecdsa),
             _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "ecdaa", offsetof(TPMU_SIG_SCHEME, ecdaa),
             sizeof(((TPMU_SIG_SCHEME *)0)->ecdaa),
             _CFFI_OP(_CFFI_OP_NOOP, 3358) },
  { "sm2", offsetof(TPMU_SIG_SCHEME, sm2),
           sizeof(((TPMU_SIG_SCHEME *)0)->sm2),
           _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "ecschnorr", offsetof(TPMU_SIG_SCHEME, ecschnorr),
                 sizeof(((TPMU_SIG_SCHEME *)0)->ecschnorr),
                 _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "hmac", offsetof(TPMU_SIG_SCHEME, hmac),
            sizeof(((TPMU_SIG_SCHEME *)0)->hmac),
            _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "any", offsetof(TPMU_SIG_SCHEME, any),
           sizeof(((TPMU_SIG_SCHEME *)0)->any),
           _CFFI_OP(_CFFI_OP_NOOP, 3359) },
  { "null", offsetof(TPMU_SIG_SCHEME, null),
            sizeof(((TPMU_SIG_SCHEME *)0)->null),
            _CFFI_OP(_CFFI_OP_NOOP, 3345) },
  { "aes", offsetof(TPMU_SYM_KEY_BITS, aes),
           sizeof(((TPMU_SYM_KEY_BITS *)0)->aes),
           _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "sm4", offsetof(TPMU_SYM_KEY_BITS, sm4),
           sizeof(((TPMU_SYM_KEY_BITS *)0)->sm4),
           _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "camellia", offsetof(TPMU_SYM_KEY_BITS, camellia),
                sizeof(((TPMU_SYM_KEY_BITS *)0)->camellia),
                _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "sym", offsetof(TPMU_SYM_KEY_BITS, sym),
           sizeof(((TPMU_SYM_KEY_BITS *)0)->sym),
           _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "exclusiveOr", offsetof(TPMU_SYM_KEY_BITS, exclusiveOr),
                   sizeof(((TPMU_SYM_KEY_BITS *)0)->exclusiveOr),
                   _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "null", offsetof(TPMU_SYM_KEY_BITS, null),
            sizeof(((TPMU_SYM_KEY_BITS *)0)->null),
            _CFFI_OP(_CFFI_OP_NOOP, 3345) },
  { "aes", offsetof(TPMU_SYM_MODE, aes),
           sizeof(((TPMU_SYM_MODE *)0)->aes),
           _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "sm4", offsetof(TPMU_SYM_MODE, sm4),
           sizeof(((TPMU_SYM_MODE *)0)->sm4),
           _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "camellia", offsetof(TPMU_SYM_MODE, camellia),
                sizeof(((TPMU_SYM_MODE *)0)->camellia),
                _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "sym", offsetof(TPMU_SYM_MODE, sym),
           sizeof(((TPMU_SYM_MODE *)0)->sym),
           _CFFI_OP(_CFFI_OP_NOOP, 205) },
  { "exclusiveOr", offsetof(TPMU_SYM_MODE, exclusiveOr),
                   sizeof(((TPMU_SYM_MODE *)0)->exclusiveOr),
                   _CFFI_OP(_CFFI_OP_NOOP, 3345) },
  { "null", offsetof(TPMU_SYM_MODE, null),
            sizeof(((TPMU_SYM_MODE *)0)->null),
            _CFFI_OP(_CFFI_OP_NOOP, 3345) },
};

static const struct _cffi_struct_union_s _cffi_struct_unions[] = {
  { "ESYS_CONTEXT", 3270, _CFFI_F_OPAQUE,
    (size_t)-1, -1, -1, 0 /* opaque */ },
  { "ESYS_CRYPTO_CALLBACKS", 3271, _CFFI_F_CHECK_FIELDS,
    sizeof(ESYS_CRYPTO_CALLBACKS), offsetof(struct _cffi_align__ESYS_CRYPTO_CALLBACKS, y), 0, 15 },
  { "ESYS_CRYPTO_CONTEXT_BLOB", 3272, _CFFI_F_OPAQUE,
    (size_t)-1, -1, -1, 0 /* opaque */ },
  { "PYTCTI_CONTEXT", 3273, _CFFI_F_CHECK_FIELDS,
    sizeof(PYTCTI_CONTEXT), offsetof(struct _cffi_align__PYTCTI_CONTEXT, y), 15, 2 },
  { "TPM2B_ATTEST", 3274, 0,
    sizeof(TPM2B_ATTEST), offsetof(struct _cffi_align__TPM2B_ATTEST, y), 17, 2 },
  { "TPM2B_CONTEXT_DATA", 3275, 0,
    sizeof(TPM2B_CONTEXT_DATA), offsetof(struct _cffi_align__TPM2B_CONTEXT_DATA, y), 19, 2 },
  { "TPM2B_CONTEXT_SENSITIVE", 3276, 0,
    sizeof(TPM2B_CONTEXT_SENSITIVE), offsetof(struct _cffi_align__TPM2B_CONTEXT_SENSITIVE, y), 21, 2 },
  { "TPM2B_CREATION_DATA", 3277, 0,
    sizeof(TPM2B_CREATION_DATA), offsetof(struct _cffi_align__TPM2B_CREATION_DATA, y), 23, 2 },
  { "TPM2B_DATA", 3278, 0,
    sizeof(TPM2B_DATA), offsetof(struct _cffi_align__TPM2B_DATA, y), 25, 2 },
  { "TPM2B_DERIVE", 3279, 0,
    sizeof(TPM2B_DERIVE), offsetof(struct _cffi_align__TPM2B_DERIVE, y), 27, 2 },
  { "TPM2B_DIGEST", 3280, 0,
    sizeof(TPM2B_DIGEST), offsetof(struct _cffi_align__TPM2B_DIGEST, y), 29, 2 },
  { "TPM2B_ECC_PARAMETER", 3283, 0,
    sizeof(TPM2B_ECC_PARAMETER), offsetof(struct _cffi_align__TPM2B_ECC_PARAMETER, y), 31, 2 },
  { "TPM2B_ECC_POINT", 3284, 0,
    sizeof(TPM2B_ECC_POINT), offsetof(struct _cffi_align__TPM2B_ECC_POINT, y), 33, 2 },
  { "TPM2B_ENCRYPTED_SECRET", 3285, 0,
    sizeof(TPM2B_ENCRYPTED_SECRET), offsetof(struct _cffi_align__TPM2B_ENCRYPTED_SECRET, y), 35, 2 },
  { "TPM2B_EVENT", 3286, 0,
    sizeof(TPM2B_EVENT), offsetof(struct _cffi_align__TPM2B_EVENT, y), 37, 2 },
  { "TPM2B_ID_OBJECT", 3287, 0,
    sizeof(TPM2B_ID_OBJECT), offsetof(struct _cffi_align__TPM2B_ID_OBJECT, y), 39, 2 },
  { "TPM2B_IV", 3288, 0,
    sizeof(TPM2B_IV), offsetof(struct _cffi_align__TPM2B_IV, y), 41, 2 },
  { "TPM2B_LABEL", 3289, 0,
    sizeof(TPM2B_LABEL), offsetof(struct _cffi_align__TPM2B_LABEL, y), 43, 2 },
  { "TPM2B_MAX_BUFFER", 3290, 0,
    sizeof(TPM2B_MAX_BUFFER), offsetof(struct _cffi_align__TPM2B_MAX_BUFFER, y), 45, 2 },
  { "TPM2B_MAX_CAP_BUFFER", 3291, 0,
    sizeof(TPM2B_MAX_CAP_BUFFER), offsetof(struct _cffi_align__TPM2B_MAX_CAP_BUFFER, y), 47, 2 },
  { "TPM2B_MAX_NV_BUFFER", 3292, 0,
    sizeof(TPM2B_MAX_NV_BUFFER), offsetof(struct _cffi_align__TPM2B_MAX_NV_BUFFER, y), 49, 2 },
  { "TPM2B_NAME", 3293, 0,
    sizeof(TPM2B_NAME), offsetof(struct _cffi_align__TPM2B_NAME, y), 51, 2 },
  { "TPM2B_NV_PUBLIC", 3294, 0,
    sizeof(TPM2B_NV_PUBLIC), offsetof(struct _cffi_align__TPM2B_NV_PUBLIC, y), 53, 2 },
  { "TPM2B_PRIVATE", 3295, 0,
    sizeof(TPM2B_PRIVATE), offsetof(struct _cffi_align__TPM2B_PRIVATE, y), 55, 2 },
  { "TPM2B_PRIVATE_KEY_RSA", 3296, 0,
    sizeof(TPM2B_PRIVATE_KEY_RSA), offsetof(struct _cffi_align__TPM2B_PRIVATE_KEY_RSA, y), 57, 2 },
  { "TPM2B_PRIVATE_VENDOR_SPECIFIC", 3297, 0,
    sizeof(TPM2B_PRIVATE_VENDOR_SPECIFIC), offsetof(struct _cffi_align__TPM2B_PRIVATE_VENDOR_SPECIFIC, y), 59, 2 },
  { "TPM2B_PUBLIC", 3298, 0,
    sizeof(TPM2B_PUBLIC), offsetof(struct _cffi_align__TPM2B_PUBLIC, y), 61, 2 },
  { "TPM2B_PUBLIC_KEY_RSA", 3299, 0,
    sizeof(TPM2B_PUBLIC_KEY_RSA), offsetof(struct _cffi_align__TPM2B_PUBLIC_KEY_RSA, y), 63, 2 },
  { "TPM2B_SENSITIVE", 3300, 0,
    sizeof(TPM2B_SENSITIVE), offsetof(struct _cffi_align__TPM2B_SENSITIVE, y), 65, 2 },
  { "TPM2B_SENSITIVE_CREATE", 3301, 0,
    sizeof(TPM2B_SENSITIVE_CREATE), offsetof(struct _cffi_align__TPM2B_SENSITIVE_CREATE, y), 67, 2 },
  { "TPM2B_SENSITIVE_DATA", 3302, 0,
    sizeof(TPM2B_SENSITIVE_DATA), offsetof(struct _cffi_align__TPM2B_SENSITIVE_DATA, y), 69, 2 },
  { "TPM2B_SYM_KEY", 3303, 0,
    sizeof(TPM2B_SYM_KEY), offsetof(struct _cffi_align__TPM2B_SYM_KEY, y), 71, 2 },
  { "TPM2B_TEMPLATE", 3304, 0,
    sizeof(TPM2B_TEMPLATE), offsetof(struct _cffi_align__TPM2B_TEMPLATE, y), 73, 2 },
  { "TPML_ACT_DATA", 3305, 0,
    sizeof(TPML_ACT_DATA), offsetof(struct _cffi_align__TPML_ACT_DATA, y), 75, 2 },
  { "TPML_AC_CAPABILITIES", 3306, 0,
    sizeof(TPML_AC_CAPABILITIES), offsetof(struct _cffi_align__TPML_AC_CAPABILITIES, y), 77, 2 },
  { "TPML_ALG", 3307, 0,
    sizeof(TPML_ALG), offsetof(struct _cffi_align__TPML_ALG, y), 79, 2 },
  { "TPML_ALG_PROPERTY", 3308, 0,
    sizeof(TPML_ALG_PROPERTY), offsetof(struct _cffi_align__TPML_ALG_PROPERTY, y), 81, 2 },
  { "TPML_CC", 3309, 0,
    sizeof(TPML_CC), offsetof(struct _cffi_align__TPML_CC, y), 83, 2 },
  { "TPML_CCA", 3310, 0,
    sizeof(TPML_CCA), offsetof(struct _cffi_align__TPML_CCA, y), 85, 2 },
  { "TPML_DIGEST", 3311, 0,
    sizeof(TPML_DIGEST), offsetof(struct _cffi_align__TPML_DIGEST, y), 87, 2 },
  { "TPML_DIGEST_VALUES", 3312, 0,
    sizeof(TPML_DIGEST_VALUES), offsetof(struct _cffi_align__TPML_DIGEST_VALUES, y), 89, 2 },
  { "TPML_ECC_CURVE", 3313, 0,
    sizeof(TPML_ECC_CURVE), offsetof(struct _cffi_align__TPML_ECC_CURVE, y), 91, 2 },
  { "TPML_HANDLE", 3314, 0,
    sizeof(TPML_HANDLE), offsetof(struct _cffi_align__TPML_HANDLE, y), 93, 2 },
  { "TPML_INTEL_PTT_PROPERTY", 3315, 0,
    sizeof(TPML_INTEL_PTT_PROPERTY), offsetof(struct _cffi_align__TPML_INTEL_PTT_PROPERTY, y), 95, 2 },
  { "TPML_PCR_SELECTION", 3316, 0,
    sizeof(TPML_PCR_SELECTION), offsetof(struct _cffi_align__TPML_PCR_SELECTION, y), 97, 2 },
  { "TPML_TAGGED_PCR_PROPERTY", 3317, 0,
    sizeof(TPML_TAGGED_PCR_PROPERTY), offsetof(struct _cffi_align__TPML_TAGGED_PCR_PROPERTY, y), 99, 2 },
  { "TPML_TAGGED_POLICY", 3318, 0,
    sizeof(TPML_TAGGED_POLICY), offsetof(struct _cffi_align__TPML_TAGGED_POLICY, y), 101, 2 },
  { "TPML_TAGGED_TPM_PROPERTY", 3319, 0,
    sizeof(TPML_TAGGED_TPM_PROPERTY), offsetof(struct _cffi_align__TPML_TAGGED_TPM_PROPERTY, y), 103, 2 },
  { "TPMS_ACT_DATA", 3320, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_ACT_DATA), offsetof(struct _cffi_align__TPMS_ACT_DATA, y), 105, 3 },
  { "TPMS_AC_OUTPUT", 3323, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_AC_OUTPUT), offsetof(struct _cffi_align__TPMS_AC_OUTPUT, y), 108, 2 },
  { "TPMS_ALGORITHM_DETAIL_ECC", 3326, 0,
    sizeof(TPMS_ALGORITHM_DETAIL_ECC), offsetof(struct _cffi_align__TPMS_ALGORITHM_DETAIL_ECC, y), 110, 11 },
  { "TPMS_ALG_PROPERTY", 3327, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_ALG_PROPERTY), offsetof(struct _cffi_align__TPMS_ALG_PROPERTY, y), 121, 2 },
  { "TPMS_ASYM_PARMS", 3330, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_ASYM_PARMS), offsetof(struct _cffi_align__TPMS_ASYM_PARMS, y), 123, 2 },
  { "TPMS_ATTEST", 3331, 0,
    sizeof(TPMS_ATTEST), offsetof(struct _cffi_align__TPMS_ATTEST, y), 125, 7 },
  { "TPMS_AUTH_COMMAND", 3332, 0,
    sizeof(TPMS_AUTH_COMMAND), offsetof(struct _cffi_align__TPMS_AUTH_COMMAND, y), 132, 4 },
  { "TPMS_AUTH_RESPONSE", 3333, 0,
    sizeof(TPMS_AUTH_RESPONSE), offsetof(struct _cffi_align__TPMS_AUTH_RESPONSE, y), 136, 3 },
  { "TPMS_CAPABILITY_DATA", 3334, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_CAPABILITY_DATA), offsetof(struct _cffi_align__TPMS_CAPABILITY_DATA, y), 139, 2 },
  { "TPMS_CERTIFY_INFO", 3335, 0,
    sizeof(TPMS_CERTIFY_INFO), offsetof(struct _cffi_align__TPMS_CERTIFY_INFO, y), 141, 2 },
  { "TPMS_CLOCK_INFO", 3336, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_CLOCK_INFO), offsetof(struct _cffi_align__TPMS_CLOCK_INFO, y), 143, 4 },
  { "TPMS_COMMAND_AUDIT_INFO", 3337, 0,
    sizeof(TPMS_COMMAND_AUDIT_INFO), offsetof(struct _cffi_align__TPMS_COMMAND_AUDIT_INFO, y), 147, 4 },
  { "TPMS_CONTEXT", 3338, 0,
    sizeof(TPMS_CONTEXT), offsetof(struct _cffi_align__TPMS_CONTEXT, y), 151, 4 },
  { "TPMS_CONTEXT_DATA", 3339, 0,
    sizeof(TPMS_CONTEXT_DATA), offsetof(struct _cffi_align__TPMS_CONTEXT_DATA, y), 155, 2 },
  { "TPMS_CREATION_DATA", 3340, 0,
    sizeof(TPMS_CREATION_DATA), offsetof(struct _cffi_align__TPMS_CREATION_DATA, y), 157, 7 },
  { "TPMS_CREATION_INFO", 3341, 0,
    sizeof(TPMS_CREATION_INFO), offsetof(struct _cffi_align__TPMS_CREATION_INFO, y), 164, 2 },
  { "TPMS_DERIVE", 3342, 0,
    sizeof(TPMS_DERIVE), offsetof(struct _cffi_align__TPMS_DERIVE, y), 166, 2 },
  { "TPMS_ECC_PARMS", 3343, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_ECC_PARMS), offsetof(struct _cffi_align__TPMS_ECC_PARMS, y), 168, 4 },
  { "TPMS_ECC_POINT", 3344, 0,
    sizeof(TPMS_ECC_POINT), offsetof(struct _cffi_align__TPMS_ECC_POINT, y), 172, 2 },
  { "TPMS_EMPTY", 3345, 0,
    sizeof(TPMS_EMPTY), offsetof(struct _cffi_align__TPMS_EMPTY, y), 174, 1 },
  { "TPMS_ID_OBJECT", 3346, 0,
    sizeof(TPMS_ID_OBJECT), offsetof(struct _cffi_align__TPMS_ID_OBJECT, y), 175, 2 },
  { "TPMS_KEYEDHASH_PARMS", 3347, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_KEYEDHASH_PARMS), offsetof(struct _cffi_align__TPMS_KEYEDHASH_PARMS, y), 177, 1 },
  { "TPMS_NV_CERTIFY_INFO", 3348, 0,
    sizeof(TPMS_NV_CERTIFY_INFO), offsetof(struct _cffi_align__TPMS_NV_CERTIFY_INFO, y), 178, 3 },
  { "TPMS_NV_DIGEST_CERTIFY_INFO", 3349, 0,
    sizeof(TPMS_NV_DIGEST_CERTIFY_INFO), offsetof(struct _cffi_align__TPMS_NV_DIGEST_CERTIFY_INFO, y), 181, 2 },
  { "TPMS_NV_PIN_COUNTER_PARAMETERS", 3350, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_NV_PIN_COUNTER_PARAMETERS), offsetof(struct _cffi_align__TPMS_NV_PIN_COUNTER_PARAMETERS, y), 183, 2 },
  { "TPMS_NV_PUBLIC", 3351, 0,
    sizeof(TPMS_NV_PUBLIC), offsetof(struct _cffi_align__TPMS_NV_PUBLIC, y), 185, 5 },
  { "TPMS_PCR_SELECT", 3352, 0,
    sizeof(TPMS_PCR_SELECT), offsetof(struct _cffi_align__TPMS_PCR_SELECT, y), 190, 2 },
  { "TPMS_PCR_SELECTION", 3353, 0,
    sizeof(TPMS_PCR_SELECTION), offsetof(struct _cffi_align__TPMS_PCR_SELECTION, y), 192, 3 },
  { "TPMS_QUOTE_INFO", 3356, 0,
    sizeof(TPMS_QUOTE_INFO), offsetof(struct _cffi_align__TPMS_QUOTE_INFO, y), 195, 2 },
  { "TPMS_RSA_PARMS", 3357, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_RSA_PARMS), offsetof(struct _cffi_align__TPMS_RSA_PARMS, y), 197, 4 },
  { "TPMS_SCHEME_ECDAA", 3358, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_SCHEME_ECDAA), offsetof(struct _cffi_align__TPMS_SCHEME_ECDAA, y), 201, 2 },
  { "TPMS_SCHEME_HASH", 3359, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_SCHEME_HASH), offsetof(struct _cffi_align__TPMS_SCHEME_HASH, y), 203, 1 },
  { "TPMS_SCHEME_XOR", 3360, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_SCHEME_XOR), offsetof(struct _cffi_align__TPMS_SCHEME_XOR, y), 204, 2 },
  { "TPMS_SENSITIVE_CREATE", 3361, 0,
    sizeof(TPMS_SENSITIVE_CREATE), offsetof(struct _cffi_align__TPMS_SENSITIVE_CREATE, y), 206, 2 },
  { "TPMS_SESSION_AUDIT_INFO", 3362, 0,
    sizeof(TPMS_SESSION_AUDIT_INFO), offsetof(struct _cffi_align__TPMS_SESSION_AUDIT_INFO, y), 208, 2 },
  { "TPMS_SIGNATURE_ECC", 3363, 0,
    sizeof(TPMS_SIGNATURE_ECC), offsetof(struct _cffi_align__TPMS_SIGNATURE_ECC, y), 210, 3 },
  { "TPMS_SIGNATURE_RSA", 3364, 0,
    sizeof(TPMS_SIGNATURE_RSA), offsetof(struct _cffi_align__TPMS_SIGNATURE_RSA, y), 213, 2 },
  { "TPMS_SYMCIPHER_PARMS", 3365, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_SYMCIPHER_PARMS), offsetof(struct _cffi_align__TPMS_SYMCIPHER_PARMS, y), 215, 1 },
  { "TPMS_TAGGED_PCR_SELECT", 3366, 0,
    sizeof(TPMS_TAGGED_PCR_SELECT), offsetof(struct _cffi_align__TPMS_TAGGED_PCR_SELECT, y), 216, 3 },
  { "TPMS_TAGGED_POLICY", 3369, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_TAGGED_POLICY), offsetof(struct _cffi_align__TPMS_TAGGED_POLICY, y), 219, 2 },
  { "TPMS_TAGGED_PROPERTY", 3372, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_TAGGED_PROPERTY), offsetof(struct _cffi_align__TPMS_TAGGED_PROPERTY, y), 221, 2 },
  { "TPMS_TIME_ATTEST_INFO", 3375, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_TIME_ATTEST_INFO), offsetof(struct _cffi_align__TPMS_TIME_ATTEST_INFO, y), 223, 2 },
  { "TPMS_TIME_INFO", 3376, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMS_TIME_INFO), offsetof(struct _cffi_align__TPMS_TIME_INFO, y), 225, 2 },
  { "TPMT_ASYM_SCHEME", 3377, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMT_ASYM_SCHEME), offsetof(struct _cffi_align__TPMT_ASYM_SCHEME, y), 227, 2 },
  { "TPMT_ECC_SCHEME", 3378, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMT_ECC_SCHEME), offsetof(struct _cffi_align__TPMT_ECC_SCHEME, y), 229, 2 },
  { "TPMT_HA", 3379, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMT_HA), offsetof(struct _cffi_align__TPMT_HA, y), 231, 2 },
  { "TPMT_KDF_SCHEME", 3382, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMT_KDF_SCHEME), offsetof(struct _cffi_align__TPMT_KDF_SCHEME, y), 233, 2 },
  { "TPMT_KEYEDHASH_SCHEME", 3383, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMT_KEYEDHASH_SCHEME), offsetof(struct _cffi_align__TPMT_KEYEDHASH_SCHEME, y), 235, 2 },
  { "TPMT_PUBLIC", 3384, 0,
    sizeof(TPMT_PUBLIC), offsetof(struct _cffi_align__TPMT_PUBLIC, y), 237, 6 },
  { "TPMT_PUBLIC_PARMS", 3385, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMT_PUBLIC_PARMS), offsetof(struct _cffi_align__TPMT_PUBLIC_PARMS, y), 243, 2 },
  { "TPMT_RSA_DECRYPT", 3386, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMT_RSA_DECRYPT), offsetof(struct _cffi_align__TPMT_RSA_DECRYPT, y), 245, 2 },
  { "TPMT_RSA_SCHEME", 3387, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMT_RSA_SCHEME), offsetof(struct _cffi_align__TPMT_RSA_SCHEME, y), 247, 2 },
  { "TPMT_SENSITIVE", 3388, 0,
    sizeof(TPMT_SENSITIVE), offsetof(struct _cffi_align__TPMT_SENSITIVE, y), 249, 4 },
  { "TPMT_SIGNATURE", 3389, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMT_SIGNATURE), offsetof(struct _cffi_align__TPMT_SIGNATURE, y), 253, 2 },
  { "TPMT_SIG_SCHEME", 3390, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMT_SIG_SCHEME), offsetof(struct _cffi_align__TPMT_SIG_SCHEME, y), 255, 2 },
  { "TPMT_SYM_DEF", 3391, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMT_SYM_DEF), offsetof(struct _cffi_align__TPMT_SYM_DEF, y), 257, 3 },
  { "TPMT_SYM_DEF_OBJECT", 3392, _CFFI_F_CHECK_FIELDS,
    sizeof(TPMT_SYM_DEF_OBJECT), offsetof(struct _cffi_align__TPMT_SYM_DEF_OBJECT, y), 260, 3 },
  { "TPMT_TK_AUTH", 3393, 0,
    sizeof(TPMT_TK_AUTH), offsetof(struct _cffi_align__TPMT_TK_AUTH, y), 263, 3 },
  { "TPMT_TK_CREATION", 3394, 0,
    sizeof(TPMT_TK_CREATION), offsetof(struct _cffi_align__TPMT_TK_CREATION, y), 266, 3 },
  { "TPMT_TK_HASHCHECK", 3395, 0,
    sizeof(TPMT_TK_HASHCHECK), offsetof(struct _cffi_align__TPMT_TK_HASHCHECK, y), 269, 3 },
  { "TPMT_TK_VERIFIED", 3396, 0,
    sizeof(TPMT_TK_VERIFIED), offsetof(struct _cffi_align__TPMT_TK_VERIFIED, y), 272, 3 },
  { "TPMU_ASYM_SCHEME", 3397, _CFFI_F_UNION,
    sizeof(TPMU_ASYM_SCHEME), offsetof(struct _cffi_align__TPMU_ASYM_SCHEME, y), 314, 12 },
  { "TPMU_ATTEST", 3398, _CFFI_F_UNION,
    sizeof(TPMU_ATTEST), offsetof(struct _cffi_align__TPMU_ATTEST, y), 326, 7 },
  { "TPMU_CAPABILITIES", 3399, _CFFI_F_UNION,
    sizeof(TPMU_CAPABILITIES), offsetof(struct _cffi_align__TPMU_CAPABILITIES, y), 333, 12 },
  { "TPMU_ENCRYPTED_SECRET", 3400, _CFFI_F_UNION,
    sizeof(TPMU_ENCRYPTED_SECRET), offsetof(struct _cffi_align__TPMU_ENCRYPTED_SECRET, y), 345, 4 },
  { "TPMU_HA", 3401, _CFFI_F_UNION,
    sizeof(TPMU_HA), offsetof(struct _cffi_align__TPMU_HA, y), 349, 6 },
  { "TPMU_KDF_SCHEME", 3402, _CFFI_F_UNION,
    sizeof(TPMU_KDF_SCHEME), offsetof(struct _cffi_align__TPMU_KDF_SCHEME, y), 355, 5 },
  { "TPMU_NAME", 3403, _CFFI_F_UNION|_CFFI_F_CHECK_FIELDS,
    sizeof(TPMU_NAME), offsetof(struct _cffi_align__TPMU_NAME, y), 360, 2 },
  { "TPMU_PUBLIC_ID", 3404, _CFFI_F_UNION,
    sizeof(TPMU_PUBLIC_ID), offsetof(struct _cffi_align__TPMU_PUBLIC_ID, y), 362, 5 },
  { "TPMU_PUBLIC_PARMS", 3405, _CFFI_F_UNION|_CFFI_F_CHECK_FIELDS,
    sizeof(TPMU_PUBLIC_PARMS), offsetof(struct _cffi_align__TPMU_PUBLIC_PARMS, y), 367, 5 },
  { "TPMU_SCHEME_KEYEDHASH", 3406, _CFFI_F_UNION,
    sizeof(TPMU_SCHEME_KEYEDHASH), offsetof(struct _cffi_align__TPMU_SCHEME_KEYEDHASH, y), 372, 3 },
  { "TPMU_SENSITIVE_COMPOSITE", 3407, _CFFI_F_UNION,
    sizeof(TPMU_SENSITIVE_COMPOSITE), offsetof(struct _cffi_align__TPMU_SENSITIVE_COMPOSITE, y), 375, 5 },
  { "TPMU_SENSITIVE_CREATE", 3408, _CFFI_F_UNION,
    sizeof(TPMU_SENSITIVE_CREATE), offsetof(struct _cffi_align__TPMU_SENSITIVE_CREATE, y), 380, 2 },
  { "TPMU_SIGNATURE", 3409, _CFFI_F_UNION,
    sizeof(TPMU_SIGNATURE), offsetof(struct _cffi_align__TPMU_SIGNATURE, y), 382, 9 },
  { "TPMU_SIG_SCHEME", 3410, _CFFI_F_UNION,
    sizeof(TPMU_SIG_SCHEME), offsetof(struct _cffi_align__TPMU_SIG_SCHEME, y), 391, 9 },
  { "TPMU_SYM_KEY_BITS", 3411, _CFFI_F_UNION,
    sizeof(TPMU_SYM_KEY_BITS), offsetof(struct _cffi_align__TPMU_SYM_KEY_BITS, y), 400, 6 },
  { "TPMU_SYM_MODE", 3412, _CFFI_F_UNION,
    sizeof(TPMU_SYM_MODE), offsetof(struct _cffi_align__TPMU_SYM_MODE, y), 406, 6 },
  { "TSS2_ABI_VERSION", 3413, _CFFI_F_CHECK_FIELDS,
    sizeof(TSS2_ABI_VERSION), offsetof(struct _cffi_align__TSS2_ABI_VERSION, y), 275, 4 },
  { "TSS2_RC_INFO", 3414, _CFFI_F_CHECK_FIELDS,
    sizeof(TSS2_RC_INFO), offsetof(struct _cffi_align__TSS2_RC_INFO, y), 279, 6 },
  { "TSS2_SYS_CONTEXT", 3416, _CFFI_F_OPAQUE,
    (size_t)-1, -1, -1, 0 /* opaque */ },
  { "TSS2_TCTI_CONTEXT_COMMON_V1", 3418, _CFFI_F_CHECK_FIELDS,
    sizeof(TSS2_TCTI_CONTEXT_COMMON_V1), offsetof(struct _cffi_align__TSS2_TCTI_CONTEXT_COMMON_V1, y), 285, 8 },
  { "TSS2_TCTI_CONTEXT_COMMON_V2", 3419, _CFFI_F_CHECK_FIELDS,
    sizeof(TSS2_TCTI_CONTEXT_COMMON_V2), offsetof(struct _cffi_align__TSS2_TCTI_CONTEXT_COMMON_V2, y), 293, 2 },
  { "TSS2_TCTI_INFO", 3423, _CFFI_F_CHECK_FIELDS,
    sizeof(TSS2_TCTI_INFO), offsetof(struct _cffi_align__TSS2_TCTI_INFO, y), 295, 5 },
  { "TSS2_TCTI_OPAQUE_CONTEXT_BLOB", 3417, _CFFI_F_OPAQUE,
    (size_t)-1, -1, -1, 0 /* opaque */ },
  { "TSS2_TCTI_SPI_HELPER_PLATFORM", 3425, _CFFI_F_CHECK_FIELDS,
    sizeof(TSS2_TCTI_SPI_HELPER_PLATFORM), offsetof(struct _cffi_align__TSS2_TCTI_SPI_HELPER_PLATFORM, y), 300, 8 },
  { "_PRIVATE", 3427, 0,
    sizeof(_PRIVATE), offsetof(struct _cffi_align___PRIVATE, y), 308, 3 },
  { "pollfd", 3424, _CFFI_F_CHECK_FIELDS,
    sizeof(TSS2_TCTI_POLL_HANDLE), offsetof(struct _cffi_align__TSS2_TCTI_POLL_HANDLE, y), 311, 3 },
};

static const struct _cffi_typename_s _cffi_typenames[] = {
  { "BOOL", 3243 },
  { "BYTE", 9 },
  { "ESYS_CONTEXT", 3270 },
  { "ESYS_CRYPTO_AES_DECRYPT_FNP", 3448 },
  { "ESYS_CRYPTO_AES_ENCRYPT_FNP", 3448 },
  { "ESYS_CRYPTO_CALLBACKS", 3271 },
  { "ESYS_CRYPTO_CONTEXT_BLOB", 3272 },
  { "ESYS_CRYPTO_GET_ECDH_POINT_FNP", 3439 },
  { "ESYS_CRYPTO_GET_RANDOM2B_FNP", 3438 },
  { "ESYS_CRYPTO_HASH_ABORT_FNP", 3537 },
  { "ESYS_CRYPTO_HASH_FINISH_FNP", 3436 },
  { "ESYS_CRYPTO_HASH_START_FNP", 3435 },
  { "ESYS_CRYPTO_HASH_UPDATE_FNP", 3437 },
  { "ESYS_CRYPTO_HMAC_ABORT_FNP", 3537 },
  { "ESYS_CRYPTO_HMAC_FINISH_FNP", 3436 },
  { "ESYS_CRYPTO_HMAC_START_FNP", 3434 },
  { "ESYS_CRYPTO_HMAC_UPDATE_FNP", 3437 },
  { "ESYS_CRYPTO_INIT_FNP", 3449 },
  { "ESYS_CRYPTO_PK_RSA_ENCRYPT_FNP", 3440 },
  { "ESYS_TR", 6 },
  { "INT16", 2420 },
  { "INT32", 201 },
  { "INT64", 2432 },
  { "INT8", 1038 },
  { "PYTCTI_CONTEXT", 3273 },
  { "TPM2B_ATTEST", 3274 },
  { "TPM2B_AUTH", 3280 },
  { "TPM2B_CONTEXT_DATA", 3275 },
  { "TPM2B_CONTEXT_SENSITIVE", 3276 },
  { "TPM2B_CREATION_DATA", 3277 },
  { "TPM2B_DATA", 3278 },
  { "TPM2B_DERIVE", 3279 },
  { "TPM2B_DIGEST", 3280 },
  { "TPM2B_ECC_PARAMETER", 3283 },
  { "TPM2B_ECC_POINT", 3284 },
  { "TPM2B_ENCRYPTED_SECRET", 3285 },
  { "TPM2B_EVENT", 3286 },
  { "TPM2B_ID_OBJECT", 3287 },
  { "TPM2B_IV", 3288 },
  { "TPM2B_LABEL", 3289 },
  { "TPM2B_MAX_BUFFER", 3290 },
  { "TPM2B_MAX_CAP_BUFFER", 3291 },
  { "TPM2B_MAX_NV_BUFFER", 3292 },
  { "TPM2B_NAME", 3293 },
  { "TPM2B_NONCE", 3280 },
  { "TPM2B_NV_PUBLIC", 3294 },
  { "TPM2B_OPERAND", 3280 },
  { "TPM2B_PRIVATE", 3295 },
  { "TPM2B_PRIVATE_KEY_RSA", 3296 },
  { "TPM2B_PRIVATE_VENDOR_SPECIFIC", 3297 },
  { "TPM2B_PUBLIC", 3298 },
  { "TPM2B_PUBLIC_KEY_RSA", 3299 },
  { "TPM2B_SENSITIVE", 3300 },
  { "TPM2B_SENSITIVE_CREATE", 3301 },
  { "TPM2B_SENSITIVE_DATA", 3302 },
  { "TPM2B_SYM_KEY", 3303 },
  { "TPM2B_TEMPLATE", 3304 },
  { "TPM2B_TIMEOUT", 3280 },
  { "TPM2_ALGORITHM_ID", 6 },
  { "TPM2_ALG_ID", 205 },
  { "TPM2_AUTHORIZATION_SIZE", 6 },
  { "TPM2_CAP", 6 },
  { "TPM2_CC", 6 },
  { "TPM2_CLOCK_ADJUST", 1038 },
  { "TPM2_ECC_CURVE", 205 },
  { "TPM2_EO", 205 },
  { "TPM2_GENERATED", 6 },
  { "TPM2_HANDLE", 6 },
  { "TPM2_HC", 6 },
  { "TPM2_HT", 9 },
  { "TPM2_KEY_BITS", 205 },
  { "TPM2_KEY_SIZE", 205 },
  { "TPM2_MODIFIER_INDICATOR", 6 },
  { "TPM2_NT", 9 },
  { "TPM2_NV_INDEX", 6 },
  { "TPM2_PARAMETER_SIZE", 6 },
  { "TPM2_PS", 6 },
  { "TPM2_PT", 6 },
  { "TPM2_PT_PCR", 6 },
  { "TPM2_RC", 6 },
  { "TPM2_RH", 6 },
  { "TPM2_SE", 9 },
  { "TPM2_SPEC", 6 },
  { "TPM2_ST", 205 },
  { "TPM2_SU", 205 },
  { "TPMA_ACT", 6 },
  { "TPMA_ALGORITHM", 6 },
  { "TPMA_CC", 6 },
  { "TPMA_LOCALITY", 9 },
  { "TPMA_MEMORY", 6 },
  { "TPMA_MODES", 6 },
  { "TPMA_NV", 6 },
  { "TPMA_OBJECT", 6 },
  { "TPMA_PERMANENT", 6 },
  { "TPMA_SESSION", 9 },
  { "TPMA_STARTUP_CLEAR", 6 },
  { "TPMA_X509_KEY_USAGE", 6 },
  { "TPMI_AES_KEY_BITS", 205 },
  { "TPMI_ALG_ASYM", 205 },
  { "TPMI_ALG_ASYM_SCHEME", 205 },
  { "TPMI_ALG_CIPHER_MODE", 205 },
  { "TPMI_ALG_ECC_SCHEME", 205 },
  { "TPMI_ALG_HASH", 205 },
  { "TPMI_ALG_KDF", 205 },
  { "TPMI_ALG_KEYEDHASH_SCHEME", 205 },
  { "TPMI_ALG_MAC_SCHEME", 205 },
  { "TPMI_ALG_PUBLIC", 205 },
  { "TPMI_ALG_RSA_DECRYPT", 205 },
  { "TPMI_ALG_RSA_SCHEME", 205 },
  { "TPMI_ALG_SIG_SCHEME", 205 },
  { "TPMI_ALG_SYM", 205 },
  { "TPMI_ALG_SYM_MODE", 205 },
  { "TPMI_ALG_SYM_OBJECT", 205 },
  { "TPMI_CAMELLIA_KEY_BITS", 205 },
  { "TPMI_DH_CONTEXT", 6 },
  { "TPMI_DH_ENTITY", 6 },
  { "TPMI_DH_OBJECT", 6 },
  { "TPMI_DH_PARENT", 6 },
  { "TPMI_DH_PCR", 6 },
  { "TPMI_DH_PERSISTENT", 6 },
  { "TPMI_DH_SAVED", 6 },
  { "TPMI_ECC_CURVE", 205 },
  { "TPMI_ECC_KEY_EXCHANGE", 205 },
  { "TPMI_RH_AC", 6 },
  { "TPMI_RH_ACT", 6 },
  { "TPMI_RH_CLEAR", 6 },
  { "TPMI_RH_ENABLES", 6 },
  { "TPMI_RH_ENDORSEMENT", 6 },
  { "TPMI_RH_HIERARCHY", 6 },
  { "TPMI_RH_HIERARCHY_AUTH", 6 },
  { "TPMI_RH_HIERARCHY_POLICY", 6 },
  { "TPMI_RH_LOCKOUT", 6 },
  { "TPMI_RH_NV_AUTH", 6 },
  { "TPMI_RH_NV_INDEX", 6 },
  { "TPMI_RH_OWNER", 6 },
  { "TPMI_RH_PLATFORM", 6 },
  { "TPMI_RH_PROVISION", 6 },
  { "TPMI_RSA_KEY_BITS", 205 },
  { "TPMI_SH_AUTH_SESSION", 6 },
  { "TPMI_SH_HMAC", 6 },
  { "TPMI_SH_POLICY", 6 },
  { "TPMI_SM4_KEY_BITS", 205 },
  { "TPMI_ST_ATTEST", 205 },
  { "TPMI_ST_COMMAND_TAG", 205 },
  { "TPMI_YES_NO", 9 },
  { "TPML_ACT_DATA", 3305 },
  { "TPML_AC_CAPABILITIES", 3306 },
  { "TPML_ALG", 3307 },
  { "TPML_ALG_PROPERTY", 3308 },
  { "TPML_CC", 3309 },
  { "TPML_CCA", 3310 },
  { "TPML_DIGEST", 3311 },
  { "TPML_DIGEST_VALUES", 3312 },
  { "TPML_ECC_CURVE", 3313 },
  { "TPML_HANDLE", 3314 },
  { "TPML_INTEL_PTT_PROPERTY", 3315 },
  { "TPML_PCR_SELECTION", 3316 },
  { "TPML_TAGGED_PCR_PROPERTY", 3317 },
  { "TPML_TAGGED_POLICY", 3318 },
  { "TPML_TAGGED_TPM_PROPERTY", 3319 },
  { "TPMS_ACT_DATA", 3320 },
  { "TPMS_AC_OUTPUT", 3323 },
  { "TPMS_ALGORITHM_DETAIL_ECC", 3326 },
  { "TPMS_ALG_PROPERTY", 3327 },
  { "TPMS_ASYM_PARMS", 3330 },
  { "TPMS_ATTEST", 3331 },
  { "TPMS_AUTH_COMMAND", 3332 },
  { "TPMS_AUTH_RESPONSE", 3333 },
  { "TPMS_CAPABILITY_DATA", 3334 },
  { "TPMS_CERTIFY_INFO", 3335 },
  { "TPMS_CLOCK_INFO", 3336 },
  { "TPMS_COMMAND_AUDIT_INFO", 3337 },
  { "TPMS_CONTEXT", 3338 },
  { "TPMS_CONTEXT_DATA", 3339 },
  { "TPMS_CREATION_DATA", 3340 },
  { "TPMS_CREATION_INFO", 3341 },
  { "TPMS_DERIVE", 3342 },
  { "TPMS_ECC_PARMS", 3343 },
  { "TPMS_ECC_POINT", 3344 },
  { "TPMS_EMPTY", 3345 },
  { "TPMS_ENC_SCHEME_OAEP", 3359 },
  { "TPMS_ENC_SCHEME_RSAES", 3345 },
  { "TPMS_ID_OBJECT", 3346 },
  { "TPMS_KEYEDHASH_PARMS", 3347 },
  { "TPMS_KEY_SCHEME_ECDH", 3359 },
  { "TPMS_KEY_SCHEME_ECMQV", 3359 },
  { "TPMS_NV_CERTIFY_INFO", 3348 },
  { "TPMS_NV_DIGEST_CERTIFY_INFO", 3349 },
  { "TPMS_NV_PIN_COUNTER_PARAMETERS", 3350 },
  { "TPMS_NV_PUBLIC", 3351 },
  { "TPMS_PCR_SELECT", 3352 },
  { "TPMS_PCR_SELECTION", 3353 },
  { "TPMS_QUOTE_INFO", 3356 },
  { "TPMS_RSA_PARMS", 3357 },
  { "TPMS_SCHEME_ECDAA", 3358 },
  { "TPMS_SCHEME_HASH", 3359 },
  { "TPMS_SCHEME_HMAC", 3359 },
  { "TPMS_SCHEME_KDF1_SP800_108", 3359 },
  { "TPMS_SCHEME_KDF1_SP800_56A", 3359 },
  { "TPMS_SCHEME_KDF2", 3359 },
  { "TPMS_SCHEME_MGF1", 3359 },
  { "TPMS_SCHEME_XOR", 3360 },
  { "TPMS_SENSITIVE_CREATE", 3361 },
  { "TPMS_SESSION_AUDIT_INFO", 3362 },
  { "TPMS_SIGNATURE_ECC", 3363 },
  { "TPMS_SIGNATURE_ECDAA", 3363 },
  { "TPMS_SIGNATURE_ECDSA", 3363 },
  { "TPMS_SIGNATURE_ECSCHNORR", 3363 },
  { "TPMS_SIGNATURE_RSA", 3364 },
  { "TPMS_SIGNATURE_RSAPSS", 3364 },
  { "TPMS_SIGNATURE_RSASSA", 3364 },
  { "TPMS_SIGNATURE_SM2", 3363 },
  { "TPMS_SIG_SCHEME_ECDAA", 3358 },
  { "TPMS_SIG_SCHEME_ECDSA", 3359 },
  { "TPMS_SIG_SCHEME_ECSCHNORR", 3359 },
  { "TPMS_SIG_SCHEME_RSAPSS", 3359 },
  { "TPMS_SIG_SCHEME_RSASSA", 3359 },
  { "TPMS_SIG_SCHEME_SM2", 3359 },
  { "TPMS_SYMCIPHER_PARMS", 3365 },
  { "TPMS_TAGGED_PCR_SELECT", 3366 },
  { "TPMS_TAGGED_POLICY", 3369 },
  { "TPMS_TAGGED_PROPERTY", 3372 },
  { "TPMS_TIME_ATTEST_INFO", 3375 },
  { "TPMS_TIME_INFO", 3376 },
  { "TPMT_ASYM_SCHEME", 3377 },
  { "TPMT_ECC_SCHEME", 3378 },
  { "TPMT_HA", 3379 },
  { "TPMT_KDF_SCHEME", 3382 },
  { "TPMT_KEYEDHASH_SCHEME", 3383 },
  { "TPMT_PUBLIC", 3384 },
  { "TPMT_PUBLIC_PARMS", 3385 },
  { "TPMT_RSA_DECRYPT", 3386 },
  { "TPMT_RSA_SCHEME", 3387 },
  { "TPMT_SENSITIVE", 3388 },
  { "TPMT_SIGNATURE", 3389 },
  { "TPMT_SIG_SCHEME", 3390 },
  { "TPMT_SYM_DEF", 3391 },
  { "TPMT_SYM_DEF_OBJECT", 3392 },
  { "TPMT_TK_AUTH", 3393 },
  { "TPMT_TK_CREATION", 3394 },
  { "TPMT_TK_HASHCHECK", 3395 },
  { "TPMT_TK_VERIFIED", 3396 },
  { "TPMU_ASYM_SCHEME", 3397 },
  { "TPMU_ATTEST", 3398 },
  { "TPMU_CAPABILITIES", 3399 },
  { "TPMU_ENCRYPTED_SECRET", 3400 },
  { "TPMU_HA", 3401 },
  { "TPMU_KDF_SCHEME", 3402 },
  { "TPMU_NAME", 3403 },
  { "TPMU_PUBLIC_ID", 3404 },
  { "TPMU_PUBLIC_PARMS", 3405 },
  { "TPMU_SCHEME_KEYEDHASH", 3406 },
  { "TPMU_SENSITIVE_COMPOSITE", 3407 },
  { "TPMU_SENSITIVE_CREATE", 3408 },
  { "TPMU_SIGNATURE", 3409 },
  { "TPMU_SIG_SCHEME", 3410 },
  { "TPMU_SYM_KEY_BITS", 3411 },
  { "TPMU_SYM_MODE", 3412 },
  { "TPM_AT", 6 },
  { "TPM_EA", 6 },
  { "TSS2_ABI_VERSION", 3413 },
  { "TSS2_RC", 6 },
  { "TSS2_RC_HANDLER", 11 },
  { "TSS2_RC_INFO", 3414 },
  { "TSS2_SYS_CONTEXT", 3416 },
  { "TSS2_TCTI_CANCEL_FCN", 3441 },
  { "TSS2_TCTI_CONTEXT", 3417 },
  { "TSS2_TCTI_CONTEXT_COMMON_CURRENT", 3419 },
  { "TSS2_TCTI_CONTEXT_COMMON_V1", 3418 },
  { "TSS2_TCTI_CONTEXT_COMMON_V2", 3419 },
  { "TSS2_TCTI_FINALIZE_FCN", 3538 },
  { "TSS2_TCTI_GET_POLL_HANDLES_FCN", 3442 },
  { "TSS2_TCTI_INFO", 3423 },
  { "TSS2_TCTI_INFO_FUNC", 3421 },
  { "TSS2_TCTI_INIT_FUNC", 3443 },
  { "TSS2_TCTI_MAKE_STICKY_FCN", 3446 },
  { "TSS2_TCTI_POLL_HANDLE", 3424 },
  { "TSS2_TCTI_RECEIVE_FCN", 3444 },
  { "TSS2_TCTI_SET_LOCALITY_FCN", 3447 },
  { "TSS2_TCTI_SPI_HELPER_PLATFORM", 3425 },
  { "TSS2_TCTI_SPI_HELPER_PLATFORM_FINALIZE", 3539 },
  { "TSS2_TCTI_SPI_HELPER_PLATFORM_SLEEP_MS_FUNC", 3451 },
  { "TSS2_TCTI_SPI_HELPER_PLATFORM_SPI_ACQUIRE_FUNC", 3449 },
  { "TSS2_TCTI_SPI_HELPER_PLATFORM_SPI_RELEASE_FUNC", 3449 },
  { "TSS2_TCTI_SPI_HELPER_PLATFORM_SPI_TRANSFER_FUNC", 3452 },
  { "TSS2_TCTI_SPI_HELPER_PLATFORM_START_TIMEOUT_FUNC", 3451 },
  { "TSS2_TCTI_SPI_HELPER_PLATFORM_TIMEOUT_EXPIRED_FUNC", 3450 },
  { "TSS2_TCTI_TRANSMIT_FCN", 3445 },
  { "UINT16", 205 },
  { "UINT32", 6 },
  { "UINT64", 1517 },
  { "UINT8", 9 },
  { "_PRIVATE", 3427 },
};

static const struct _cffi_type_context_s _cffi_type_context = {
  _cffi_types,
  _cffi_globals,
  _cffi_fields,
  _cffi_struct_unions,
  NULL,  /* no enums */
  _cffi_typenames,
  1618,  /* num_globals */
  135,  /* num_struct_unions */
  0,  /* num_enums */
  293,  /* num_typenames */
  NULL,  /* no includes */
  3541,  /* num_types */
  1,  /* flags */
};

#ifdef __GNUC__
#  pragma GCC visibility push(default)  /* for -fvisibility= */
#endif

#ifdef PYPY_VERSION
PyMODINIT_FUNC
_cffi_pypyinit__libtpm2_pytss(const void *p[])
{
    if (((intptr_t)p[0]) >= 0x0A03) {
        _cffi_call_python_org = (void(*)(struct _cffi_externpy_s *, char *))p[1];
    }
    p[0] = (const void *)0x2601;
    p[1] = &_cffi_type_context;
#if PY_MAJOR_VERSION >= 3
    return NULL;
#endif
}
#  ifdef _MSC_VER
     PyMODINIT_FUNC
#  if PY_MAJOR_VERSION >= 3
     PyInit__libtpm2_pytss(void) { return NULL; }
#  else
     init_libtpm2_pytss(void) { }
#  endif
#  endif
#elif PY_MAJOR_VERSION >= 3
PyMODINIT_FUNC
PyInit__libtpm2_pytss(void)
{
  return _cffi_init("tpm2_pytss._libtpm2_pytss", 0x2601, &_cffi_type_context);
}
#else
PyMODINIT_FUNC
init_libtpm2_pytss(void)
{
  _cffi_init("tpm2_pytss._libtpm2_pytss", 0x2601, &_cffi_type_context);
}
#endif

#ifdef __GNUC__
#  pragma GCC visibility pop
#endif
