/* Generated by Nim Compiler v1.2.6 */
/*   (c) 2020 Andreas Rumpf */
/* The generated code is subject to the original license. */
#define NIM_INTBITS 64

#include "nimbase.h"
#include <string.h>
#include <stdio.h>
#undef LANGUAGE_C
#undef MIPSEB
#undef MIPSEL
#undef PPC
#undef R3000
#undef R4000
#undef i386
#undef linux
#undef mips
#undef near
#undef far
#undef powerpc
#undef unix
#define nimfr_(x, y)
#define nimln_(x, y)
typedef struct tyObject_PyLibcolonObjectType___bTw708kK89b8Vj9cmSu9a4zig tyObject_PyLibcolonObjectType___bTw708kK89b8Vj9cmSu9a4zig;
typedef struct tySequence__M73GJ9bOx1XdoIRnhIyhqTQ tySequence__M73GJ9bOx1XdoIRnhIyhqTQ;
typedef struct TGenericSeq TGenericSeq;
typedef struct tyObject_ExportedModule__fxDBwb9c9c8NsdRe9bmg8Q9a2A tyObject_ExportedModule__fxDBwb9c9c8NsdRe9bmg8Q9a2A;
typedef struct NimStringDesc NimStringDesc;
typedef struct TNimType TNimType;
typedef struct TNimNode TNimNode;
typedef struct tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g;
typedef struct tyObject_RawPyBuffer__0qyRdSZKtLACJ1u4qMMP2w tyObject_RawPyBuffer__0qyRdSZKtLACJ1u4qMMP2w;
typedef struct tyObject_Complex__zWadV1X9aMO7qS9bsQFB0JFA tyObject_Complex__zWadV1X9aMO7qS9bsQFB0JFA;
typedef struct tyObject_PyMethodDef__9aWi1PsmvCuTKIYDHHnhfcw tyObject_PyMethodDef__9aWi1PsmvCuTKIYDHHnhfcw;
typedef struct Exception Exception;
typedef struct RootObj RootObj;
typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA tySequence__uB9b75OUPRENsBAu4AnoePA;
typedef struct tyObject_PyObjectVarHeadObj__5fAkl5kIcYJNl6VvYzZdMw tyObject_PyObjectVarHeadObj__5fAkl5kIcYJNl6VvYzZdMw;
typedef struct tyObject_PyObjectObj__aD5pkFWInXrZXinZ42cDEg tyObject_PyObjectObj__aD5pkFWInXrZXinZ42cDEg;
typedef struct tyObject_PyMemberDef__WC29aEeHi2Pdy9c4AkllcBTg tyObject_PyMemberDef__WC29aEeHi2Pdy9c4AkllcBTg;
typedef struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA;
struct TGenericSeq {
NI len;
NI reserved;
};
struct NimStringDesc {
  TGenericSeq Sup;
NIM_CHAR data[SEQ_DECL_SIZE];
};
struct tyObject_ExportedModule__fxDBwb9c9c8NsdRe9bmg8Q9a2A {
NimStringDesc* name;
void* initAddr2;
void* initAddr3;
};
typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
struct TNimType {
NI size;
tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
TNimType* base;
TNimNode* node;
void* finalizer;
tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
};
typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
struct TNimNode {
tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
NI offset;
TNimType* typ;
NCSTRING name;
NI len;
TNimNode** sons;
};
typedef N_NIMCALL_PTR(void, tyProc__T4eqaYlFJYZUv9aG9b1TV0bQ) (void);
typedef N_CDECL_PTR(void*, tyProc__SsjMo29bx9bP5kwe2xgM3Scg) (NCSTRING f, ...);
typedef N_CDECL_PTR(void*, tyProc__4wJmT85lsn175X0dPNQv7w) (NI sz);
typedef N_CDECL_PTR(NI, tyProc__YRQqZC12s3573tRGP8MV3g) (void* f);
typedef N_CDECL_PTR(void*, tyProc__oPIasAghCTvCKmvkMeB1xQ) (void* f, NI i);
typedef N_CDECL_PTR(int, tyProc__6slETyyIDJuDOSqkO0hUXA) (void* f, NI i, void* v);
typedef N_CDECL_PTR(int, tyProc__tgpXIILGoVcO9bvYnz9azTVQ) (tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g* f);
typedef N_CDECL_PTR(void*, tyProc__eYT4U6bGFqFBUxk9b15mfOA) (tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g* f, void* a, void* b);
typedef N_CDECL_PTR(int, tyProc__T08W9bgbY4bOv2q64h6irpw) (void* m, NCSTRING n, void* o);
typedef N_CDECL_PTR(void*, tyProc__uQWqJp3WAx8fOY1h9aCwjIg) (void* callable_object, void* args, void* kw);
typedef N_CDECL_PTR(int, tyProc__fbYpjfe38x3ujjAmVRbI1Q) (void* o);
typedef N_CDECL_PTR(void*, tyProc__YezmFzxOOyM9cb11Eoq1Elg) (void* o, NCSTRING name);
typedef N_CDECL_PTR(void*, tyProc__jvPpjMAkI9bwM1B9apOphnlA) (void* o);
typedef N_CDECL_PTR(void*, tyProc__VQ1ysQk017myXMGb79cPTVw) (void* o, void* k);
typedef N_CDECL_PTR(int, tyProc__7LMjBc4zOHVIsNdulNv7QQ) (void* o, void* k, void* v);
typedef N_CDECL_PTR(int, tyProc__eoRP3F9aLT3mtHj6OkcMSyQ) (void* a, void* b, int op);
typedef N_CDECL_PTR(int, tyProc__8hR9arLDkUs9ag3Pt9bWtjfsg) (void* o, tyObject_RawPyBuffer__0qyRdSZKtLACJ1u4qMMP2w* b, int flags);
typedef N_CDECL_PTR(void, tyProc__vFvpnKOere9bRFN9czzMRlTA) (tyObject_RawPyBuffer__0qyRdSZKtLACJ1u4qMMP2w* b);
typedef N_CDECL_PTR(void*, tyProc__BZ6N5NNdHcK05FTDxQbEWw) (NCSTRING name, void* base, void* dict);
typedef N_CDECL_PTR(NI64, tyProc__mIlNZ9aGaphVJCyIIofK8mg) (void* l);
typedef N_CDECL_PTR(double, tyProc__2su9b9chqHYibM7sMkbSaSkA) (void* l);
typedef N_CDECL_PTR(void*, tyProc__Fc4ZUx59aQs10dLxeMQ50mw) (long v);
typedef N_CDECL_PTR(int, tyProc__i2exZ7Vtp648U9crOFcq9beQ) (tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g* t1, tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g* t2);
struct tyObject_Complex__zWadV1X9aMO7qS9bsQFB0JFA {
NF re;
NF im;
};
typedef N_CDECL_PTR(tyObject_Complex__zWadV1X9aMO7qS9bsQFB0JFA, tyProc__N1A5ZvDSgO9c9aRXmVqfn9bAw) (void* op);
typedef N_CDECL_PTR(int, tyProc__3FKLKFzOaK7FD6dRLWM6Jw) (void* o, NIM_CHAR** s, NI* len);
typedef N_CDECL_PTR(void*, tyProc__YDKrw1adv61oVQkQhbYyaA) (NCSTRING s);
typedef N_CDECL_PTR(int, tyProc__B2MjSeo07a72ynTQRVYFKw) (void* o, NCSTRING s);
typedef N_CDECL_PTR(NCSTRING, tyProc__p1X2BwWx9a3wsChhykvf29aA) (void* o);
typedef N_CDECL_PTR(void*, tyProc__NzboHqZVJcbdtVGYrOosXQ) (void);
typedef N_CDECL_PTR(int, tyProc__MTei9bsKjha0o1cISO9aLMDg) (void* o, void* k);
typedef N_NIMCALL_PTR(void, tyProc__4SVlZZPmetqBimNsH9cHcOA) (void* o);
typedef N_CDECL_PTR(void, tyProc__ln4kdL5W9bbX4a1xl8nnVXQ) (void);
typedef N_CDECL_PTR(void, tyProc__WYY8i0I79agBofnUcEGCfig) (void* o, NCSTRING s);
typedef N_CDECL_PTR(void, tyProc__32w2ZypAyMWuajvi2Jt79cg) (void* o);
typedef N_CDECL_PTR(void*, tyProc__jcEovQ2rZUNUsYxohT50Ug) (void* p, NCSTRING name, tyProc__32w2ZypAyMWuajvi2Jt79cg destr);
typedef N_CDECL_PTR(void*, tyProc__9b2qzlf3LCKK0JvThQT1atg) (tyObject_PyMethodDef__9aWi1PsmvCuTKIYDHHnhfcw* md, void* self, void* module);
typedef N_CDECL_PTR(void, tyProc__U0oVFt576Ze44Q9a3eZc5wg) (void** ptype, void** pvalue, void** ptraceback);
struct tyObject_PyLibcolonObjectType___bTw708kK89b8Vj9cmSu9a4zig {
void* module;
tyProc__SsjMo29bx9bP5kwe2xgM3Scg Py_BuildValue;
tyProc__4wJmT85lsn175X0dPNQv7w PyTuple_New;
tyProc__YRQqZC12s3573tRGP8MV3g PyTuple_Size;
tyProc__oPIasAghCTvCKmvkMeB1xQ PyTuple_GetItem;
tyProc__6slETyyIDJuDOSqkO0hUXA PyTuple_SetItem;
void* Py_None;
tyProc__tgpXIILGoVcO9bvYnz9azTVQ PyType_Ready;
tyProc__eYT4U6bGFqFBUxk9b15mfOA PyType_GenericNew;
tyProc__T08W9bgbY4bOv2q64h6irpw PyModule_AddObject;
tyProc__4wJmT85lsn175X0dPNQv7w PyList_New;
tyProc__YRQqZC12s3573tRGP8MV3g PyList_Size;
tyProc__oPIasAghCTvCKmvkMeB1xQ PyList_GetItem;
tyProc__6slETyyIDJuDOSqkO0hUXA PyList_SetItem;
tyProc__uQWqJp3WAx8fOY1h9aCwjIg PyObject_Call;
tyProc__fbYpjfe38x3ujjAmVRbI1Q PyObject_IsTrue;
tyProc__YezmFzxOOyM9cb11Eoq1Elg PyObject_GetAttrString;
tyProc__T08W9bgbY4bOv2q64h6irpw PyObject_SetAttrString;
tyProc__jvPpjMAkI9bwM1B9apOphnlA PyObject_Dir;
tyProc__jvPpjMAkI9bwM1B9apOphnlA PyObject_Str;
tyProc__jvPpjMAkI9bwM1B9apOphnlA PyObject_GetIter;
tyProc__VQ1ysQk017myXMGb79cPTVw PyObject_GetItem;
tyProc__7LMjBc4zOHVIsNdulNv7QQ PyObject_SetItem;
tyProc__eoRP3F9aLT3mtHj6OkcMSyQ PyObject_RichCompareBool;
tyProc__8hR9arLDkUs9ag3Pt9bWtjfsg PyObject_GetBuffer;
tyProc__vFvpnKOere9bRFN9czzMRlTA PyBuffer_Release;
tyProc__BZ6N5NNdHcK05FTDxQbEWw PyErr_NewException;
tyProc__jvPpjMAkI9bwM1B9apOphnlA PyIter_Next;
tyProc__mIlNZ9aGaphVJCyIIofK8mg PyLong_AsLongLong;
tyProc__2su9b9chqHYibM7sMkbSaSkA PyFloat_AsDouble;
tyProc__Fc4ZUx59aQs10dLxeMQ50mw PyBool_FromLong;
tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g* PyBool_Type;
tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g* PyFloat_Type;
tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g* PyComplex_Type;
tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g* PyCapsule_Type;
tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g* PyTuple_Type;
tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g* PyList_Type;
tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g* PyBytes_Type;
tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g* PyUnicode_Type;
tyProc__i2exZ7Vtp648U9crOFcq9beQ PyType_IsSubtype;
tyProc__N1A5ZvDSgO9c9aRXmVqfn9bAw PyComplex_AsCComplex;
tyProc__2su9b9chqHYibM7sMkbSaSkA PyComplex_RealAsDouble;
tyProc__2su9b9chqHYibM7sMkbSaSkA PyComplex_ImagAsDouble;
tyProc__jvPpjMAkI9bwM1B9apOphnlA PyUnicode_AsUTF8String;
tyProc__3FKLKFzOaK7FD6dRLWM6Jw PyBytes_AsStringAndSize;
tyProc__YDKrw1adv61oVQkQhbYyaA PyUnicode_FromString;
tyProc__B2MjSeo07a72ynTQRVYFKw PyUnicode_CompareWithASCIIString;
tyProc__p1X2BwWx9a3wsChhykvf29aA PyString_AsString;
tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g* PyDict_Type;
tyProc__NzboHqZVJcbdtVGYrOosXQ PyDict_New;
tyProc__YRQqZC12s3573tRGP8MV3g PyDict_Size;
tyProc__YezmFzxOOyM9cb11Eoq1Elg PyDict_GetItemString;
tyProc__T08W9bgbY4bOv2q64h6irpw PyDict_SetItemString;
tyProc__VQ1ysQk017myXMGb79cPTVw PyDict_GetItem;
tyProc__7LMjBc4zOHVIsNdulNv7QQ PyDict_SetItem;
tyProc__jvPpjMAkI9bwM1B9apOphnlA PyDict_Keys;
tyProc__jvPpjMAkI9bwM1B9apOphnlA PyDict_Values;
tyProc__MTei9bsKjha0o1cISO9aLMDg PyDict_Contains;
tyProc__4SVlZZPmetqBimNsH9cHcOA PyDealloc;
tyProc__ln4kdL5W9bbX4a1xl8nnVXQ PyErr_Clear;
tyProc__WYY8i0I79agBofnUcEGCfig PyErr_SetString;
tyProc__NzboHqZVJcbdtVGYrOosXQ PyErr_Occurred;
void* PyExc_TypeError;
tyProc__jcEovQ2rZUNUsYxohT50Ug PyCapsule_New;
tyProc__YezmFzxOOyM9cb11Eoq1Elg PyCapsule_GetPointer;
tyProc__YDKrw1adv61oVQkQhbYyaA PyImport_ImportModule;
tyProc__NzboHqZVJcbdtVGYrOosXQ PyEval_GetBuiltins;
tyProc__NzboHqZVJcbdtVGYrOosXQ PyEval_GetGlobals;
tyProc__NzboHqZVJcbdtVGYrOosXQ PyEval_GetLocals;
tyProc__9b2qzlf3LCKK0JvThQT1atg PyCFunction_NewEx;
NI pythonVersion;
tyProc__U0oVFt576Ze44Q9a3eZc5wg PyErr_Fetch;
tyProc__U0oVFt576Ze44Q9a3eZc5wg PyErr_NormalizeException;
tyProc__MTei9bsKjha0o1cISO9aLMDg PyErr_GivenExceptionMatches;
void* PyExc_BaseException;
void* PyExc_Exception;
void* PyExc_ArithmeticError;
void* PyExc_FloatingPointError;
void* PyExc_OverflowError;
void* PyExc_ZeroDivisionError;
void* PyExc_AssertionError;
void* PyExc_OSError;
void* PyExc_IOError;
void* PyExc_ValueError;
void* PyExc_EOFError;
void* PyExc_MemoryError;
void* PyExc_IndexError;
void* PyExc_KeyError;
void* NimPyException;
};
struct RootObj {
TNimType* m_type;
};
struct Exception {
  RootObj Sup;
Exception* parent;
NCSTRING name;
NimStringDesc* message;
tySequence__uB9b75OUPRENsBAu4AnoePA* trace;
Exception* up;
};
struct tyObject_PyObjectObj__aD5pkFWInXrZXinZ42cDEg {
NI ob_refcnt;
void* ob_type;
};
struct tyObject_PyObjectVarHeadObj__5fAkl5kIcYJNl6VvYzZdMw {
  tyObject_PyObjectObj__aD5pkFWInXrZXinZ42cDEg Sup;
NI ob_size;
};
typedef N_CDECL_PTR(int, tyProc__rNiGphbUW4RHd2WIj64deg) (void* o, FILE* f, int c);
typedef N_CDECL_PTR(void*, tyProc__k4RBH32nrpDxtGF9acg45zw) (void* a, void* b, int c);
typedef N_CDECL_PTR(void*, tyProc__Cj3MN9a7OA9a51xOtsYjEwBg) (tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g* typ, NI sz);
struct tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g {
  tyObject_PyObjectVarHeadObj__5fAkl5kIcYJNl6VvYzZdMw Sup;
NCSTRING tp_name;
NI tp_basicsize;
NI tp_itemsize;
tyProc__32w2ZypAyMWuajvi2Jt79cg tp_dealloc;
tyProc__rNiGphbUW4RHd2WIj64deg tp_print;
tyProc__YezmFzxOOyM9cb11Eoq1Elg tp_getattr;
tyProc__T08W9bgbY4bOv2q64h6irpw tp_setattr;
void* tp_as_async;
tyProc__jvPpjMAkI9bwM1B9apOphnlA tp_repr;
void* tp_as_number;
void* tp_as_sequence;
void* tp_as_mapping;
void* tp_hash;
void* tp_call;
tyProc__jvPpjMAkI9bwM1B9apOphnlA tp_str;
tyProc__VQ1ysQk017myXMGb79cPTVw tp_getattro;
tyProc__7LMjBc4zOHVIsNdulNv7QQ tp_setattro;
void* tp_as_buffer;
unsigned long tp_flags;
NCSTRING tp_doc;
void* tp_traverse;
void* tp_clear;
tyProc__k4RBH32nrpDxtGF9acg45zw tp_richcompare;
NI tp_weaklistoffset;
tyProc__jvPpjMAkI9bwM1B9apOphnlA tp_iter;
tyProc__jvPpjMAkI9bwM1B9apOphnlA tp_iternext;
tyObject_PyMethodDef__9aWi1PsmvCuTKIYDHHnhfcw* tp_methods;
tyObject_PyMemberDef__WC29aEeHi2Pdy9c4AkllcBTg* tp_members;
void* tp_getset;
tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g* tp_base;
void* tp_dict;
tyProc__uQWqJp3WAx8fOY1h9aCwjIg tp_descr_get;
tyProc__7LMjBc4zOHVIsNdulNv7QQ tp_descr_set;
NI tp_dictoffset;
tyProc__7LMjBc4zOHVIsNdulNv7QQ tp_init;
tyProc__Cj3MN9a7OA9a51xOtsYjEwBg tp_alloc;
tyProc__eYT4U6bGFqFBUxk9b15mfOA tp_new;
tyProc__32w2ZypAyMWuajvi2Jt79cg tp_free;
void* tp_is_gc;
tyObject_PyObjectObj__aD5pkFWInXrZXinZ42cDEg* tp_bases;
void* tp_mro;
void* tp_cache;
tyObject_PyObjectObj__aD5pkFWInXrZXinZ42cDEg* tp_subclasses;
tyObject_PyObjectObj__aD5pkFWInXrZXinZ42cDEg* tp_weaklist;
tyProc__32w2ZypAyMWuajvi2Jt79cg tp_del;
unsigned int tp_version_tag;
tyProc__32w2ZypAyMWuajvi2Jt79cg tp_finalize;
};
struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA {
NCSTRING procname;
NI line;
NCSTRING filename;
};
struct tySequence__M73GJ9bOx1XdoIRnhIyhqTQ {
  TGenericSeq Sup;
  tyObject_ExportedModule__fxDBwb9c9c8NsdRe9bmg8Q9a2A data[SEQ_DECL_SIZE];
};
struct tySequence__uB9b75OUPRENsBAu4AnoePA {
  TGenericSeq Sup;
  tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA data[SEQ_DECL_SIZE];
};
N_LIB_PRIVATE N_NIMCALL(void, nimGCvisit)(void* d, NI op);
static N_NIMCALL(void, Marker_tySequence__M73GJ9bOx1XdoIRnhIyhqTQ)(void* p, NI op);
static N_NIMCALL(void, TM__XnAUe69cYg8yQhnmiRJUnHw_3)(void);
N_LIB_PRIVATE N_NIMCALL(void, nimRegisterGlobalMarker)(tyProc__T4eqaYlFJYZUv9aG9b1TV0bQ markerProc);
N_LIB_PRIVATE N_NOCONV(void*, allocShared0Impl__WrVG9abV9chlTLqkiXYLKwUg_3)(NI size);
N_LIB_PRIVATE N_NIMCALL(void*, symAddr__ALH9bdNwXEzg7MPq4PA9csvw)(void* lib, NCSTRING name);
N_LIB_PRIVATE N_NIMCALL(void, symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw)(NCSTRING s);
N_LIB_PRIVATE N_NIMCALL(void*, newObj)(TNimType* typ, NI size);
static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
static N_INLINE(void, copyMem__i80o3k0SgEI5gTRCzYdyWAsystem)(void* dest, void* source, NI size);
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, cstrToNimstr)(NCSTRING str);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
N_LIB_PRIVATE N_NIMCALL(void, raiseExceptionEx)(Exception* e, NCSTRING ename, NCSTRING procname, NCSTRING filename, NI line);
N_LIB_PRIVATE N_NIMCALL(void, deallocPythonObj__g4g2BXzYUyHtyZiBrSD7aw)(void* p);
static N_INLINE(tyObject_PyObjectObj__aD5pkFWInXrZXinZ42cDEg*, to__4gaYCHYBaCTIs6wfSrqsEApy_lib)(void* p);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
static N_INLINE(void, nimZeroMem)(void* p, NI size);
static N_INLINE(void, nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory)(void* a, int v, NI size);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, incrSeqV3)(TGenericSeq* s, TNimType* typ);
N_LIB_PRIVATE TNimType NTI__fxDBwb9c9c8NsdRe9bmg8Q9a2A_;
extern TNimType NTI__77mFvmsOLKik79ci2hXkHEg_;
extern TNimType NTI__vr5DoT1jILTGdRlYv1OYpw_;
N_LIB_PRIVATE TNimType NTI__M73GJ9bOx1XdoIRnhIyhqTQ_;
extern TNimType NTI__vU9aO9cTqOMn6CBzhV8rX7Sw_;
extern TNimType NTI__XEycrCsme5C8CVWAYEcdBQ_;
STRING_LITERAL(TM__XnAUe69cYg8yQhnmiRJUnHw_4, "Symbol not loaded: ", 19);
N_LIB_PRIVATE NU pyObjectStartOffset__g20dGCi2MffsHqmxIpqX7Q;
N_LIB_PRIVATE tyObject_PyLibcolonObjectType___bTw708kK89b8Vj9cmSu9a4zig* pyLib__nxKBiAukGMNwnUq9bpn9adyw;
N_LIB_PRIVATE NIM_THREADVAR NIM_BOOL pyThreadFrameInited__0LBR4zzVR5uWvgtv8SrMjg;
N_LIB_PRIVATE tySequence__M73GJ9bOx1XdoIRnhIyhqTQ* exportedModules__8kMAOMTFJYz2QnlnegLbYw;
extern NIM_THREADVAR NIM_BOOL nimInErrorMode__759bT87luu8XGcbkw13FUjA;
static N_NIMCALL(void, Marker_tySequence__M73GJ9bOx1XdoIRnhIyhqTQ)(void* p, NI op) {
	tySequence__M73GJ9bOx1XdoIRnhIyhqTQ* a;
	NI T1_;
	a = (tySequence__M73GJ9bOx1XdoIRnhIyhqTQ*)p;
	T1_ = (NI)0;
	for (T1_ = 0; T1_ < (a ? a->Sup.len : 0); T1_++) {
	nimGCvisit((void*)a->data[T1_].name, op);
	}
}
static N_NIMCALL(void, TM__XnAUe69cYg8yQhnmiRJUnHw_3)(void) {
	nimGCvisit((void*)exportedModules__8kMAOMTFJYz2QnlnegLbYw, 0);
}
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memcpy(dest, source, ((size_t) (size)));
}
static N_INLINE(void, copyMem__i80o3k0SgEI5gTRCzYdyWAsystem)(void* dest, void* source, NI size) {
	nimCopyMem(dest, source, size);
}
static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
	{
		if (!!((src == NIM_NIL))) goto LA3_;
		copyMem__i80o3k0SgEI5gTRCzYdyWAsystem(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
		(*dest).Sup.len += (*src).Sup.len;
	}
	LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw)(NCSTRING s) {
	Exception* T1_;
	NimStringDesc* T2_;
	NimStringDesc* T3_;
{	T1_ = (Exception*)0;
	T1_ = (Exception*) newObj((&NTI__vU9aO9cTqOMn6CBzhV8rX7Sw_), sizeof(Exception));
	(*T1_).Sup.m_type = (&NTI__XEycrCsme5C8CVWAYEcdBQ_);
	(*T1_).name = "Exception";
	T2_ = (NimStringDesc*)0;
	T3_ = (NimStringDesc*)0;
	T3_ = cstrToNimstr(s);
	T2_ = rawNewString((T3_ ? T3_->Sup.len : 0) + 19);
appendString(T2_, ((NimStringDesc*) &TM__XnAUe69cYg8yQhnmiRJUnHw_4));
appendString(T2_, T3_);
	(*T1_).message = T2_;
	(*T1_).parent = NIM_NIL;
	raiseExceptionEx((Exception*)T1_, "Exception", "symNotLoadedErr", "py_lib.nim", 158);
	goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(tyObject_PyObjectObj__aD5pkFWInXrZXinZ42cDEg*, to__4gaYCHYBaCTIs6wfSrqsEApy_lib)(void* p) {
	tyObject_PyObjectObj__aD5pkFWInXrZXinZ42cDEg* result;
	result = (tyObject_PyObjectObj__aD5pkFWInXrZXinZ42cDEg*)0;
	result = ((tyObject_PyObjectObj__aD5pkFWInXrZXinZ42cDEg*) ((NU)((NU64)(((NU) (ptrdiff_t) (p))) + (NU64)(pyObjectStartOffset__g20dGCi2MffsHqmxIpqX7Q))));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, deallocPythonObj__g4g2BXzYUyHtyZiBrSD7aw)(void* p) {
	tyObject_PyObjectObj__aD5pkFWInXrZXinZ42cDEg* ob;
	tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g* t;
	ob = to__4gaYCHYBaCTIs6wfSrqsEApy_lib(p);
	t = ((tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g*) ((*ob).ob_type));
	(*t).tp_dealloc(((void*) (p)));
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (NIM_BOOL*)0;
	result = (&nimInErrorMode__759bT87luu8XGcbkw13FUjA);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(tyObject_PyLibcolonObjectType___bTw708kK89b8Vj9cmSu9a4zig*, loadPyLibFromModule__qG86BLyCRE79ccVgEQ4WOeA)(void* m) {
	tyObject_PyLibcolonObjectType___bTw708kK89b8Vj9cmSu9a4zig* result;
	void* T1_;
	tyObject_PyLibcolonObjectType___bTw708kK89b8Vj9cmSu9a4zig* pl;
	void* T13_;
	void* T18_;
	void* T23_;
	void* T28_;
	void* T33_;
	void* T38_;
	void* T43_;
	void* T48_;
	void* T53_;
	void* T58_;
	void* T63_;
	void* T68_;
	void* T73_;
	void* T78_;
	void* T83_;
	void* T88_;
	void* T93_;
	void* T98_;
	void* T103_;
	void* T108_;
	void* T113_;
	void* T118_;
	void* T123_;
	void* T128_;
	void* T129_;
	void* T130_;
	void* T135_;
	void* T140_;
	void* T145_;
	void* T150_;
	void* T155_;
	void* T160_;
	void* T165_;
	void* T170_;
	void* T175_;
	void* T180_;
	void* T185_;
	void* T195_;
	void* T205_;
	void* T210_;
	void* T225_;
	void* T235_;
	void* T250_;
	void* T260_;
	void* T265_;
	void* T270_;
	void* T275_;
	void* T280_;
	void* T285_;
	void* T290_;
	void* T295_;
	void* T300_;
	void* T305_;
	void* T315_;
	void* T320_;
	void* T325_;
	void* T330_;
	void* T335_;
	void* T340_;
	void* T345_;
	void* T350_;
	void* T355_;
	void* T360_;
	void* T365_;
	void* T370_;
	void* T375_;
	void* T380_;
	void* T385_;
	void* T390_;
	void* T395_;
	void* T400_;
	void* T405_;
	void* T410_;
	void* T415_;
	void* T420_;
	void* T425_;
	void* T430_;
	void* T435_;
	void* T440_;
	void* T445_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (tyObject_PyLibcolonObjectType___bTw708kK89b8Vj9cmSu9a4zig*)0;
	T1_ = (void*)0;
	T1_ = allocShared0Impl__WrVG9abV9chlTLqkiXYLKwUg_3(((NI) 712));
	result = ((tyObject_PyLibcolonObjectType___bTw708kK89b8Vj9cmSu9a4zig*) (T1_));
	pl = result;
	(*pl).module = m;
	{
		NIM_BOOL T4_;
		NIM_BOOL T5_;
		void* T6_;
		void* T8_;
		void* T10_;
		T4_ = (NIM_BOOL)0;
		T5_ = (NIM_BOOL)0;
		T6_ = (void*)0;
		T6_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyModule_Create2");
		T5_ = (T6_ == 0);
		if (T5_) goto LA7_;
		T8_ = (void*)0;
		T8_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "Py_InitModule4_64");
		T5_ = (T8_ == 0);
		LA7_: ;
		T4_ = T5_;
		if (T4_) goto LA9_;
		T10_ = (void*)0;
		T10_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "Py_InitModule4");
		T4_ = (T10_ == 0);
		LA9_: ;
		if (!!(T4_)) goto LA11_;
		pyObjectStartOffset__g20dGCi2MffsHqmxIpqX7Q = ((NU) 16);
	}
	LA11_: ;
	T13_ = (void*)0;
	T13_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "_Py_BuildValue_SizeT");
	(*pl).Py_BuildValue = ((tyProc__SsjMo29bx9bP5kwe2xgM3Scg) (T13_));
	{
		if (!((*pl).Py_BuildValue == 0)) goto LA16_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("_Py_BuildValue_SizeT");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA16_: ;
	T18_ = (void*)0;
	T18_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyTuple_New");
	(*pl).PyTuple_New = ((tyProc__4wJmT85lsn175X0dPNQv7w) (T18_));
	{
		if (!((*pl).PyTuple_New == 0)) goto LA21_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyTuple_New");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA21_: ;
	T23_ = (void*)0;
	T23_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyTuple_Size");
	(*pl).PyTuple_Size = ((tyProc__YRQqZC12s3573tRGP8MV3g) (T23_));
	{
		if (!((*pl).PyTuple_Size == 0)) goto LA26_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyTuple_Size");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA26_: ;
	T28_ = (void*)0;
	T28_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyTuple_GetItem");
	(*pl).PyTuple_GetItem = ((tyProc__oPIasAghCTvCKmvkMeB1xQ) (T28_));
	{
		if (!((*pl).PyTuple_GetItem == 0)) goto LA31_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyTuple_GetItem");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA31_: ;
	T33_ = (void*)0;
	T33_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyTuple_SetItem");
	(*pl).PyTuple_SetItem = ((tyProc__6slETyyIDJuDOSqkO0hUXA) (T33_));
	{
		if (!((*pl).PyTuple_SetItem == 0)) goto LA36_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyTuple_SetItem");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA36_: ;
	T38_ = (void*)0;
	T38_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "_Py_NoneStruct");
	(*pl).Py_None = ((void*) (T38_));
	{
		if (!((*pl).Py_None == 0)) goto LA41_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("_Py_NoneStruct");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA41_: ;
	T43_ = (void*)0;
	T43_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyType_Ready");
	(*pl).PyType_Ready = ((tyProc__tgpXIILGoVcO9bvYnz9azTVQ) (T43_));
	{
		if (!((*pl).PyType_Ready == 0)) goto LA46_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyType_Ready");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA46_: ;
	T48_ = (void*)0;
	T48_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyType_GenericNew");
	(*pl).PyType_GenericNew = ((tyProc__eYT4U6bGFqFBUxk9b15mfOA) (T48_));
	{
		if (!((*pl).PyType_GenericNew == 0)) goto LA51_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyType_GenericNew");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA51_: ;
	T53_ = (void*)0;
	T53_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyModule_AddObject");
	(*pl).PyModule_AddObject = ((tyProc__T08W9bgbY4bOv2q64h6irpw) (T53_));
	{
		if (!((*pl).PyModule_AddObject == 0)) goto LA56_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyModule_AddObject");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA56_: ;
	T58_ = (void*)0;
	T58_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyList_New");
	(*pl).PyList_New = ((tyProc__4wJmT85lsn175X0dPNQv7w) (T58_));
	{
		if (!((*pl).PyList_New == 0)) goto LA61_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyList_New");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA61_: ;
	T63_ = (void*)0;
	T63_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyList_Size");
	(*pl).PyList_Size = ((tyProc__YRQqZC12s3573tRGP8MV3g) (T63_));
	{
		if (!((*pl).PyList_Size == 0)) goto LA66_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyList_Size");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA66_: ;
	T68_ = (void*)0;
	T68_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyList_GetItem");
	(*pl).PyList_GetItem = ((tyProc__oPIasAghCTvCKmvkMeB1xQ) (T68_));
	{
		if (!((*pl).PyList_GetItem == 0)) goto LA71_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyList_GetItem");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA71_: ;
	T73_ = (void*)0;
	T73_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyList_SetItem");
	(*pl).PyList_SetItem = ((tyProc__6slETyyIDJuDOSqkO0hUXA) (T73_));
	{
		if (!((*pl).PyList_SetItem == 0)) goto LA76_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyList_SetItem");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA76_: ;
	T78_ = (void*)0;
	T78_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyObject_Call");
	(*pl).PyObject_Call = ((tyProc__uQWqJp3WAx8fOY1h9aCwjIg) (T78_));
	{
		if (!((*pl).PyObject_Call == 0)) goto LA81_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyObject_Call");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA81_: ;
	T83_ = (void*)0;
	T83_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyObject_IsTrue");
	(*pl).PyObject_IsTrue = ((tyProc__fbYpjfe38x3ujjAmVRbI1Q) (T83_));
	{
		if (!((*pl).PyObject_IsTrue == 0)) goto LA86_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyObject_IsTrue");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA86_: ;
	T88_ = (void*)0;
	T88_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyObject_GetAttrString");
	(*pl).PyObject_GetAttrString = ((tyProc__YezmFzxOOyM9cb11Eoq1Elg) (T88_));
	{
		if (!((*pl).PyObject_GetAttrString == 0)) goto LA91_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyObject_GetAttrString");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA91_: ;
	T93_ = (void*)0;
	T93_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyObject_SetAttrString");
	(*pl).PyObject_SetAttrString = ((tyProc__T08W9bgbY4bOv2q64h6irpw) (T93_));
	{
		if (!((*pl).PyObject_SetAttrString == 0)) goto LA96_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyObject_SetAttrString");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA96_: ;
	T98_ = (void*)0;
	T98_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyObject_Dir");
	(*pl).PyObject_Dir = ((tyProc__jvPpjMAkI9bwM1B9apOphnlA) (T98_));
	{
		if (!((*pl).PyObject_Dir == 0)) goto LA101_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyObject_Dir");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA101_: ;
	T103_ = (void*)0;
	T103_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyObject_Str");
	(*pl).PyObject_Str = ((tyProc__jvPpjMAkI9bwM1B9apOphnlA) (T103_));
	{
		if (!((*pl).PyObject_Str == 0)) goto LA106_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyObject_Str");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA106_: ;
	T108_ = (void*)0;
	T108_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyObject_GetIter");
	(*pl).PyObject_GetIter = ((tyProc__jvPpjMAkI9bwM1B9apOphnlA) (T108_));
	{
		if (!((*pl).PyObject_GetIter == 0)) goto LA111_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyObject_GetIter");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA111_: ;
	T113_ = (void*)0;
	T113_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyObject_GetItem");
	(*pl).PyObject_GetItem = ((tyProc__VQ1ysQk017myXMGb79cPTVw) (T113_));
	{
		if (!((*pl).PyObject_GetItem == 0)) goto LA116_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyObject_GetItem");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA116_: ;
	T118_ = (void*)0;
	T118_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyObject_SetItem");
	(*pl).PyObject_SetItem = ((tyProc__7LMjBc4zOHVIsNdulNv7QQ) (T118_));
	{
		if (!((*pl).PyObject_SetItem == 0)) goto LA121_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyObject_SetItem");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA121_: ;
	T123_ = (void*)0;
	T123_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyObject_RichCompareBool");
	(*pl).PyObject_RichCompareBool = ((tyProc__eoRP3F9aLT3mtHj6OkcMSyQ) (T123_));
	{
		if (!((*pl).PyObject_RichCompareBool == 0)) goto LA126_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyObject_RichCompareBool");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA126_: ;
	T128_ = (void*)0;
	T128_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyObject_GetBuffer");
	(*pl).PyObject_GetBuffer = ((tyProc__8hR9arLDkUs9ag3Pt9bWtjfsg) (T128_));
	T129_ = (void*)0;
	T129_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyBuffer_Release");
	(*pl).PyBuffer_Release = ((tyProc__vFvpnKOere9bRFN9czzMRlTA) (T129_));
	T130_ = (void*)0;
	T130_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyIter_Next");
	(*pl).PyIter_Next = ((tyProc__jvPpjMAkI9bwM1B9apOphnlA) (T130_));
	{
		if (!((*pl).PyIter_Next == 0)) goto LA133_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyIter_Next");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA133_: ;
	T135_ = (void*)0;
	T135_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyLong_AsLongLong");
	(*pl).PyLong_AsLongLong = ((tyProc__mIlNZ9aGaphVJCyIIofK8mg) (T135_));
	{
		if (!((*pl).PyLong_AsLongLong == 0)) goto LA138_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyLong_AsLongLong");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA138_: ;
	T140_ = (void*)0;
	T140_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyFloat_AsDouble");
	(*pl).PyFloat_AsDouble = ((tyProc__2su9b9chqHYibM7sMkbSaSkA) (T140_));
	{
		if (!((*pl).PyFloat_AsDouble == 0)) goto LA143_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyFloat_AsDouble");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA143_: ;
	T145_ = (void*)0;
	T145_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyBool_FromLong");
	(*pl).PyBool_FromLong = ((tyProc__Fc4ZUx59aQs10dLxeMQ50mw) (T145_));
	{
		if (!((*pl).PyBool_FromLong == 0)) goto LA148_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyBool_FromLong");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA148_: ;
	T150_ = (void*)0;
	T150_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyBool_Type");
	(*pl).PyBool_Type = ((tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g*) (T150_));
	{
		if (!((*pl).PyBool_Type == 0)) goto LA153_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyBool_Type");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA153_: ;
	T155_ = (void*)0;
	T155_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyFloat_Type");
	(*pl).PyFloat_Type = ((tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g*) (T155_));
	{
		if (!((*pl).PyFloat_Type == 0)) goto LA158_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyFloat_Type");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA158_: ;
	T160_ = (void*)0;
	T160_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyComplex_Type");
	(*pl).PyComplex_Type = ((tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g*) (T160_));
	{
		if (!((*pl).PyComplex_Type == 0)) goto LA163_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyComplex_Type");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA163_: ;
	T165_ = (void*)0;
	T165_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyCapsule_Type");
	(*pl).PyCapsule_Type = ((tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g*) (T165_));
	{
		if (!((*pl).PyCapsule_Type == 0)) goto LA168_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyCapsule_Type");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA168_: ;
	T170_ = (void*)0;
	T170_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyTuple_Type");
	(*pl).PyTuple_Type = ((tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g*) (T170_));
	{
		if (!((*pl).PyTuple_Type == 0)) goto LA173_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyTuple_Type");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA173_: ;
	T175_ = (void*)0;
	T175_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyList_Type");
	(*pl).PyList_Type = ((tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g*) (T175_));
	{
		if (!((*pl).PyList_Type == 0)) goto LA178_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyList_Type");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA178_: ;
	T180_ = (void*)0;
	T180_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyUnicode_Type");
	(*pl).PyUnicode_Type = ((tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g*) (T180_));
	{
		if (!((*pl).PyUnicode_Type == 0)) goto LA183_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyUnicode_Type");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA183_: ;
	T185_ = (void*)0;
	T185_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyBytes_Type");
	(*pl).PyBytes_Type = ((tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g*) (T185_));
	{
		void* T190_;
		if (!((*pl).PyBytes_Type == 0)) goto LA188_;
		T190_ = (void*)0;
		T190_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyString_Type");
		(*pl).PyBytes_Type = ((tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g*) (T190_));
		{
			if (!((*pl).PyBytes_Type == 0)) goto LA193_;
			symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyString_Type");
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		LA193_: ;
	}
	LA188_: ;
	T195_ = (void*)0;
	T195_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyUnicode_FromString");
	(*pl).PyUnicode_FromString = ((tyProc__YDKrw1adv61oVQkQhbYyaA) (T195_));
	{
		void* T200_;
		if (!((*pl).PyUnicode_FromString == 0)) goto LA198_;
		T200_ = (void*)0;
		T200_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyString_FromString");
		(*pl).PyUnicode_FromString = ((tyProc__YDKrw1adv61oVQkQhbYyaA) (T200_));
		{
			if (!((*pl).PyUnicode_FromString == 0)) goto LA203_;
			symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyString_FromString");
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		LA203_: ;
	}
	LA198_: ;
	T205_ = (void*)0;
	T205_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyType_IsSubtype");
	(*pl).PyType_IsSubtype = ((tyProc__i2exZ7Vtp648U9crOFcq9beQ) (T205_));
	{
		if (!((*pl).PyType_IsSubtype == 0)) goto LA208_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyType_IsSubtype");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA208_: ;
	T210_ = (void*)0;
	T210_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyComplex_AsCComplex");
	(*pl).PyComplex_AsCComplex = ((tyProc__N1A5ZvDSgO9c9aRXmVqfn9bAw) (T210_));
	{
		void* T215_;
		void* T220_;
		if (!((*pl).PyComplex_AsCComplex == 0)) goto LA213_;
		T215_ = (void*)0;
		T215_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyComplex_RealAsDouble");
		(*pl).PyComplex_RealAsDouble = ((tyProc__2su9b9chqHYibM7sMkbSaSkA) (T215_));
		{
			if (!((*pl).PyComplex_RealAsDouble == 0)) goto LA218_;
			symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyComplex_RealAsDouble");
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		LA218_: ;
		T220_ = (void*)0;
		T220_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyComplex_ImagAsDouble");
		(*pl).PyComplex_ImagAsDouble = ((tyProc__2su9b9chqHYibM7sMkbSaSkA) (T220_));
		{
			if (!((*pl).PyComplex_ImagAsDouble == 0)) goto LA223_;
			symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyComplex_ImagAsDouble");
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		LA223_: ;
	}
	LA213_: ;
	T225_ = (void*)0;
	T225_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyUnicode_CompareWithASCIIString");
	(*pl).PyUnicode_CompareWithASCIIString = ((tyProc__B2MjSeo07a72ynTQRVYFKw) (T225_));
	{
		void* T230_;
		if (!((*pl).PyUnicode_CompareWithASCIIString == 0)) goto LA228_;
		T230_ = (void*)0;
		T230_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyString_AsString");
		(*pl).PyString_AsString = ((tyProc__p1X2BwWx9a3wsChhykvf29aA) (T230_));
		{
			if (!((*pl).PyString_AsString == 0)) goto LA233_;
			symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyString_AsString");
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		LA233_: ;
	}
	LA228_: ;
	T235_ = (void*)0;
	T235_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyUnicode_AsUTF8String");
	(*pl).PyUnicode_AsUTF8String = ((tyProc__jvPpjMAkI9bwM1B9apOphnlA) (T235_));
	{
		void* T240_;
		if (!((*pl).PyUnicode_AsUTF8String == 0)) goto LA238_;
		T240_ = (void*)0;
		T240_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyUnicodeUCS4_AsUTF8String");
		(*pl).PyUnicode_AsUTF8String = ((tyProc__jvPpjMAkI9bwM1B9apOphnlA) (T240_));
		{
			void* T245_;
			if (!((*pl).PyUnicode_AsUTF8String == 0)) goto LA243_;
			T245_ = (void*)0;
			T245_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyUnicodeUCS2_AsUTF8String");
			(*pl).PyUnicode_AsUTF8String = ((tyProc__jvPpjMAkI9bwM1B9apOphnlA) (T245_));
			{
				if (!((*pl).PyUnicode_AsUTF8String == 0)) goto LA248_;
				symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyUnicodeUCS2_AsUTF8String");
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
			LA248_: ;
		}
		LA243_: ;
	}
	LA238_: ;
	(*pl).pythonVersion = ((NI) 3);
	T250_ = (void*)0;
	T250_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyBytes_AsStringAndSize");
	(*pl).PyBytes_AsStringAndSize = ((tyProc__3FKLKFzOaK7FD6dRLWM6Jw) (T250_));
	{
		void* T255_;
		if (!((*pl).PyBytes_AsStringAndSize == 0)) goto LA253_;
		T255_ = (void*)0;
		T255_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyString_AsStringAndSize");
		(*pl).PyBytes_AsStringAndSize = ((tyProc__3FKLKFzOaK7FD6dRLWM6Jw) (T255_));
		{
			if (!((*pl).PyBytes_AsStringAndSize == 0)) goto LA258_;
			symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyString_AsStringAndSize");
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		LA258_: ;
		(*pl).pythonVersion = ((NI) 2);
	}
	LA253_: ;
	T260_ = (void*)0;
	T260_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyDict_Type");
	(*pl).PyDict_Type = ((tyObject_PyTypeObject3Obj__cRsC9bGvH9bX6A9aVx8UB6I5g*) (T260_));
	{
		if (!((*pl).PyDict_Type == 0)) goto LA263_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyDict_Type");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA263_: ;
	T265_ = (void*)0;
	T265_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyDict_New");
	(*pl).PyDict_New = ((tyProc__NzboHqZVJcbdtVGYrOosXQ) (T265_));
	{
		if (!((*pl).PyDict_New == 0)) goto LA268_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyDict_New");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA268_: ;
	T270_ = (void*)0;
	T270_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyDict_Size");
	(*pl).PyDict_Size = ((tyProc__YRQqZC12s3573tRGP8MV3g) (T270_));
	{
		if (!((*pl).PyDict_Size == 0)) goto LA273_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyDict_Size");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA273_: ;
	T275_ = (void*)0;
	T275_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyDict_GetItemString");
	(*pl).PyDict_GetItemString = ((tyProc__YezmFzxOOyM9cb11Eoq1Elg) (T275_));
	{
		if (!((*pl).PyDict_GetItemString == 0)) goto LA278_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyDict_GetItemString");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA278_: ;
	T280_ = (void*)0;
	T280_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyDict_SetItemString");
	(*pl).PyDict_SetItemString = ((tyProc__T08W9bgbY4bOv2q64h6irpw) (T280_));
	{
		if (!((*pl).PyDict_SetItemString == 0)) goto LA283_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyDict_SetItemString");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA283_: ;
	T285_ = (void*)0;
	T285_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyDict_GetItem");
	(*pl).PyDict_GetItem = ((tyProc__VQ1ysQk017myXMGb79cPTVw) (T285_));
	{
		if (!((*pl).PyDict_GetItem == 0)) goto LA288_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyDict_GetItem");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA288_: ;
	T290_ = (void*)0;
	T290_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyDict_SetItem");
	(*pl).PyDict_SetItem = ((tyProc__7LMjBc4zOHVIsNdulNv7QQ) (T290_));
	{
		if (!((*pl).PyDict_SetItem == 0)) goto LA293_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyDict_SetItem");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA293_: ;
	T295_ = (void*)0;
	T295_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyDict_Keys");
	(*pl).PyDict_Keys = ((tyProc__jvPpjMAkI9bwM1B9apOphnlA) (T295_));
	{
		if (!((*pl).PyDict_Keys == 0)) goto LA298_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyDict_Keys");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA298_: ;
	T300_ = (void*)0;
	T300_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyDict_Values");
	(*pl).PyDict_Values = ((tyProc__jvPpjMAkI9bwM1B9apOphnlA) (T300_));
	{
		if (!((*pl).PyDict_Values == 0)) goto LA303_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyDict_Values");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA303_: ;
	T305_ = (void*)0;
	T305_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyDict_Contains");
	(*pl).PyDict_Contains = ((tyProc__MTei9bsKjha0o1cISO9aLMDg) (T305_));
	{
		if (!((*pl).PyDict_Contains == 0)) goto LA308_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyDict_Contains");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA308_: ;
	{
		if (!((*pl).pythonVersion == ((NI) 3))) goto LA312_;
		(*pl).PyDealloc = deallocPythonObj__g4g2BXzYUyHtyZiBrSD7aw;
	}
	goto LA310_;
	LA312_: ;
	{
		(*pl).PyDealloc = deallocPythonObj__g4g2BXzYUyHtyZiBrSD7aw;
	}
	LA310_: ;
	T315_ = (void*)0;
	T315_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyErr_Clear");
	(*pl).PyErr_Clear = ((tyProc__ln4kdL5W9bbX4a1xl8nnVXQ) (T315_));
	{
		if (!((*pl).PyErr_Clear == 0)) goto LA318_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyErr_Clear");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA318_: ;
	T320_ = (void*)0;
	T320_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyErr_SetString");
	(*pl).PyErr_SetString = ((tyProc__WYY8i0I79agBofnUcEGCfig) (T320_));
	{
		if (!((*pl).PyErr_SetString == 0)) goto LA323_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyErr_SetString");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA323_: ;
	T325_ = (void*)0;
	T325_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyErr_Occurred");
	(*pl).PyErr_Occurred = ((tyProc__NzboHqZVJcbdtVGYrOosXQ) (T325_));
	{
		if (!((*pl).PyErr_Occurred == 0)) goto LA328_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyErr_Occurred");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA328_: ;
	T330_ = (void*)0;
	T330_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyExc_TypeError");
	(*pl).PyExc_TypeError = ((void*) (T330_));
	{
		if (!((*pl).PyExc_TypeError == 0)) goto LA333_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyExc_TypeError");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA333_: ;
	(*pl).PyExc_TypeError = (*((void**) ((*pl).PyExc_TypeError)));
	T335_ = (void*)0;
	T335_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyCapsule_New");
	(*pl).PyCapsule_New = ((tyProc__jcEovQ2rZUNUsYxohT50Ug) (T335_));
	{
		if (!((*pl).PyCapsule_New == 0)) goto LA338_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyCapsule_New");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA338_: ;
	T340_ = (void*)0;
	T340_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyCapsule_GetPointer");
	(*pl).PyCapsule_GetPointer = ((tyProc__YezmFzxOOyM9cb11Eoq1Elg) (T340_));
	{
		if (!((*pl).PyCapsule_GetPointer == 0)) goto LA343_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyCapsule_GetPointer");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA343_: ;
	T345_ = (void*)0;
	T345_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyImport_ImportModule");
	(*pl).PyImport_ImportModule = ((tyProc__YDKrw1adv61oVQkQhbYyaA) (T345_));
	{
		if (!((*pl).PyImport_ImportModule == 0)) goto LA348_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyImport_ImportModule");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA348_: ;
	T350_ = (void*)0;
	T350_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyEval_GetBuiltins");
	(*pl).PyEval_GetBuiltins = ((tyProc__NzboHqZVJcbdtVGYrOosXQ) (T350_));
	{
		if (!((*pl).PyEval_GetBuiltins == 0)) goto LA353_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyEval_GetBuiltins");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA353_: ;
	T355_ = (void*)0;
	T355_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyEval_GetGlobals");
	(*pl).PyEval_GetGlobals = ((tyProc__NzboHqZVJcbdtVGYrOosXQ) (T355_));
	{
		if (!((*pl).PyEval_GetGlobals == 0)) goto LA358_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyEval_GetGlobals");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA358_: ;
	T360_ = (void*)0;
	T360_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyEval_GetLocals");
	(*pl).PyEval_GetLocals = ((tyProc__NzboHqZVJcbdtVGYrOosXQ) (T360_));
	{
		if (!((*pl).PyEval_GetLocals == 0)) goto LA363_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyEval_GetLocals");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA363_: ;
	T365_ = (void*)0;
	T365_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyCFunction_NewEx");
	(*pl).PyCFunction_NewEx = ((tyProc__9b2qzlf3LCKK0JvThQT1atg) (T365_));
	{
		if (!((*pl).PyCFunction_NewEx == 0)) goto LA368_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyCFunction_NewEx");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA368_: ;
	T370_ = (void*)0;
	T370_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyErr_Fetch");
	(*pl).PyErr_Fetch = ((tyProc__U0oVFt576Ze44Q9a3eZc5wg) (T370_));
	{
		if (!((*pl).PyErr_Fetch == 0)) goto LA373_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyErr_Fetch");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA373_: ;
	T375_ = (void*)0;
	T375_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyErr_NormalizeException");
	(*pl).PyErr_NormalizeException = ((tyProc__U0oVFt576Ze44Q9a3eZc5wg) (T375_));
	{
		if (!((*pl).PyErr_NormalizeException == 0)) goto LA378_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyErr_NormalizeException");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA378_: ;
	T380_ = (void*)0;
	T380_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyErr_GivenExceptionMatches");
	(*pl).PyErr_GivenExceptionMatches = ((tyProc__MTei9bsKjha0o1cISO9aLMDg) (T380_));
	{
		if (!((*pl).PyErr_GivenExceptionMatches == 0)) goto LA383_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyErr_GivenExceptionMatches");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA383_: ;
	T385_ = (void*)0;
	T385_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyErr_NewException");
	(*pl).PyErr_NewException = ((tyProc__BZ6N5NNdHcK05FTDxQbEWw) (T385_));
	{
		if (!((*pl).PyErr_NewException == 0)) goto LA388_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyErr_NewException");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA388_: ;
	T390_ = (void*)0;
	T390_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyExc_ArithmeticError");
	(*pl).PyExc_ArithmeticError = ((void*) (T390_));
	{
		if (!((*pl).PyExc_ArithmeticError == 0)) goto LA393_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyExc_ArithmeticError");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA393_: ;
	(*pl).PyExc_ArithmeticError = (*((void**) ((*pl).PyExc_ArithmeticError)));
	T395_ = (void*)0;
	T395_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyExc_FloatingPointError");
	(*pl).PyExc_FloatingPointError = ((void*) (T395_));
	{
		if (!((*pl).PyExc_FloatingPointError == 0)) goto LA398_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyExc_FloatingPointError");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA398_: ;
	(*pl).PyExc_FloatingPointError = (*((void**) ((*pl).PyExc_FloatingPointError)));
	T400_ = (void*)0;
	T400_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyExc_OverflowError");
	(*pl).PyExc_OverflowError = ((void*) (T400_));
	{
		if (!((*pl).PyExc_OverflowError == 0)) goto LA403_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyExc_OverflowError");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA403_: ;
	(*pl).PyExc_OverflowError = (*((void**) ((*pl).PyExc_OverflowError)));
	T405_ = (void*)0;
	T405_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyExc_ZeroDivisionError");
	(*pl).PyExc_ZeroDivisionError = ((void*) (T405_));
	{
		if (!((*pl).PyExc_ZeroDivisionError == 0)) goto LA408_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyExc_ZeroDivisionError");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA408_: ;
	(*pl).PyExc_ZeroDivisionError = (*((void**) ((*pl).PyExc_ZeroDivisionError)));
	T410_ = (void*)0;
	T410_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyExc_AssertionError");
	(*pl).PyExc_AssertionError = ((void*) (T410_));
	{
		if (!((*pl).PyExc_AssertionError == 0)) goto LA413_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyExc_AssertionError");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA413_: ;
	(*pl).PyExc_AssertionError = (*((void**) ((*pl).PyExc_AssertionError)));
	T415_ = (void*)0;
	T415_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyExc_OSError");
	(*pl).PyExc_OSError = ((void*) (T415_));
	{
		if (!((*pl).PyExc_OSError == 0)) goto LA418_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyExc_OSError");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA418_: ;
	(*pl).PyExc_OSError = (*((void**) ((*pl).PyExc_OSError)));
	T420_ = (void*)0;
	T420_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyExc_IOError");
	(*pl).PyExc_IOError = ((void*) (T420_));
	{
		if (!((*pl).PyExc_IOError == 0)) goto LA423_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyExc_IOError");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA423_: ;
	(*pl).PyExc_IOError = (*((void**) ((*pl).PyExc_IOError)));
	T425_ = (void*)0;
	T425_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyExc_ValueError");
	(*pl).PyExc_ValueError = ((void*) (T425_));
	{
		if (!((*pl).PyExc_ValueError == 0)) goto LA428_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyExc_ValueError");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA428_: ;
	(*pl).PyExc_ValueError = (*((void**) ((*pl).PyExc_ValueError)));
	T430_ = (void*)0;
	T430_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyExc_EOFError");
	(*pl).PyExc_EOFError = ((void*) (T430_));
	{
		if (!((*pl).PyExc_EOFError == 0)) goto LA433_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyExc_EOFError");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA433_: ;
	(*pl).PyExc_EOFError = (*((void**) ((*pl).PyExc_EOFError)));
	T435_ = (void*)0;
	T435_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyExc_MemoryError");
	(*pl).PyExc_MemoryError = ((void*) (T435_));
	{
		if (!((*pl).PyExc_MemoryError == 0)) goto LA438_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyExc_MemoryError");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA438_: ;
	(*pl).PyExc_MemoryError = (*((void**) ((*pl).PyExc_MemoryError)));
	T440_ = (void*)0;
	T440_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyExc_IndexError");
	(*pl).PyExc_IndexError = ((void*) (T440_));
	{
		if (!((*pl).PyExc_IndexError == 0)) goto LA443_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyExc_IndexError");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA443_: ;
	(*pl).PyExc_IndexError = (*((void**) ((*pl).PyExc_IndexError)));
	T445_ = (void*)0;
	T445_ = symAddr__ALH9bdNwXEzg7MPq4PA9csvw(m, "PyExc_KeyError");
	(*pl).PyExc_KeyError = ((void*) (T445_));
	{
		if (!((*pl).PyExc_KeyError == 0)) goto LA448_;
		symNotLoadedErr__bDtoj2GKRI9aw9bq59axC9b9aOw("PyExc_KeyError");
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA448_: ;
	(*pl).PyExc_KeyError = (*((void**) ((*pl).PyExc_KeyError)));
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory)(void* a, int v, NI size) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memset(a, v, ((size_t) (size)));
}
static N_INLINE(void, nimZeroMem)(void* p, NI size) {
	nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory(p, ((int) 0), size);
}
N_LIB_PRIVATE N_NIMCALL(void, registerExportedModule__2aw5dpL5lVZZ9cjH0apWcXA)(NimStringDesc* name, void* initAddr2, void* initAddr3) {
	tyObject_ExportedModule__fxDBwb9c9c8NsdRe9bmg8Q9a2A T1_;
	NI T2_;
	nimZeroMem((void*)(&T1_), sizeof(tyObject_ExportedModule__fxDBwb9c9c8NsdRe9bmg8Q9a2A));
	nimZeroMem((void*)(&T1_), sizeof(tyObject_ExportedModule__fxDBwb9c9c8NsdRe9bmg8Q9a2A));
	T1_.name = copyString(name);
	T1_.initAddr2 = initAddr2;
	T1_.initAddr3 = initAddr3;
	exportedModules__8kMAOMTFJYz2QnlnegLbYw = (tySequence__M73GJ9bOx1XdoIRnhIyhqTQ*) incrSeqV3((TGenericSeq*)(exportedModules__8kMAOMTFJYz2QnlnegLbYw), (&NTI__M73GJ9bOx1XdoIRnhIyhqTQ_));
	T2_ = exportedModules__8kMAOMTFJYz2QnlnegLbYw->Sup.len++;
	exportedModules__8kMAOMTFJYz2QnlnegLbYw->data[T2_].name = copyString(T1_.name);
	exportedModules__8kMAOMTFJYz2QnlnegLbYw->data[T2_].initAddr2 = T1_.initAddr2;
	exportedModules__8kMAOMTFJYz2QnlnegLbYw->data[T2_].initAddr3 = T1_.initAddr3;
}
N_LIB_PRIVATE N_NIMCALL(void, nimpy_py_libInit000)(void) {
{

	nimRegisterGlobalMarker(TM__XnAUe69cYg8yQhnmiRJUnHw_3);

	exportedModules__8kMAOMTFJYz2QnlnegLbYw = NIM_NIL;
}
}

N_LIB_PRIVATE N_NIMCALL(void, nimpy_py_libDatInit000)(void) {
static TNimNode* TM__XnAUe69cYg8yQhnmiRJUnHw_2_3[3];
static TNimNode TM__XnAUe69cYg8yQhnmiRJUnHw_0[4];
NTI__fxDBwb9c9c8NsdRe9bmg8Q9a2A_.size = sizeof(tyObject_ExportedModule__fxDBwb9c9c8NsdRe9bmg8Q9a2A);
NTI__fxDBwb9c9c8NsdRe9bmg8Q9a2A_.kind = 18;
NTI__fxDBwb9c9c8NsdRe9bmg8Q9a2A_.base = 0;
NTI__fxDBwb9c9c8NsdRe9bmg8Q9a2A_.flags = 2;
TM__XnAUe69cYg8yQhnmiRJUnHw_2_3[0] = &TM__XnAUe69cYg8yQhnmiRJUnHw_0[1];
TM__XnAUe69cYg8yQhnmiRJUnHw_0[1].kind = 1;
TM__XnAUe69cYg8yQhnmiRJUnHw_0[1].offset = offsetof(tyObject_ExportedModule__fxDBwb9c9c8NsdRe9bmg8Q9a2A, name);
TM__XnAUe69cYg8yQhnmiRJUnHw_0[1].typ = (&NTI__77mFvmsOLKik79ci2hXkHEg_);
TM__XnAUe69cYg8yQhnmiRJUnHw_0[1].name = "name";
TM__XnAUe69cYg8yQhnmiRJUnHw_2_3[1] = &TM__XnAUe69cYg8yQhnmiRJUnHw_0[2];
TM__XnAUe69cYg8yQhnmiRJUnHw_0[2].kind = 1;
TM__XnAUe69cYg8yQhnmiRJUnHw_0[2].offset = offsetof(tyObject_ExportedModule__fxDBwb9c9c8NsdRe9bmg8Q9a2A, initAddr2);
TM__XnAUe69cYg8yQhnmiRJUnHw_0[2].typ = (&NTI__vr5DoT1jILTGdRlYv1OYpw_);
TM__XnAUe69cYg8yQhnmiRJUnHw_0[2].name = "initAddr2";
TM__XnAUe69cYg8yQhnmiRJUnHw_2_3[2] = &TM__XnAUe69cYg8yQhnmiRJUnHw_0[3];
TM__XnAUe69cYg8yQhnmiRJUnHw_0[3].kind = 1;
TM__XnAUe69cYg8yQhnmiRJUnHw_0[3].offset = offsetof(tyObject_ExportedModule__fxDBwb9c9c8NsdRe9bmg8Q9a2A, initAddr3);
TM__XnAUe69cYg8yQhnmiRJUnHw_0[3].typ = (&NTI__vr5DoT1jILTGdRlYv1OYpw_);
TM__XnAUe69cYg8yQhnmiRJUnHw_0[3].name = "initAddr3";
TM__XnAUe69cYg8yQhnmiRJUnHw_0[0].len = 3; TM__XnAUe69cYg8yQhnmiRJUnHw_0[0].kind = 2; TM__XnAUe69cYg8yQhnmiRJUnHw_0[0].sons = &TM__XnAUe69cYg8yQhnmiRJUnHw_2_3[0];
NTI__fxDBwb9c9c8NsdRe9bmg8Q9a2A_.node = &TM__XnAUe69cYg8yQhnmiRJUnHw_0[0];
NTI__M73GJ9bOx1XdoIRnhIyhqTQ_.size = sizeof(tySequence__M73GJ9bOx1XdoIRnhIyhqTQ*);
NTI__M73GJ9bOx1XdoIRnhIyhqTQ_.kind = 24;
NTI__M73GJ9bOx1XdoIRnhIyhqTQ_.base = (&NTI__fxDBwb9c9c8NsdRe9bmg8Q9a2A_);
NTI__M73GJ9bOx1XdoIRnhIyhqTQ_.flags = 2;
NTI__M73GJ9bOx1XdoIRnhIyhqTQ_.marker = Marker_tySequence__M73GJ9bOx1XdoIRnhIyhqTQ;
}

