1from libc.stdint cimport int8_t, int16_t, int32_t, int64_t, intptr_t 2from libc.stdint cimport uint8_t, uint16_t, uint32_t, uint64_t, uintptr_t 3cdef extern from *: 4 ctypedef bint bool 5 ctypedef struct va_list 6 7cdef extern from *: 8 9 ctypedef struct A: 10 int32_t namespace_; 11 float float_; 12 13 ctypedef struct B: 14 int32_t namespace_; 15 float float_; 16 17 cdef enum: 18 D, 19 ctypedef uint8_t C_Tag; 20 21 ctypedef struct D_Body: 22 int32_t namespace_; 23 float float_; 24 25 ctypedef struct C: 26 C_Tag tag; 27 D_Body d; 28 29 cdef enum: 30 Double, 31 Float, 32 ctypedef uint8_t E_Tag; 33 34 ctypedef struct E: 35 E_Tag tag; 36 double double_; 37 float float_; 38 39 cdef enum: 40 double_, 41 float_, 42 ctypedef uint8_t F_Tag; 43 44 ctypedef struct F: 45 F_Tag tag; 46 double double_; 47 float float_; 48 49 void root(A a, B b, C c, E e, F f, int32_t namespace_, float float_); 50